在使用两个数据源时面对EJB中的问题(DB2& Oracle)

时间:2014-10-24 13:26:25

标签: java ejb

请帮助我们解决以下两个问题。

1。)将数据保存到两个不同的数据库(Db2和oracle)时出现异常 - (EJB模块)

WTRN0078E: An attempt by the transaction manager to call start on a transactional resource has resulted in an error. The error code was XAER_PROTO. The exception stack trace follows: oracle.jdbc.xa.OracleXAException
        at oracle.jdbc.xa.OracleXAResource.checkError(OracleXAResource.java:1034)
        at oracle.jdbc.xa.client.OracleXAResource.start(OracleXAResource.java:251)
        at com.ibm.ejs.cm.CMXAResourceImpl.start(CMXAResourceImpl.java:219)
        at com.ibm.ws.Transaction.JTA.JTAResourceBase.start(JTAResourceBase.java:145)
        at com.ibm.ws.Transaction.JTA.RegisteredResources.startRes(RegisteredResources.java:1241)
        at com.ibm.ws.Transaction.JTA.RegisteredResources.enlistResource(RegisteredResources.java:649)
        at com.ibm.ws.Transaction.JTA.TransactionImpl.enlistResource(TransactionImpl.java:3296)
        at com.ibm.ws.Transaction.JTA.TranManagerSet.enlist(TranManagerSet.java:407)
        at com.ibm.ws.Transaction.JTA.TranManagerSet.enlist(TranManagerSet.java:365)
        at com.ibm.ws.Transaction.JTA.TranManagerSet.enlist(TranManagerSet.java:379)
        at com.ibm.ejs.cm.pool.ConnectO.enlist(ConnectO.java:1171)
        at com.ibm.ejs.cm.pool.ConnectO.enlist(ConnectO.java:775)
        at com.ibm.ejs.cm.pool.ConnectO.preInvoke(ConnectO.java:2242)
        at com.ibm.ejs.cm.proxy.Proxy.__preInvoke(Proxy.java:269)
        at com.ibm.ejs.cm.proxy.Proxy.__preInvoke(Proxy.java:249)
        at com.ibm.ejs.cm.proxy.OracleConnectionProxy.prepareStatement(OracleConnectionProxy.java:188)
        at com.marks.ims.integration.jde.dao.AddressBookDAO.copyAddressBookZRecord(AddressBookDAO.java:305)
        at com.marks.ims.integration.jde.dao.AddressBookDAO.update(AddressBookDAO.java:92)
        at com.marks.ims.integration.jde.JDEInterfaceGateway.updateAccount(JDEInterfaceGateway.java:88)
        at com.marks.bizacct.model.ejb.BusinessAccountServicesBean.doInterfaceProcessing(BusinessAccountServicesBean.java:318)

CONM6016E: The system is unable to enlist with the transaction.  Issuing new (TransactionAbortedException).

2.。)有时从两个不同的数据库(Db2和oracle)加载数据时出现异常 - (EJB Module)

com.marks.bizacct.exceptions.UnexpectedException: Error attempting to find business account in findByKey()::BusinessAccountServicesBean - javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 0x0 No; nested exception is:   org.omg.CORBA.TRANSACTION_ROLLEDBACK: javax.transaction.TransactionRolledbackException:  ; nested exception is: 
        com.ibm.websphere.csi.CSITransactionRolledbackException: Transaction marked rollbackonly  vmcid: 0x0  minor code: 0  completed: No

0 个答案:

没有答案