Social Icons

twitterfacebookgoogle pluslinkedinrss feedemail

Pages

Friday, December 27, 2013

FaceRig - New Indiegogo campaign for realtime CGI rigging

It has been a passion of mine, but never had the time to dedicate effort.
This project should make things easier.
Hope that there will be a SDK to create own characters.
Take a look at it and consider to perk for it.


Wednesday, December 11, 2013

JBoss 7.1.1 + GeoServer 2.2.5: logging

To enable correct logging of GeoServer in a JBoss 7.1.1 installation we'll need to modify the previously defined jboss-deployment-structure.xml


<jboss-deployment-structure xmlns="urn:jboss:deployment-structure:1.1">
    <deployment>
        <exclusions>
            <module name="org.apache.log4j" />
            <module name="org.slf4j" />
        </exclusions>
        <dependencies>
            <system>
                <paths>
                    <path name="com/sun/imageio/spi"/>
                    <path name="com/sun/imageio/plugins/common"/>
                </paths>
            </system>
            <module name="com.oracle" />
            <module name="org.jboss.ironjacamar.jdbcadapters" />
        </dependencies>
    </deployment>
</jboss-deployment-structure>


Than you need to set the following jvm-option in the host.xml file: GEOSERVER_LOG_LOCATION


 <server name="geo1" group="geo-server-group" auto-start="true">
            <jvm name="default">
                <heap size="128m" max-size="512m"/>
                 <jvm-options>
                    <option value="-DGEOSERVER_DATA_DIR=/home/jbossas/geoserver_data,-DGEOSERVER_LOG_LOCATION=/var/log/jboss-as/geoserver.log"/>
                </jvm-options>
            </jvm>
        </server>

In the example you also see that is possible to define a data dir in the same way.

Friday, November 29, 2013

PHP library for calling WSO2 API manager publisher

My need is to create an application that manages the creation of API from a single central point (a PHP site).

The WSO2 API manager has some interesting REST API that can be used to create programmatically an API.

To manage these API better I've developed (still in development) a library that calls the API manager, manage errors and wrap the whole up.

If you need it here is the link to github.

Tuesday, March 26, 2013

WSO2 Tutorial - BPS

In this tutorial of the WSO2 path I'm working with the BPS version 3.0.0 and WSO2 Developer Studio version 3.0.0.

The objective of this tutorial is to show how to implement a simple process and deploy it in the BPS.

I'll use here a standard default installation of the server (no external DB for process management and so on)

Saturday, March 23, 2013

TEIID 8.1 tutorial - Part 15 - Support Update

In this new tutorial of the TEIID series I'll show how to update the original table from the VDB view.

Usually when operating with TEIID designer the "orange" view model proposes just to read/select from the source table.

To be able to Update/Insert/Delete from the original table we must enable the "Support Update" checkbox as shown in the figure below.



In the video I'll show the whole procedure.

Friday, March 22, 2013

WSO2 Tutorials

I'll start a new tutorial line dedicated to the WSO2 product suite.

Here is what I'm preparing:
1) Business Process Server - example process and deploy
2) API Manager - publishing of an API and usage from the store
3) API Manager - TEIID SOAP service publishing

More will come.

Monday, March 18, 2013

GeoServer 2.2.5 + JBoss 7.1.1 and Oracle

As I posted some time ago, I'm using GeoServer version 2.2.5 on a JBoss 7.1.1 installation; now I'm working with an Oracle Database so I've added the Oracle extension. And added it in the "$WAR/WEB-INF/lib/" the jar that is downloaded as a separate package (mind to download the same version for the GeoServer you are using).

I had this problem accessing oracle tables:


