Attn:kyle-A resource was unable to process the two phase commit (Urgent)

Hello Folks, I had upgraded my IBM Websphere Application Server for Multiplatforms version 4.0.2 to 4.0.5 and removed the username and password bindings for the container-managed persistence beans.When iam running my application,iam getting the following error: W CONM6000W: A resource was unable to process the two phase commit prepare request as it only supports the one phase commit protocol. The datasource was: jdbc/(mydatasource name) [12/16/02 11:24:12:819 PST] 24863bf5 SystemOut U Exception - JSPE315:javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 0 No; nested exception is: org.omg.CORBA.TRANSACTION_ROLLEDBACK: com.ibm.websphere.csi.CSITransactionRolledbackException: at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:194) at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:67) at com.ibm.ejs.csi.RequiresNew.postInvoke(RequiresNew.java:54) at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:443) at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:1850) at com.arena.analysis.EJSRemoteStatelessAnalysisSession.getFigureValue(EJSRemoteStatelessAnalysisSession.java:588) at com.arena.analysis._AnalysisSession_Stub.getFigureValue(_AnalysisSession_Stub.java:527) at com.arena.analysis.AnalysisSessionAccessBean.getFigureValue(AnalysisSessionAccessBean.java:176) at _AccBudDataEntry_jsp_8._jspService(_AccBudDataEntry_jsp_8.java:302) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:142) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(JspServlet.java:323) at org.apache.jasper.runtime.JspServlet.serviceJspFile(JspServlet.java:503) at org.apache.jasper.runtime.JspServlet.service(JspServlet.java:636) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.ibm.servlet.engine.webapp.StrictServletInstance.doService(ServletManager.java:827) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(StrictLifecycleServlet.java:167) at com.ibm.servlet.engine.webapp.IdleServletState.service(StrictLifecycleServlet.java:297) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(StrictLifecycleServlet.java:110) at com.ibm.servlet.engine.webapp.ServletInstance.service(ServletManager.java:472) at com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(ServletManager.java:1012) at com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(ServletManager.java:913) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:721) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:374) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:118) at com.ibm.servlet.engine.srt.WebAppInvoker.doForward(WebAppInvoker.java:134) at com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:239) at com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:67) at com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:106) at com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:154) at com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(OSEListener.java:315) at com.ibm.servlet.engine.http11.HttpConnection.handleRequest(HttpConnection.java:60) at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:323) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:252) at com.ibm.ws.util.CachedThread.run(ThreadPool.java:138) :javax.transaction.TransactionRolledbackException: com.ibm.websphere.csi.CSITransactionRolledbackException: at com.ibm.ejs.csi.TranStrategy.commit(TranStrategy.java:194) at com.ibm.ejs.csi.TranStrategy.postInvoke(TranStrategy.java:67) at com.ibm.ejs.csi.RequiresNew.postInvoke(RequiresNew.java:54) at com.ibm.ejs.csi.TransactionControlImpl.postInvoke(TransactionControlImpl.java:443) at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:1850) at com.arena.analysis.EJSRemoteStatelessAnalysisSession.getFigureValue(EJSRemoteStatelessAnalysisSession.java:588) at com.arena.analysis._AnalysisSession_Stub.getFigureValue(_AnalysisSession_Stub.java:527) at com.arena.analysis.AnalysisSessionAccessBean.getFigureValue(AnalysisSessionAccessBean.java:176) at _AccBudDataEntry_jsp_8._jspService(_AccBudDataEntry_jsp_8.java:302) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:142) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(JspServlet.java:323) at org.apache.jasper.runtime.JspServlet.serviceJspFile(JspServlet.java:503) at org.apache.jasper.runtime.JspServlet.service(JspServlet.java:636) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.ibm.servlet.engine.webapp.StrictServletInstance.doService(ServletManager.java:827) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(StrictLifecycleServlet.java:167) at com.ibm.servlet.engine.webapp.IdleServletState.service(StrictLifecycleServlet.java:297) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(StrictLifecycleServlet.java:110) at com.ibm.servlet.engine.webapp.ServletInstance.service(ServletManager.java:472) at com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(ServletManager.java:1012) at com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(ServletManager.java:913) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:721) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:374) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:118) at com.ibm.servlet.engine.srt.WebAppInvoker.doForward(WebAppInvoker.java:134) at com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:239) at com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:67) at com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:106) at com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:154) at com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(OSEListener.java:315) at com.ibm.servlet.engine.http11.HttpConnection.handleRequest(HttpConnection.java:60) at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:323) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:252) at com.ibm.ws.util.CachedThread.run(ThreadPool.java:138) at com.ibm.ejs.container.util.ExceptionUtil.mapCSIException(ExceptionUtil.java:37) at com.ibm.ejs.container.EJSContainer.postInvoke(EJSContainer.java:1903) at com.arena.analysis.EJSRemoteStatelessAnalysisSession.getFigureValue(EJSRemoteStatelessAnalysisSession.java:588) at com.arena.analysis._AnalysisSession_Stub.getFigureValue(_AnalysisSession_Stub.java:527) at com.arena.analysis.AnalysisSessionAccessBean.getFigureValue(AnalysisSessionAccessBean.java:176) at _AccBudDataEntry_jsp_8._jspService(_AccBudDataEntry_jsp_8.java:302) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:142) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(JspServlet.java:323) at org.apache.jasper.runtime.JspServlet.serviceJspFile(JspServlet.java:503) at org.apache.jasper.runtime.JspServlet.service(JspServlet.java:636) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.ibm.servlet.engine.webapp.StrictServletInstance.doService(ServletManager.java:827) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet._service(StrictLifecycleServlet.java:167) at com.ibm.servlet.engine.webapp.IdleServletState.service(StrictLifecycleServlet.java:297) at com.ibm.servlet.engine.webapp.StrictLifecycleServlet.service(StrictLifecycleServlet.java:110) at com.ibm.servlet.engine.webapp.ServletInstance.service(ServletManager.java:472) at com.ibm.servlet.engine.webapp.ValidServletReferenceState.dispatch(ServletManager.java:1012) at com.ibm.servlet.engine.webapp.ServletInstanceReference.dispatch(ServletManager.java:913) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.handleWebAppDispatch(WebAppRequestDispatcher.java:721) at com.ibm.se [12/16/02 11:24:12:829 PST] 24863bf5 SystemOut U rvlet.engine.webapp.WebAppRequestDispatcher.dispatch(WebAppRequestDispatcher.java:374) at com.ibm.servlet.engine.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:118) at com.ibm.servlet.engine.srt.WebAppInvoker.doForward(WebAppInvoker.java:134) at com.ibm.servlet.engine.srt.WebAppInvoker.handleInvocationHook(WebAppInvoker.java:239) at com.ibm.servlet.engine.invocation.CachedInvocation.handleInvocation(CachedInvocation.java:67) at com.ibm.servlet.engine.invocation.CacheableInvocationContext.invoke(CacheableInvocationContext.java:106) at com.ibm.servlet.engine.srp.ServletRequestProcessor.dispatchByURI(ServletRequestProcessor.java:154) at com.ibm.servlet.engine.oselistener.OSEListenerDispatcher.service(OSEListener.java:315) at com.ibm.servlet.engine.http11.HttpConnection.handleRequest(HttpConnection.java:60) at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:323) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:252) at com.ibm.ws.util.CachedThread.run(ThreadPool.java:138) minor code: 0 completed: No Please help me out at the earliest. Ravi

