Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JBoss上为DB2创建XA数据源_Db2_Datasource_Jboss5.x - Fatal编程技术网

在JBoss上为DB2创建XA数据源

在JBoss上为DB2创建XA数据源,db2,datasource,jboss5.x,Db2,Datasource,Jboss5.x,我试图使用com.ibm.DB2.jcc.DB2XADataSource类配置XA DB2数据源,XA数据源(基于)com.ibm.DB2.jcc.DB2Driver(local tx DataSource使用com.ibm.DB2.jcc.DB2Driver)。目标服务器是DB2Connect V9.7 实际xa数据源配置: <xa-datasource> <jndi-name>jdbc/DB2ServerDS</jndi-name> <

我试图使用
com.ibm.DB2.jcc.DB2XADataSource
类配置XA DB2数据源,
XA数据源
(基于)
com.ibm.DB2.jcc.DB2Driver
local tx DataSource
使用
com.ibm.DB2.jcc.DB2Driver
)。目标服务器是DB2Connect V9.7

实际xa数据源配置:

<xa-datasource>
    <jndi-name>jdbc/DB2ServerDS</jndi-name>
    <use-java-context>false</use-java-context>
    <track-connection-by-tx>true</track-connection-by-tx> 
    <xa-datasource-class>com.ibm.db2.jcc.DB2XADataSource</xa-datasource-class>
    <xa-datasource-property name="URL">jdbc:db2://db2server:50000/FINDB</xa-datasource-property>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DB2ExceptionSorter</exception-sorter-class-name>
    <xa-datasource-property name="DriverType">4</xa-datasource-property>
    <check-valid-connection-sql>SELECT * FROM ACC.SETTINGS 1=2</check-valid-connection-sql>
    <user-name>findbuser</user-name>
    <password>findbuser</password>
    <min-pool-size>2</min-pool-size>
    <max-pool-size>10</max-pool-size>
    <blocking-timeout-millis>10000</blocking-timeout-millis>
    <type-mapping>DB2</type-mapping>
    <no-tx-separate-pools/>
</xa-datasource>
但我得到了一个错误:

Caused by: com.ibm.db2.jcc.am.SqlException: [jcc][10389][12245][3.57.82] Failure in loading native library db2jcct2, java.lang.UnsatisfiedLinkError: no db2jcct2 in java.library.path:  ERRORCODE=-4472, SQLSTATE=null
XA的驱动程序试图使用本机库,尽管我使用的是JDBCType4驱动程序


为什么驱动程序试图使用本机库?有什么需要添加到配置中的吗?

解决方案是不使用URL来指定连接设置

<xa-datasource>
    <jndi-name>jdbc/DB2ServerDS</jndi-name>
    <use-java-context>false</use-java-context>
    <track-connection-by-tx>true</track-connection-by-tx> 
    <xa-datasource-class>com.ibm.db2.jcc.DB2XADataSource</xa-datasource-class>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.DB2ExceptionSorter</exception-sorter-class-name>
    <xa-datasource-property name="ServerName">db2server</xa-datasource-property>
    <xa-datasource-property name="PortNumber">50000</xa-datasource-property>
    <xa-datasource-property name="DatabaseName">FINDB</xa-datasource-property>
    <xa-datasource-property name="DriverType">4</xa-datasource-property>
    <xa-datasource-property name="User">findbuser</xa-datasource-property>
    <xa-datasource-property name="Password">findbuser</xa-datasource-property>
    <xa-datasource-property name="DriverType">4</xa-datasource-property>
    <check-valid-connection-sql>SELECT * FROM ACC.SETTINGS 1=2</check-valid-connection-sql>
    <user-name>findbuser</user-name>
    <password>findbuser</password>
    <min-pool-size>2</min-pool-size>
    <max-pool-size>10</max-pool-size>
    <blocking-timeout-millis>10000</blocking-timeout-millis>
    <type-mapping>DB2</type-mapping>
    <no-tx-separate-pools/>
</xa-datasource>
如果出现如下错误:

org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (com.ibm.db2.jcc.am.SqlException: DB2 SQL Error: SQLCODE=-5042, SQLSTATE=     , SQLERRMC= ;1208;FINDBUSER;FINDB;QDB2; ; ; ;1208; , DRIVER=4.7.85)
检查解决方案


我希望这能为其他人节省一些挫折和时间。

我认为license\u cu和license\u cisuz不应该同时使用。cu是免费许可证,cisuz是商业许可证,包含更多平台(后缀中每个字母一个)-你想要一个或另一个,而不是两者都想要。
db2jcc_license_cu.jar             
db2jcc4.jar                         
db2jcc_license_cisuz.jar
org.jboss.resource.JBossResourceException: Could not create connection; - nested throwable: (com.ibm.db2.jcc.am.SqlException: DB2 SQL Error: SQLCODE=-5042, SQLSTATE=     , SQLERRMC= ;1208;FINDBUSER;FINDB;QDB2; ; ; ;1208; , DRIVER=4.7.85)