09:23:34,911 ERROR [org.geoserver.ows] (http--10.20.1.50-8280-17) : java.lang.NoClassDefFoundError: oracle/jdbc/OracleConnection
at org.geotools.data.oracle.OracleDialect.unwrapConnection(OracleDialect.java:544) [gt-jdbc-oracle-8.7.jar:]
at org.geotools.data.oracle.OracleDialect.setGeometryValue(OracleDialect.java:517) [gt-jdbc-oracle-8.7.jar:]
at org.geotools.jdbc.JDBCDataStore.setPreparedFilterValues(JDBCDataStore.java:3168) [gt-jdbc-8.7.jar:]
at org.geotools.jdbc.JDBCDataStore.setPreparedFilterValues(JDBCDataStore.java:3147) [gt-jdbc-8.7.jar:]
at org.geotools.jdbc.JDBCDataStore.selectAggregateSQLPS(JDBCDataStore.java:3372) [gt-jdbc-8.7.jar:]
at org.geotools.jdbc.JDBCDataStore.getAggregateValue(JDBCDataStore.java:1292) [gt-jdbc-8.7.jar:]
at org.geotools.jdbc.JDBCDataStore.getCount(JDBCDataStore.java:1250) [gt-jdbc-8.7.jar:]
at org.geotools.jdbc.JDBCFeatureSource.getCountInternal(JDBCFeatureSource.java:432) [gt-jdbc-8.7.jar:]
at org.geotools.data.store.ContentFeatureSource.getCount(ContentFeatureSource.java:451) [gt-data-8.7.jar:]
at org.geotools.jdbc.JDBCFeatureStore.getCountInternal(JDBCFeatureStore.java:183) [gt-jdbc-8.7.jar:]
at org.geotools.data.store.ContentFeatureSource.getCount(ContentFeatureSource.java:451) [gt-data-8.7.jar:]
at org.geotools.data.store.ContentFeatureCollection.size(ContentFeatureCollection.java:356) [gt-data-8.7.jar:]
at org.geoserver.wms.GetFeatureInfo.execute(GetFeatureInfo.java:297) [wms-2.2.5.jar:2.2.5]
at org.geoserver.wms.GetFeatureInfo.execute(GetFeatureInfo.java:168) [wms-2.2.5.jar:2.2.5]
at org.geoserver.wms.GetFeatureInfo.run(GetFeatureInfo.java:117) [wms-2.2.5.jar:2.2.5]
at org.geoserver.wms.DefaultWebMapService.getFeatureInfo(DefaultWebMapService.java:374) [wms-2.2.5.jar:2.2.5]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.6.0_25]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [rt.jar:1.6.0_25]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [rt.jar:1.6.0_25]
at java.lang.reflect.Method.invoke(Method.java:597) [rt.jar:1.6.0_25]
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:318) [spring-aop-3.1.1.RELEASE.jar:3.1.1.RELEASE]


The problem is due to a classloading mechanism of the AS.

Friday, March 08, 2013

TEIID 8.1 tutorial - Part 10 - TEIID SOAP service + WSO2 + SoapUI

In this tutorial I'll be publishing the book SOAP web service using the API manager from WSO2.

To demonstrate that it works I'll be using as usual SoapUI

The API Manager is composed of two components the Publisher and the Store.

Obviously I need to start from the publisher and create the API: you ger the WSDL endpoint from the JBoss consolle in the webservices TAB.

The API start as CREATED so I need to set into PUBLISHED state.

The API is ready to be used, so is turn of the Store where is quite easy to subscribe to the API.
The main idea is that I'm a developer that uses some of the API published on the Store and I can have different applications that make use of the API and can register to use them with different "Tier" levels that means how much requests I can issue in a given time.

Thursday, February 28, 2013

TEIID and nodejs with node-postgres

Ok after a bit of tribulation I managed to access TEIID from nodejs.

It is really simple as the Ramesh's blog stated, but since I had a few problems making it work I try to give a bit of explanation more.

I have TEIID 8.2 on Jboss 7.1.1 and use node v0.8.16 and pg 0.13.1

The code to make connection is:

Monday, February 25, 2013

teiid: Access Teiid from node.js

teiid: Access Teiid from node.js: Are you writing a "node.js" application and would like to access Teiid VDB from it? If "yes", this is currently po...


The post from Ramesh is very interesting.
I'm working on that using TEIID 8.2 on JBoss 7.1.1 with the 0.13.1 version of node-postgres but having some difficulties.
Will keep you updated.

Testing a datasource on JBoss 7.1.1 in domain mode

I'm trying to test a deployed datasource in JBoss 7.1.1 in a domain configuration.

