Fixes are available
PK77243; 6.1.0.21: Java.lang.illegalstateexception: no active transaction
7.0.0.5: WebSphere Application Server V7.0 Fix Pack 5 for AIX
7.0.0.5: WebSphere Application Server V7.0 Fix Pack 5 for IBM i
7.0.0.5: WebSphere Application Server V7.0 Fix Pack 5 for Windows
7.0.0.5: WebSphere Application Server V7.0 Fix Pack 5 for HP-UX
7.0.0.5: Java SDK 1.6 SR5 Cumulative Fix for WebSphere Application Server
7.0.0.5: WebSphere Application Server V7.0 Fix Pack 5 for Solaris
7.0.0.5: WebSphere Application Server V7.0 Fix Pack 5 for Linux
Java SDK 1.5 SR10 Cumulative Fix for WebSphere Application Server
7.0.0.7: WebSphere Application Server V7.0 Fix Pack 7 for IBM i
7.0.0.7: WebSphere Application Server V7.0 Fix Pack 7 for AIX
7.0.0.7: WebSphere Application Server V7.0 Fix Pack 7 for Windows
7.0.0.7: WebSphere Application Server V7.0 Fix Pack 7 for HP-UX
7.0.0.7: Java SDK 1.6 SR6 Cumulative Fix for WebSphere Application Server
7.0.0.7: WebSphere Application Server V7.0 Fix Pack 7 for Solaris
7.0.0.7: WebSphere Application Server V7.0 Fix Pack 7 for Linux
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for IBM i
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for Windows
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for AIX
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for HP-UX
7.0.0.9: Java SDK 1.6 SR7 Cumulative Fix for WebSphere Application Server
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for Solaris
7.0.0.9: WebSphere Application Server V7.0 Fix Pack 9 for Linux
6.1.0.31: Java SDK 1.5 SR11 FP1 Cumulative Fix for WebSphere Application Server
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for IBM i
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for Windows
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for HP-UX
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for AIX
7.0.0.11: Java SDK 1.6 SR7 Cumulative Fix for WebSphere Application Server
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for Solaris
7.0.0.11: WebSphere Application Server V7.0 Fix Pack 11 for Linux
6.1.0.33: Java SDK 1.5 SR12 FP1 Cumulative Fix for WebSphere
6.1.0.29: Java SDK 1.5 SR11 Cumulative Fix for WebSphere Application Server
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for AIX
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for HP-UX
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for IBM i
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for Linux
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for Solaris
7.0.0.13: WebSphere Application Server V7.0 Fix Pack 13 for Windows
7.0.0.13: Java SDK 1.6 SR8FP1 Cumulative Fix for WebSphere Application Server
6.1.0.35: Java SDK 1.5 SR12 FP2 Cumulative Fix for WebSphere
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for AIX
7.0.0.15: Java SDK 1.6 SR9 Cumulative Fix for WebSphere Application Server
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for HP-UX
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for IBM i
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for Linux
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for Solaris
7.0.0.15: WebSphere Application Server V7.0 Fix Pack 15 for Windows
6.1.0.37: Java SDK 1.5 SR12 FP3 Cumulative Fix for WebSphere
7.0.0.17: WebSphere Application Server V7.0 Fix Pack 17
7.0.0.17: Java SDK 1.6 SR9 FP1 Cumulative Fix for WebSphere Application Server
6.1.0.39: Java SDK 1.5 SR12 FP4 Cumulative Fix for WebSphere Application Server
7.0.0.19: WebSphere Application Server V7.0 Fix Pack 19
6.1.0.41: Java SDK 1.5 SR12 FP5 Cumulative Fix for WebSphere Application Server
7.0.0.21: WebSphere Application Server V7.0 Fix Pack 21
6.1.0.43: Java SDK 1.5 SR13 Cumulative Fix for WebSphere Application Server
7.0.0.23: WebSphere Application Server V7.0 Fix Pack 23
7.0.0.25: WebSphere Application Server V7.0 Fix Pack 25
6.1.0.45: Java SDK 1.5 SR14 Cumulative Fix for WebSphere Application Server
7.0.0.27: WebSphere Application Server V7.0 Fix Pack 27
7.0.0.29: WebSphere Application Server V7.0 Fix Pack 29
6.1.0.47: WebSphere Application Server V6.1 Fix Pack 47
7.0.0.31: WebSphere Application Server V7.0 Fix Pack 31
7.0.0.27: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.33: WebSphere Application Server V7.0 Fix Pack 33
7.0.0.35: WebSphere Application Server V7.0 Fix Pack 35
6.1.0.47: Java SDK 1.5 SR16 Cumulative Fix for WebSphere Application Server
7.0.0.19: Java SDK 1.6 SR9 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.21: Java SDK 1.6 SR9 FP2 Cumulative Fix for WebSphere
7.0.0.23: Java SDK 1.6 SR10 FP1 Cumulative Fix for WebSphere
7.0.0.25: Java SDK 1.6 SR11 Cumulative Fix for WebSphere Application Server
7.0.0.27: Java SDK 1.6 SR12 Cumulative Fix for WebSphere Application Server
7.0.0.29: Java SDK 1.6 SR13 FP2 Cumulative Fix for WebSphere Application Server
7.0.0.45: Java SDK 1.6 SR16 FP60 Cumulative Fix for WebSphere Application Server
7.0.0.31: Java SDK 1.6 SR15 Cumulative Fix for WebSphere Application Server
7.0.0.35: Java SDK 1.6 SR16 FP1 Cumulative Fix for WebSphere Application Server
7.0.0.37: Java SDK 1.6 SR16 FP3 Cumulative Fix for WebSphere Application Server
7.0.0.39: Java SDK 1.6 SR16 FP7 Cumulative Fix for WebSphere Application Server
7.0.0.41: Java SDK 1.6 SR16 FP20 Cumulative Fix for WebSphere Application Server
7.0.0.43: Java SDK 1.6 SR16 FP41 Cumulative Fix for WebSphere Application Server
APAR status
Closed as program error.
Error description
When running in a cluster environment, we see the following exceptions: [11/20/08 16:56:59:703 CET] 00000061 ExceptionUtil E CNTR0019E : EJB threw an unexpected (non-declared) exception during invoca tion of method "getInputMessage". Exception data: java.lang.IllegalState Exception: No active transaction at com.ibm.ejs.csi.TransactionControlImpl.setRollbackOnly(Tran sactionControlImpl.java:774) at com.ibm.ejs.csi.UOWControlImpl.setRollbackOnly(UOWControlIm pl.java:554) at com.ibm.ejs.container.EJSContainer.getCurrentTx(EJSContaine r.java:2041) at com.ibm.ejs.container.EJSContainer.preInvokeActivate(EJSCon tainer.java:3480) at com.ibm.ejs.container.EJSContainer.preInvoke(EJSContainer.j ava:2933) at com.ibm.task.api.EJSRemoteStatelessGenericHumanTaskManagerE JB_efcf8cd2.getInputMessage(Unknown Source) at com.ibm.task.api._HumanTaskManager_Stub.getInputMessage(_Hu manTaskManager_Stub.java:11181) at com.ibm.task.clientmodel.bean.TaskInstanceBean.getInputMess ageWrapper(TaskInstanceBean.java:1797) at com.bpc.samples.handler.CustomTaskMessageHandler.itemChange d(CustomTaskMessageHandler.java:67) at com.ibm.bpe.jsf.handler.BPCListHandlerSelectionHelper.notif yItemListener(BPCListHandlerSelectionHelper.java:342) at com.ibm.bpe.jsf.handler.BPCListHandlerSelectionHelper.choos eItem(BPCListHandlerSelectionHelper.java:168) at com.sun.reflect.GeneratedMethodAccessor200.invoke(Unknown S ource) at com.sun.reflect.DelegatingMethodAccessorImpl.invoke(Delegat ingMethodAccessorImpl.java:43) at com.java.lang.reflect.Method.invoke(Method.java:618) at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl .java:127) at com.javax.faces.component.UICommand.broadcast(UICommand.jav a:305) at com.javax.faces.component.UIData.broadcast(UIData.java:657) at com.javax.faces.component.UIViewRoot.broadcastEvents(UIView Root.java:302) at com.javax.faces.component.UIViewRoot.processApplication(UIV iewRoot.java:419) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(Invo keApplicationPhase.java:77) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.j ava:220) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl .java:91) at com.javax.faces.webapp.FacesServlet.service(FacesServlet.ja va:197) at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(Serv letWrapper.java:1096) at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleReques t(ServletWrapper.java:570) at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequ est(ServletWrapper.java:478) at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleR equest(CacheServletWrapper.java:90) at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebConta iner.java:748) at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebCon tainer.java:1466) at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChann elLink.java:119) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handle Discrimination(HttpInboundLink.java:458) at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handle NewInformation(HttpInboundLink.java:387) at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.co mplete(HttpICLReadCallback.java:102) at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futur eCompleted(AioReadCompletionListener.java:165) at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(Abstrac tAsyncFuture.java:217) at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(A syncChannelFuture.java:161) at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136 ) at com.ibm.io.async.ResultHandler.complete(ResultHandler.java: 195) at com.ibm.io.async.ResultHandler.runEventProcessingLoop(Resul tHandler.java:743) at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873 ) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473) The exception occurs when we invoke methods on HumanTaskManager enterprise bean or on BusinessFlowManager enterprise bean. Both beans are stateless session beans with Container managed trnsactions and a transaction attribute of Required. The caller is a JavaServer Faces (jsf) application that does not control transactions at all. We expect the EJB Container to create new transactions with each enterprise bean method (since the client doesn't deal with transactions). This seems not to happen. Interestingly, we see the problem only in cluster scenarios, not on standalone servers.
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: IBM WebSphere Application Server V6.1 and * * V7.0 Common Event Infrastructure (CEI) * * users that set up CEI to always send events * * in a new transaction. * **************************************************************** * PROBLEM DESCRIPTION: This exception is seen when events * * are sent via multiple connections, * * with Common Event Infrastructure * * service configured to always send the * * events in a new transaction. At some * * point one of the threads treating the * * connections will want to publish the * * events it is dealing with. This means * * it has to suspend the current global * * transaction. When another thread will * * want to do publish, wants to do the * * same, but the global transaction is * * already suspended. This is when the * * exception is thrown. * **************************************************************** * RECOMMENDATION: * **************************************************************** Exception that can be seen is: Exception = java.lang.IllegalStateException Source = com.ibm.ws.Transaction.JTA.TransactionImpl.registerSynchronizati on probeid = 2297 Stack Dump = java.lang.IllegalStateException: Transaction is inactive or prepared at com.ibm.ws.Transaction.JTA.TransactionImpl.registerSynchronizati on(TransactionImpl.java:3555) at com.ibm.ws.Transaction.JTA.TransactionImpl.registerSynchronizati on(TransactionImpl.java:3525) at com.ibm.ws.Transaction.JTA.TranManagerSet.registerSynchronizatio n(TranManagerSet.java:507) at com.ibm.ejs.j2c.XATransactionWrapper.addSync(XATransactionWrappe r.java:289) at com.ibm.ejs.j2c.ConnectionManager.initializeForUOW(ConnectionMan ager.java:1290) at com.ibm.ejs.j2c.ConnectionManager.involveMCInTran(ConnectionMana ger.java:1038) at com.ibm.ejs.j2c.ConnectionManager.allocateConnection(ConnectionM anager.java:602) at com.ibm.ws.sib.api.jmsra.impl.JmsJcaConnectionFactoryImpl.create Connection(JmsJcaConnectionFactoryImpl.java:256) at com.ibm.ws.sib.api.jms.impl.JmsManagedConnectionFactoryImpl.crea teConnection(JmsManagedConnectionFactoryImpl.java:208) at com.ibm.ws.sib.api.jms.impl.JmsManagedQueueConnectionFactoryImpl .createQueueConnection(JmsManagedQueueConnectionFactoryImpl.java :146) at com.ibm.ws.sib.api.jms.impl.JmsManagedQueueConnectionFactoryImpl .createQueueConnection(JmsManagedQueueConnectionFactoryImpl.java :110) at com.ibm.events.emitter.impl.J2eeJmsQueueSender.sendEvents(J2eeJm sQueueSender.java:268) at com.ibm.events.emitter.impl.EmitterImpl.sendEventX(EmitterImpl.j ava:1716) at com.ibm.events.emitter.impl.EmitterImpl.sendEvent(EmitterImpl.ja va:777) at com.ibm.websphere.cem.ECSEmitter$1.run(ECSEmitter.java:268) The transactions are failing because they are being resumed on multiple threads and then these contend with completion activities and fail with IllegalStateExceptions.
Problem conclusion
Making the transaction handler a thread-local field will ensure that every thread has its own transaction handler and will not be able to suspend/resume other threads' transaction. The fix for this APAR is currently targeted for inclusion in fix packs 6.1.0.23 and 7.0.0.3. Please refer to the Recommended Updates page for delivery information: http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix
Comments
APAR Information
APAR number
PK77243
Reported component name
WEBSPHERE APP S
Reported component ID
5724J0800
Reported release
61W
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2008-12-10
Closed date
2008-12-11
Last modified date
2008-12-11
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WEBSPHERE APP S
Fixed component ID
5724J0800
Applicable component levels
R61A PSY
UP
R61H PSY
UP
R61I PSY
UP
R61P PSY
UP
R61S PSY
UP
R61W PSY
UP
R61Z PSY
UP
R700 PSY
UP
Document Information
Modified date:
28 December 2021