Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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 7.0.1 xa数据源异常。javax.transaction.xa.XAException_Java_Mysql_Oracle_Jboss7.x_Ejb 3.1 - Fatal编程技术网

JBoss 7.0.1 xa数据源异常。javax.transaction.xa.XAException

JBoss 7.0.1 xa数据源异常。javax.transaction.xa.XAException,java,mysql,oracle,jboss7.x,ejb-3.1,Java,Mysql,Oracle,Jboss7.x,Ejb 3.1,我使用两个独立的数据源。使用EJB3.0时,我使用的是非Xa数据源。我有类似这样的错误:无法打开连接,状态感知对象。这是因为在一个无状态bean中,我调用了第二个无状态bean的方法,该方法连接到不同的数据库。 然后我更改数据源结构,并将其更改为xa数据源,如下所示: <datasources> <xa-datasource jndi-name="java:/ooo" pool-name="ooo" enabled="true" use-java-

我使用两个独立的数据源。使用EJB3.0时,我使用的是
非Xa数据源
。我有类似这样的错误:
无法打开连接
状态感知对象
。这是因为在一个
无状态bean
中,我调用了第二个
无状态bean
的方法,该方法连接到不同的数据库。 然后我更改
数据源结构
,并将其更改为
xa数据源
,如下所示:

<datasources>
            <xa-datasource jndi-name="java:/ooo" pool-name="ooo" enabled="true" use-java-       context="true">
                <xa-datasource-property name="URL">
                    jdbc:oracle:thin:@xxx.xxx.xxx.xxx:xxxx:orcl
                </xa-datasource-property>
                <driver>oracle</driver>
                <security>
                 </security>
            </xa-datasource>
            <xa-datasource jndi-name="java:jboss/mysqlds" pool-name="mysqlds" enabled="true" use-java-context="true">
                <xa-datasource-property name="URL">
                    jdbc:mysql://127.0.0.1/test
                </xa-datasource-property>
                <driver>mysql</driver>
                <security>
                </security>
            </xa-datasource>
            <drivers>
                <driver name="oracle" module="com.oracle.ojdbc">
                    <xa-datasource-class>oracle.jdbc.xa.client.OracleXADataSource</xa-datasource-class>
                </driver>
                <driver name="mysql" module="com.mysql.jdbc">
                    <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
                </driver>
            </drivers>
        </datasources>
一切正常,但每2分钟出现一次
警告

 11:00:16,213 WARN  [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016027: Local XARecoveryModule.xaRecovery got XA exception XAException.XAER_RMERR: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:709)
at org.jboss.jca.adapters.jdbc.xa.XAManagedConnection.recover(XAManagedConnection.java:358)
at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.recover(XAResourceWrapperImpl.java:162)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecovery(XARecoveryModule.java:503) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.resourceInitiatedRecoveryForRecoveryHelpers(XARecoveryModule.java:471) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.bottomUpRecovery(XARecoveryModule.java:385) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:166) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:789) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371) [jbossjts-4.16.2.Final.jar:]
我解决了这个问题。 问题是
用户
。此用户正在使用另一个已经运行的应用程序。 我创建了新的
用户
,一切正常

 11:00:16,213 WARN  [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA016027: Local XARecoveryModule.xaRecovery got XA exception XAException.XAER_RMERR: javax.transaction.xa.XAException
at oracle.jdbc.xa.OracleXAResource.recover(OracleXAResource.java:709)
at org.jboss.jca.adapters.jdbc.xa.XAManagedConnection.recover(XAManagedConnection.java:358)
at org.jboss.jca.core.tx.jbossts.XAResourceWrapperImpl.recover(XAResourceWrapperImpl.java:162)
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.xaRecovery(XARecoveryModule.java:503) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.resourceInitiatedRecoveryForRecoveryHelpers(XARecoveryModule.java:471) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.bottomUpRecovery(XARecoveryModule.java:385) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.jta.recovery.arjunacore.XARecoveryModule.periodicWorkSecondPass(XARecoveryModule.java:166) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.doWorkInternal(PeriodicRecovery.java:789) [jbossjts-4.16.2.Final.jar:]
at com.arjuna.ats.internal.arjuna.recovery.PeriodicRecovery.run(PeriodicRecovery.java:371) [jbossjts-4.16.2.Final.jar:]