16 Temmuz 2011 Cumartesi

Servicemix 4.3 , Ode backed by mysql Issues...

I have been trying to find a way of deploying ODE as a jbi component to Servicemix and make mysql work as ODE database instead of pre-configured embedded apache derby.

At the beginning, i read ODE documentation saying that "Please note that EXTERNAL database is currently not available in ServiceMix4, because it requires JNDI, which SMX4 doesn't support." where it explains how to configure EXTERNAL/jndi databases while deploying into a jbi container such as SMX4.

However, i was not trying to configure an EXTERNAL datasource which will be bound through JNDI lookup. Instead, simply trying to configure an INTERNAL database with the help of servicemix ode configuration file.

As a fully detailed configuration file, ODE documentations referred me to the zip distribution of ode-jbi which includes a configuration file named ode-jbi.properties. But there were just two fields referring to internal database configuration;


# Internal Database Configuration
ode-jbi.db.int.jdbcurl=jdbc:mysql://localhost/ode?user=sa
ode-jbi.db.int.driver=com.mysql.jdbc.Driver


Since there is no detailed explanation of which fields are valid through ode-jbi.properties file, i had to manually try several fields to finalize a successful connection to mysql. Here is the default values for a proper mysql connection in ODE;


ode-jbi.pidNamespace=urn:ode-jbi
ode-jbi.allowIncompleteDeployment=false
ode-jbi.db.mode=INTERNAL

ode-jbi.db.int.jdbcurl=jdbc:mysql://localhost:3306/ODE #ip:port/SCHEMA
ode-jbi.db.int.driver=com.mysql.jdbc.Driver
ode-jbi.db.int.username=ode
ode-jbi.db.int.password=ode

ode-jbi.messageMapper=org.apache.ode.jbi.msgmap.ServiceMixMapper


So, put these lines in a file named org.apache.ode.jbi.cfg under $SERVICEMIX_HOME/etc

Good luck...


Hiç yorum yok:

Yorum Gönder