2015-12-03 69 views
0

我想用apache駱駝訪問MS SQL數據庫。我與Maven構建它爲束並且在Apache karaf.To部署它做到這一點我在我的blueprint.xml以下阿帕奇駱駝藍圖在karaf上的MS SQL數據源

<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) 

這是使用'jdbc:create'在karaf中創建數據源時生成的類。

爲什麼karaf找不到那個類?

+2

您是否嘗試過使用以下命令安裝jtds jar:install -s wrap:mvn:net.sourceforge.jtds /jtds/1.3.0,更改版本號以匹配您的jar – Ashoka

+0

不,噸 - 但它的工作感謝:) – Milla

+0

@AshokNanda不,我沒有 - 但它的工作?它是否工作? – Namphibian

回答

1

安裝JTDS罐子成捆,使用命令:

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

更改版本號,以配合您的jar的版本,這將解決這個問題。

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依賴。它工作正常。