Apache骆驼蓝图在karaf上的MS SQL数据源

时间:2015-12-03 09:59:05

标签: java sql-server apache-camel datasource karaf

我正在尝试使用apache camel访问MS SQL数据库。我正在使用maven作为捆绑构建它并将其部署在apache karaf上。为此,我在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>

但现在我在我的karaf日志中得到以下内容

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

这是使用&#39; jdbc:create&#39;在karaf中创建数据源时生成的类。

为什么没有卡拉夫找到那个班级?

2 个答案:

答案 0 :(得分:1)

使用以下命令安装jtds jar作为包:

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

更改版本号以匹配您的jar版本,这将解决问题。

答案 1 :(得分:0)

它是MSSQL数据源,

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
    <property name="driverClassName" value="net.sourceforge.jtds.jdbc.Driver"/>
    <property name="url" value="jdbc:jtds:sqlserver://localhost:1433;databaseName=testdb"/>
    <property name="username" value="sa"/>
    <property name="password" value="root"/>
</bean>

然后你应该在karaf容器中安装dbcp和jtds依赖项。它工作正常。