2016-12-21 13 views
0

私のバンドルにMicrosoft SQL DBを使用したいので、エンティティをロードする必要があります。 私は2つのバンドルを持っています.1つはデータソース用、もう1つはエンティティのロード用です。 MSSQlデータソースを設定するには?Karaf MSSQLが動作しない

それは私のデータソースである、

<bean id="esbDataSource" class="net.sourceforge.jtds.jdbcx.JtdsDataSource"> 
    <property name="url" value="jdbc:sqlserver://localhost:1433;databaseName=testdb"/> 
    <property name="username" value="sa"/> 
    <property name="password" value="root"/> 
</bean> 

<osgi:reference id="platformTxManager" interface="org.springframework.transaction.PlatformTransactionManager"/> 

<osgi:reference id="recoverableTxManager" interface="org.apache.geronimo.transaction.manager.RecoverableTransactionManager"/> 

<!--<osgi:service id="pool" ref="datasourcePool" interface="javax.sql.DataSource" > 
    <entry key="osgi.jndi.service.name" value="jdbc/datasourcePool" /> 
</osgi:service>--> 

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

persistence.xmlの

<persistence-unit name="billing" transaction-type="JTA"> 
     <provider>org.hibernate.ejb.HibernatePersistence</provider> 
     <jta-data-source>osgi:service/javax.sql.DataSource/(osgi.jndi.service.name=jdbc/mssqlDatasource)</jta-data-source> 

     <class>org.redhat.support.entity.Billing</class> 
     <class>org.redhat.support.entity.Testing</class> 
     <exclude-unlisted-classes>true</exclude-unlisted-classes> 
     <properties> 
      <property name="hibernate.dialect" value="org.hibernate.dialect.SQLServerDialect"/> 
      <property name="hibernate.hbm2ddl.auto" value="update"/> 
      <property name="hibernate.default_schema" value="testdb"/> 
      <property name="hibernate.show_sql" value="true"/> 
     </properties> 
    </persistence-unit> 

のpom.xml

<dependency> 
      <groupId>com.microsoft.sqlserver</groupId> 
      <artifactId>sqljdbc4</artifactId> 
      <version>4.0</version> 
     </dependency> 
     <dependency> 
      <groupId>net.sourceforge.jtds</groupId> 
      <artifactId>jtds</artifactId> 
       <version>1.3.0</version> 
     </dependency> 

これをOSGi karafコンテナにデプロイしたいのですが、どの設定を見逃しましたか?

答えて

0

最後にテーブルを作成して正常に動作しました。以下のデータソースは正常に動作しています。 必要な依存関係をJBoss Fuse karaf OSGiコンテナにインストールしてください。

<bean id="esbDataSource" 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> 
関連する問題