Hello Kyle, According to the following link http://www-3.ibm.com/software/webservers/appserv/doc/v40/ae/ infocenter/was/06061400.html I had changed my driver specified by the link and my problem was solved.Please suggest me whether we may get any side-affects with this change.Please throw some light on two-phase commit. Ravi :roll:

You need two phase commit in a couple of different possibilities: (1) You are accessing two different databases in the same transaction. (2) You are accessing a database and another resource like a JMS Queue. You haven't told us anything about your design, so I'm not sure which is applicable. Kyle

Ravi Kumar Ravuru
Ranch Hand

Joined: Apr 18, 2002
Posts: 176

posted Dec 18, 2002 06:36:00

0

Hello Kyle, We had been using the following implementation class "oracle.jdbc.pool.OracleConnectionPoolDataSource" for Oracle Thin Driver in our application which was deployed in IBM Websphere Application Server for Multiplatforms 4.0.2.We had upgraded our application server from 4.0.2 to 4.0.5 and we deployed our application.We got the problem specified in my previous posts.As such our application is accessing only one database.Then we found the url which i referred in my previous post and changed the driver implementation class to "oracle.jdbc.xa.client.OracleXADataSource".Our problem was solved. We are following the MVC architecture design as such and accessing a database.Tell me if u need any more details. Ravi

Ravi, Maybe this is not my business but.. How can you have a 2-phase commit error if you're only using one DB ? Puzzling.. If you're using XA just to workaround a technical problem, be aware of the overhead it will generate [ December 18, 2002: Message edited by: Bill Bailey ]

/ JeanLouis<br /><i>"software development has been, is, and will remain fundamentally hard" (Grady Booch)</i><br /> <br />Take a look at <a href="http://www.epfwiki.net/wikis/openup/" target="_blank" rel="nofollow">Agile OpenUP</a> in the Eclipse community

Ravi Kumar Ravuru
Ranch Hand

Joined: Apr 18, 2002
Posts: 176

posted Dec 20, 2002 02:52:00

0

Hello Kyle, I had explained our application architecture in my previous post.I do require the suggestions for the same from you. Ravi

I am facing the same problem with my application set up on WAS 4.0.6. A method in a stateless session bean tries to connect to a database using DAO and then using an entity bean (CMP). The app uses oracle thin driver. I do not prefer going to the XA here. Can you suggest how this error can be fixed in my case?