[WebSphere][Oracle] Use explicit XA Call
Hello
Je travaille sur WebSphere 5.1 avec Oracle 9i et lorsque je déploie mon application (Web, Struts, EJB entity/session/message) j'ai le message suivant dans la log :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
|
[12/05/05 10:20:07:451 CEST] 3d36832c MCWrapper E J2CA0081E: La méthode cleanup a échoué lors de la tentative d'exécution de la méthode cleanup sur la connexion gérée com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl@34ee4332 à partir de la ressource jdbc/tpxref. Exception interceptée : com.ibm.ws.exception.WsException: DSRA0080E: An exception was received by the Data Store Adapter. See original exception message: Utiliser un appel XA explicite.
at com.ibm.ws.rsadapter.exceptions.DataStoreAdapterException.<init>(DataStoreAdapterException.java:244)
at com.ibm.ws.rsadapter.exceptions.DataStoreAdapterException.<init>(DataStoreAdapterException.java:171)
at com.ibm.ws.rsadapter.exceptions.DataStoreAdapterException.<init>(DataStoreAdapterException.java:124)
at com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.cleanupStates(WSRdbManagedConnectionImpl.java:2357)
at com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.cleanup(WSRdbManagedConnectionImpl.java:2249)
at com.ibm.ejs.j2c.MCWrapper.cleanup(MCWrapper.java:1160)
at com.ibm.ejs.j2c.poolmanager.FreePool.returnToFreePool(FreePool.java:291)
at com.ibm.ejs.j2c.poolmanager.PoolManager.release(PoolManager.java:1219)
at com.ibm.ejs.j2c.MCWrapper.releaseToPoolManager(MCWrapper.java:1667)
at com.ibm.ejs.j2c.XATransactionWrapper.afterCompletionCode(XATransactionWrapper.java:359)
at com.ibm.ejs.j2c.XATransactionWrapper.afterCompletion(XATransactionWrapper.java:300)
at com.ibm.ws.Transaction.JTA.RegisteredSyncs.distributeAfter(RegisteredSyncs.java:161)
at com.ibm.ws.Transaction.JTA.TransactionImpl.distributeAfter(TransactionImpl.java:2344)
at com.ibm.ws.Transaction.JTA.RegisteredResources.flowCommitOnePhase(RegisteredResources.java:1798)
at com.ibm.ws.Transaction.JTA.RegisteredResources.distributePrepare(RegisteredResources.java:742)
at com.ibm.ws.Transaction.JTA.TransactionImpl.internalPrepare(TransactionImpl.java:1267)
at com.ibm.ws.Transaction.JTA.TransactionImpl.commit(TransactionImpl.java:960)
at com.ibm.ws.Transaction.JTA.TranManagerImpl.commit(TranManagerImpl.java:150)
at com.ibm.ws.Transaction.JTA.TranManagerSet.commit(TranManagerSet.java:182)
at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:696)
at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:165)
at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:565)
at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:3038)
at com.carrefour.weboffres.ejb.session.EJSLocalStatelessChargerActivitesBO_6a45ab68.chargerToutesActivites(EJSLocalStatelessChargerActivitesBO_6a45ab68.java:38)
at com.carrefour.weboffres.presentation.facade.GestionnaireActivite.chargerActivites(GestionnaireActivite.java:89)
at com.carrefour.weboffres.presentation.facade.GestionnaireActivite.getActivites(GestionnaireActivite.java:39)
at com.carrefour.weboffres.automate.AutomateMaree.initialiserActivite(AutomateMaree.java:511)
at com.carrefour.weboffres.automate.AutomateMaree.getActivite(AutomateMaree.java:79)
at com.carrefour.weboffres.automate.AutomateMaree.chargerPlagesHoraires(AutomateMaree.java:198)
at com.carrefour.weboffres.automate.AutomateMaree.<init>(AutomateMaree.java:68)
at com.carrefour.weboffres.util.initialisation.LancementAutomates.init(LancementAutomates.java:36)
at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:1158)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:473)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doInit(StrictServletInstance.java:82)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._init(StrictLifecycleServlet.java:147)
at com.ibm.ws.webcontainer.servlet.PreInitializedServletState.init(StrictLifecycleServlet.java:270)
at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.init(StrictLifecycleServlet.java:113)
at com.ibm.ws.webcontainer.servlet.ServletInstance.init(ServletInstance.java:189)
at javax.servlet.GenericServlet.init(GenericServlet.java:258)
at com.ibm.ws.webcontainer.webapp.WebAppServletManager.addServlet(WebAppServletManager.java:870)
at com.ibm.ws.webcontainer.webapp.WebAppServletManager.loadServlet(WebAppServletManager.java:224)
at com.ibm.ws.webcontainer.webapp.WebAppServletManager.loadAutoLoadServlets(WebAppServletManager.java:542)
at com.ibm.ws.webcontainer.webapp.WebApp.loadServletManager(WebApp.java:1277)
at com.ibm.ws.webcontainer.webapp.WebApp.init(WebApp.java:283)
at com.ibm.ws.webcontainer.srt.WebGroup.loadWebApp(WebGroup.java:387)
at com.ibm.ws.webcontainer.srt.WebGroup.init(WebGroup.java:209)
at com.ibm.ws.webcontainer.WebContainer.addWebApplication(WebContainer.java:987)
at com.ibm.ws.runtime.component.WebContainerImpl.install(WebContainerImpl.java:136)
at com.ibm.ws.runtime.component.WebContainerImpl.start(WebContainerImpl.java:356)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:418)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:787)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:354)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:575)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:271)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:249)
at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:536)
at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:413)
at com.ibm.ws.runtime.component.ApplicationServerImpl.start(ApplicationServerImpl.java:125)
at com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.java:536)
at com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:413)
at com.ibm.ws.runtime.component.ServerImpl.start(ServerImpl.java:183)
at com.ibm.ws.runtime.WsServer.start(WsServer.java:128)
at com.ibm.ws.runtime.WsServer.main(WsServer.java:225)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:41)
at java.lang.reflect.Method.invoke(Method.java:386)
at com.ibm.ws.bootstrap.WSLauncher.main(WSLauncher.java:94)
at com.ibm.etools.websphere.tools.runner.api.ServerRunnerV5$1.run(ServerRunnerV5.java:97)
Caused by: java.sql.SQLException: Utiliser un appel XA explicite
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:285)
at oracle.jdbc.driver.OracleConnection.setAutoCommit(OracleConnection.java:1111)
at com.ibm.websphere.rsadapter.OracleDataStoreHelper.doConnectionCleanup(OracleDataStoreHelper.java:1005)
at com.ibm.ws.rsadapter.spi.WSRdbManagedConnectionImpl.cleanupStates(WSRdbManagedConnectionImpl.java:2335)
... 66 more |
Pour info la même application tourne sur WebSphere 5.0 et cela fonctionne. Mes paramètres de connection JDBC semble être les mêmes et j'utilise le jar classe12.jar comme driver JDBC.
Quelqu'un aurait-il une idée ?
Merci