My Project uses built on IBM Process servers to process the human tasks.Human tasks can be are actions performed by people.
My project have a service called Task Execution Service exposes task-related functions that can be called by any Web service "consumer" application.
So when one of Consumer application trying to call updateTask(HumanTask) method VIA
soap request(Webservice call) to my application they are getting Timed out Exception.This application deployed in WAS.
As part of the analysis of the issue.. we found that
in my application the code is like it is taking one second for each iteration to complete. It was also found that the loop is for iteratively adding potential owners to the task under consideration. It was found that having 128 potential owners might be the cause of updateTask () API call failure.
As quick workaround we created a new task with around 30 potential owners in the template that was failing earlier and tried executing updateTask() API on the new task. It was found that the response time from EWF kept on increasing as the number of calls to updateTask () increased.
The exception is below:
javax.transaction.TransactionRolledbackException: CORBA TRANSACTION_ROLLEDBACK 0x0 No; nested exception is:
org.omg.CORBA.TRANSACTION_ROLLEDBACK: javax.transaction.TransactionRolledbackException: ; nested exception is:
javax.transaction.TransactionRolledbackException: Transaction is marked rollback only due to timeout vmcid: 0x0 minor code: 0 completed: No
at com.ibm.CORBA.iiop.UtilDelegateImpl.mapSystemException(UtilDelegateImpl.java:270)
at com.ibm.CORBA.iiop.UtilDelegateImpl.wrapException(UtilDelegateImpl.java:714)
at javax.rmi.CORBA.Util.wrapException(Util.java:296)
at com.ibm.task.api._HumanTaskManager_Stub.createWorkItem(_HumanTaskManager_Stub.java:6026)
at com.pwc.us.application.ews.people.types.TaskRole.createWorkItems(TaskRole.java:503)
at com.pwc.us.application.ews.task.types.HumanTask.updateTask(HumanTask.java:1655)
at com.pwc.us.application.ews.ejb.TaskExecutionServiceBeanImpl.updateTask(TaskExecutionServiceBeanImpl.java:509)
at com.pwc.us.application.ews.ejb.TaskExecutionServiceBean.updateTask(TaskExecutionServiceBean.java:438)
at com.pwc.us.application.ews.ejb.EJSRemoteStatelessTaskExecutionService_131e1b63.updateTask(Unknown Source)
at com.pwc.us.application.ews.ejb._TaskExecutionService_Stub.updateTask(_TaskExecutionService_Stub.java:641)
at com.pwc.us.application.ews.ejb.TaskExecutionServiceClient.updateTask(TaskExecutionServiceClient.java:257)
at com.pwc.us.ews.web.TaskExecutionServiceImpl.updateTask(TaskExecutionServiceImpl.java:197)
at sun.reflect.GeneratedMethodAccessor198.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at com.ibm.ws.webservices.engine.dispatchers.java.JavaDispatcher.invokeMethod(JavaDispatcher.java:178)
at com.ibm.ws.webservices.engine.dispatchers.java.JavaDispatcher.invokeOperation(JavaDispatcher.java:141)
at com.ibm.ws.webservices.engine.dispatchers.SoapRPCProcessor.processRequestResponse(SoapRPCProcessor.java:453)
at com.ibm.ws.webservices.engine.dispatchers.SoapRPCProcessor.processMessage(SoapRPCProcessor.java:414)
at com.ibm.ws.webservices.engine.dispatchers.BasicDispatcher.processMessage(BasicDispatcher.java:134)
at com.ibm.ws.webservices.engine.dispatchers.java.SessionDispatcher.invoke(SessionDispatcher.java:204)
at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:228)
at com.ibm.ws.webservices.engine.handlers.jaxrpc.JAXRPCHandler.invoke(JAXRPCHandler.java:152)
at com.ibm.ws.webservices.engine.handlers.WrappedHandler.invoke(WrappedHandler.java:64)
at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:228)
at com.ibm.ws.webservices.engine.PivotHandlerWrapper.invoke(PivotHandlerWrapper.java:228)
at com.ibm.ws.webservices.engine.WebServicesEngine.invoke(WebServicesEngine.java:336)
at com.ibm.ws.webservices.engine.transport.http.WebServicesServlet.doPost(WebServicesServlet.java:831)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at com.ibm.ws.webservices.engine.transport.http.WebServicesServletBase.service(WebServicesServletBase.java:341)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1081)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:550)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:744)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1455)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:115)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:267)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.requestComplete(WorkQueueManager.java:556)
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.attemptIO(WorkQueueManager.java:606)
at com.ibm.ws.tcp.channel.impl.WorkQueueManager.workerRun(WorkQueueManager.java:979)
at com.ibm.ws.tcp.channel.impl.WorkQueueManager$Worker.run(WorkQueueManager.java:1064)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
Caused by:
org.omg.CORBA.TRANSACTION_ROLLEDBACK: javax.transaction.TransactionRolledbackException: ; nested exception is:
javax.transaction.TransactionRolledbackException: Transaction is marked rollback only due to timeout vmcid: 0x0 minor code: 0 completed: No
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:67)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:522)
at com.ibm.rmi.util.ProxyUtil.copyObject(ProxyUtil.java:341)
at com.ibm.CORBA.iiop.UtilDelegateImpl.copyObject(UtilDelegateImpl.java:819)
at javax.rmi.CORBA.Util.copyObject(Util.java:333)
at com.ibm.task.api._HumanTaskManager_Stub.createWorkItem(_HumanTaskManager_Stub.java:5977)
... 44 more
2011-03-18 13:34:46,162 ERROR [WebContainer : 7] <com.pwc.us.application.ews.ejb.TaskExecutionServiceBean> LogEvent[LoggerName='com.pwc.us.application.ews.ejb.TaskExecutionServiceBean', Message='Error during
EJB method: updateTask(task)', ]
ApplicationException: [EWFTS046: Error in creating work items]
at com.pwc.us.application.ews.people.types.TaskRole.createWorkItems(TaskRole.java:572)
at com.pwc.us.application.ews.task.types.HumanTask.updateTask(HumanTask.java:1655)
at com.pwc.us.application.ews.ejb.TaskExecutionServiceBeanImpl.updateTask(TaskExecutionServiceBeanImpl.java:509)
at com.pwc.us.application.ews.ejb.TaskExecutionServiceBean.updateTask(TaskExecutionServiceBean.java:438)
Can some body help me on this issue?
thank you!!!