Search code examples
javasql-serverapache-cameldatasourcekaraf

Apache camel blueprint MS SQL datasource on karaf


I am trying to access a MS SQL database with apache camel. I am building it with maven as a bundle and deploy it on apache karaf.To do this I got the following in my blueprint.xml

<bean id="dataSource" class="net.sourceforge.jtds.jdbcx.JtdsDataSource">
     <property name="url" value="" />
     <property name="user" value="paygate" />
     <property name="password" value="" />
</bean>

<service interface="javax.sql.DataSource" ref="dataSource">
    <service-properties>
        <entry key="osgi.jndi.service.name" value="jdbc/mssqlDatasource" />
    </service-properties>
</service>

But now I am getting the following in my karaf logs

missing requirement [1374.6] osgi.wiring.package; (osgi.wiring.package=net.sourceforge.jtds.jdbcx)

This is the class that also was generated when creating the datasource in karaf with 'jdbc:create'.

Why doesn't karaf find that class?


Solution

  • Install the jtds jar as a bundle , using the command :

    install -s wrap:mvn: net.sourceforge.jtds /jtds/1.3.0 
    

    Change version number to match your jar version, that will resolve the problem.