camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sekaijin <>
Subject How to register a datasource, on configure() method or constructor of a RoutBuilder ?
Date Mon, 26 Mar 2012 13:06:19 GMT
I can not run camel-jdbc in java.

I defines a route with camel-blueprint, via a road builder (not in XML)
because I know the road to be built when bundle start.

when starting the bundle, I read a database that contains definitions of
endpoints. with there informations, I build the road. where in the database
I have a record defining an endpoint jdbc datasource I create a datasource
"myDataSourceName" and the uri "jdbc:myDataSourceName"

in the documentation I've read, I had to do
JndiRegistry reg = super.createRegistry();
reg.bind("testdb", db);
return reg;

but I'm in the configure method or in constructor of route builder
I can not call super.createRegistry(); the register already exists
I tried context.getRegistry (); who gets a JndiRegistry but getRegistry()
return a simple Registry.
The bind method does not exist on Registry.
I tried (JndiRegistry) context.getRegistry();
but I get a CastException.

public RouteBuilder()
  inUrl = getParameter("input.url");
  //... read configuration datas
  DataSourceName = "myDataSourceName";

  DataSource DS = DataSourceFactory.create(DataSourceName, ....); //using
pooled datasource factory (c3p0)

  JndiRegistry reg = (JndiRegistry) getContext().getRegistry();
  reg.bind("myDataSourceName", reg);//
  Registry reg = getContext().getRegistry();
  reg.bind("myDataSourceName", reg);//compil error bind is not method of

  dsUri = "jdbc:"   DataSourceName;

public void configure() {
  RouteDefinition r = from(inUrl);
  if ("sommeValue".equals(sommeParameter) {}

I have a similar problem in JUnit
CamelTestSupport created a camelContext and a Registry
then create the RouteBuilder (calls constructor)
and calls the configure() method

I've created an object datasource but inpossible to put it in the registry.

can you help me ?
PS: Sorry for my approximative english

View this message in context:
Sent from the Camel - Users mailing list archive at
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message