Getting JBossRollbackException in the Stateless Session Bean

Hello Everybody,

When i try to trigger an operation from the screen that will actually create a record in the database i am getting the following "JBossRollbackException" saying that "Unable to Commit"...

The Exception details in the log are as follows:

DEBUG - Returning from function ' sh_CaptureInstructionForBPControl ( ThreadSpecificContext tctx HeaderClass inp0 , C_CLD_CalendarInstruction inp1 ) : returns MasterCraftretClass ' of class CLDBEAN

ERROR - TransactionRolledbackException in method: public abstract com.tcs.mastercraft.mctype.MasterCraftretClass CLD.CLDBEAN_INTF.sh_CaptureInstructionForBPControl(com.tcs.mastercraft.mctype.ThreadSpecificContext,Common.HeaderClass,CLD.C_CLD_CalendarInstruction) throws java.rmi.RemoteException, causedBy:

org.jboss.tm.JBossRollbackException: Unable to commit, tx=TransactionImpl:XidImpl [FormatId=257, GlobalId=TCS029087//3, BranchQual=] status=STATUS_NO_TRANSACTION

at org.jboss.tm.TransactionImpl.commit(TransactionImpl.java:408)

at org.jboss.ejb.plugins.TxInterceptorCMT.endTransaction(TxInterceptorCMT.java:398)

at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:277)

at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:128)

at org.jboss.ejb.plugins.SecurityInterceptor.invoke(SecurityInterceptor.java:118)

at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:191)

at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:122)

at org.jboss.ejb.StatelessSessionContainer.internalInvoke(StatelessSessionContainer.java:331)

at org.jboss.ejb.Container.invoke(Container.java:700)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at org.jboss.mx.capability.ReflectedMBeanDispatcher.invoke(ReflectedMBeanDispatcher.java:284)

at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:546)

at org.jboss.invocation.local.LocalInvoker.invoke(LocalInvoker.java:101)

at org.jboss.invocation.InvokerInterceptor.invoke(InvokerInterceptor.java:90)

at org.jboss.proxy.TransactionInterceptor.invoke(TransactionInterceptor.java:46)

at org.jboss.proxy.SecurityInterceptor.invoke(SecurityInterceptor.java:45)

at org.jboss.proxy.ejb.StatelessSessionInterceptor.invoke(StatelessSessionInterceptor.java:100)

at org.jboss.proxy.ClientContainer.invoke(ClientContainer.java:85)

at $Proxy43.sh_CaptureInstructionForBPControl(Unknown Source)

at com.tcs.mastercraft.clientproxy.CLD_EJBCall.CLDEJBCall(CLD_EJBCall.java:55)

at com.tcs.mastercraft.clientproxy.EJBCall.call(EJBCall.java:187)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at com.tcs.mastercraft.webarch.util.EJBCallLookUP.call(EJBCallLookUP.java:155)

at com.tcs.mastercraft.webarch.comnmgmt.EJBCallRequest.handle(EJBCallRequest.java:73)

at com.tcs.mastercraft.webarch.comnmgmt.ServiceCallRequest.handle(ServiceCallRequest.java:65)

at com.tcs.mastercraft.webarch.util.WebArchUtil.invokeLibraryCall(WebArchUtil.java:84)

at com.tcs.mastercraft.webarch.util.WebArchUtil.sendRequest(WebArchUtil.java:260)

at com.tcs.mastercraft.webarch.comnmgmt.ComnAgent.MakeRequest(ComnAgent.java:232)

at com.tcs.mastercraft.webarch.comnmgmt.ComnAgent.MakeRequest(ComnAgent.java:319)

at com.tcs.mastercraft.guitypes.MCRequestObj.callRequest(MCRequestObj.java:168)

at com.tcs.mastercraft.guitypes.MCAppDataMngr.callService(MCAppDataMngr.java:296)

at CLD.CLD005.ProcessButtonClick(CLD005.java:590)

at com.tcs.mastercraft.guitypes.gu_cbutton.actionPerformed(gu_cbutton.java:121)

at comnServlet.doGet(comnServlet.java:405)

at comnServlet.doPost(comnServlet.java:1494)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.jboss.web.tomcat.security.JBossSecurityMgrRealm.invoke(JBossSecurityMgrRealm.java:228)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.jboss.web.tomcat.tc4.statistics.ContainerStatsValve.invoke(ContainerStatsValve.java:76)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2416)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:65)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:577)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)

at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)

at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)

at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)

at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:601)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)

at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)

at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)

at java.lang.Thread.run(Thread.java:534)

In the log i am able to see the values that i have passed from the screen which are inturn used by a java program to store the values into the database. But I am facing this problem during the commit of the values into the database. the database i am using is "DB2", Appserver is "JBoss". Do i have to set any attributes in the xml inorder to avoid this exception. Please suggest me in this case as i am unable to go forward with out resolving that issue.

Thanks in advance

Kalyan

[8727 byte] By [Kalyan_Pec2002a] at [2007-10-2 6:20:13]
# 1
TransactionRolledbackException is thrown if you'r EJB throws RuntimeException.I would suggest you to run you'r EJB under some IDE (NetBeans) and debug the code.
Maris_Orbidansa at 2007-7-16 13:22:09 > top of Java-index,Enterprise & Remote Computing,Enterprise Technologies...
# 2
Are you using bean or container transaction management? The bit about "status=STATUS_NO_TRANSACTION" might indicate that the transaction is trying to commit without having properly begun.
kcounsella at 2007-7-16 13:22:09 > top of Java-index,Enterprise & Remote Computing,Enterprise Technologies...