No info found around help in doing this job, also the web console is not working as expected (I also use TEIID 8.2 and probably the new web console mangled up a few things) and surely having a domain installation does not help things up.


All the things found around suggest to use this command

/subsystem=datasources/data-source=reportsDS:test-connection-in-pool


Being in a domain mode I do not have /subsystem so I tryed to get the subsystem from somewhere.

Getting it from profile ...

/profile=ha/subsystem=datasources/data-source=reportsDS:test-connection-in-pool


But the result are below and are not the expected

{
"outcome" => "failed",
"failure-description" => "JBAS010850: No handler for operation test-connection-in-pool at address [
(\"profile\" => \"ha\"),
(\"subsystem\" => \"datasources\"),
(\"data-source\" => \"reportsDS\")
]",
"rolled-back" => true
}


So I tryed with the following (that is logical since the previous was issued on a definition (profile) and not something truly running) against the host/server

/host=master/server=teiid1/subsystem=datasources/data-source=reportsDS:test-connection-in-pool


This time the result is successful

{
"outcome" => "success",
"result" => [true]
}

If needed by anyone.

Saturday, February 09, 2013

Considerations on italian context

I usually write of technical stuff.
I'm a techy and prefer to stay on my ground.
I live in Italy, that I consider a great place, that have given lot to world's culture, art and science.

In Italy we are living one of the lowest moments of our history, without even being aware of it.
Since this is a grave sentence I'll try to motivate it with data.

The first and foremost problem is the incompetence at higher levels of management: the majority of the politician aren't people dedicated to the common good, but people that devote themselves to personal enrichment and gain personal advantages up to the point to promote laws useful to their own economical and personal interests.
This has the consequence that much of the management of companies linked to Public Administration (this means from the little company that want/need to work with a local municipality, and in Italy we have more than 8000 municipalities, to the big enterprises) either submit to compromises with this politicians or are in league with them.
This pairs with a common theory that says that management does not need to understand the inner working of the company business but just need to know how to manage things; this approach could be summed up with the concept that the same manager can today be the CEO of a car industry and tomorrow the general director of a hospital and the day after the president of a farming consortium, because he "knows how to manage".

The consequence?

Companies have a management that usually do not take decisions unless are decisions that politicians push on them and are not able to guide and "manage" the company. Many are just good looking and smooth talkers. Who can blame them? If you do not understand your company business how can you decide the strategy of the company? If a computer or an hamburger are the same to you how can you make decisions?

The consequence?

This management raise, usually, mediocre people, so called "yes man" or friends so that their position is not at risk and they can do what they want without being hampered.


There is another part of the equation.
Italians are mediterranean people and to use a stereotype many of us "work hard when pressed", place attention on the "when pressed" part. Even if in our constitution we wrote at article 4 (so in a pretty important place) "Ogni cittadino ha il dovere di svolgere, secondo le proprie possibilità e la propria scelta, un'attività o una funzione che concorra al progresso materiale o spirituale della società." that can be translated as "each citizen has the due to work according to his possibility and choice to contribute to material or spiritual progress of society", few are educated to a working culture and are looking for a quick way to get money with the smallest effort. This make us creative people, but not always so productive. This is a rich pond where those politicians can go fishing for votes: "vote for me and I'll promise you benefits". To better control people media are constantly lowering the cultural level of the media content and information, with the result that people get distracted towards false problems and low profile (dumb) mindset: "let's give them soccer, girls and some topics to argue upon" (remember we invented "panem et circenses" 2000 years ago with gladiators so we have experience on this).

Think this scenario applied to all productive center of the society, schools, big industries, media, public administration. This has been running for years, so it's quite spread.

The consequences?

Is no wonder that Italy doesn't have big companies. We have lot of small businesses where hard working people strive to live the day in a difficult environment. Few people wants to be "Don Quixote" fighting mills and prefer to bow their head not to run the risk of loosing what they gained with hard work.

This is a simplified summary of the current situation, more a photograph of a state, not an analysis of why we are here. There are exceptions, not all of Italy is like this, but the balance is tilted on the wrong side.

History teaches that in similar situations Italy and Italians managed to raise and conquer freedom.
Let us hope for the best.