[jboss-dev-forums] [JBoss ESB Development] - Passing Message to Jbpm

David Paz do-not-reply at jboss.com
Tue Nov 2 13:35:28 EDT 2010


David Paz [http://community.jboss.org/people/davidmpaz] created the discussion

"Passing Message to Jbpm"

To view the discussion, visit: http://community.jboss.org/message/569374#569374

--------------------------------------------------------------
Hello, I have a problem and I will appreciate any suggestion about it. This is my scenario:

I have several services orchestrated from jbpm, the starter service receive an xml through http, the xml is transformed (smooks) into an ArrayList<User>, the message is mapped to jbpm variable from esb as BODY_CONTENT.




My problems start when the process try to pause (I have a timer on it), I think it is because this kind of var is not persistable, this is the exeption

08:00:54,449 ERROR  http://community.jboss.org/message/569374#569374 Passing Message to Jbpm Unexpected error delivering message delegator-&gt;JBossMessage[21114107566866487]:PERSISTENT, deliveryId=18org.jbpm.JbpmException: cannot mark externally managed transaction for rollback    at org.jbpm.persistence.db.DbPersistenceService.endTransaction(DbPersistenceService.java:129)    at org.jbpm.persistence.db.DbPersistenceService.close(DbPersistenceService.java:201)    at org.jbpm.svc.Services.close(Services.java:247)    at org.jbpm.JbpmContext.close(JbpmContext.java:131)    at org.jbpm.command.impl.CommandServiceImpl.execute(CommandServiceImpl.java:79)    at org.jboss.soa.esb.services.jbpm.cmd.CommandExecutor.executeJbpmCommand(CommandExecutor.java:279)    at org.jboss.soa.esb.services.jbpm.cmd.CommandExecutor.access$100(CommandExecutor.java:51)    at org.jboss.soa.esb.services.jbpm.cmd.CommandExecutor$3.execute(CommandExecutor.java:136)    at org.jboss.soa.esb.services.jbpm.actions.JBpmCallback.process(JBpmCallback.java:68)    at sun.reflect.GeneratedMethodAccessor646.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)    at java.lang.reflect.Method.invoke(Method.java:597)    at org.jboss.soa.esb.listeners.message.ActionProcessorMethodInfo.processMethods(ActionProcessorMethodInfo.java:102)    at org.jboss.soa.esb.listeners.message.OverriddenActionLifecycleProcessor.process(OverriddenActionLifecycleProcessor.java:74)    at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:634)    at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.processPipeline(ActionProcessingPipeline.java:588)    at org.jboss.soa.esb.listeners.message.ActionProcessingPipeline.process(ActionProcessingPipeline.java:419)    at org.jboss.soa.esb.listeners.jca.JcaMessageAwareListener.process(JcaMessageAwareListener.java:163)    at org.jboss.soa.esb.listeners.jca.JcaJMSInflowMessageProcessorAdapter.onMessage(JcaJMSInflowMessageProcessorAdapter.java:44)    at sun.reflect.GeneratedMethodAccessor645.invoke(Unknown Source)    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)    at java.lang.reflect.Method.invoke(Method.java:597)    at org.jboss.soa.esb.listeners.jca.BaseJcaInflow$1.invoke(BaseJcaInflow.java:205)    at org.jboss.soa.esb.listeners.jca.EndpointProxy.delivery(EndpointProxy.java:258)    at org.jboss.soa.esb.listeners.jca.EndpointProxy.invoke(EndpointProxy.java:150)    at $Proxy374.onMessage(Unknown Source)    at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:178)    at org.jboss.jms.client.container.ClientConsumer.callOnMessageStatic(ClientConsumer.java:160)    at org.jboss.jms.client.container.SessionAspect.handleRun(SessionAspect.java:831)    at org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect_z_handleRun_2046525641.invoke(SessionAspect_z_handleRun_2046525641.java)    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)    at org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)    at org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:86)    at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:102)    at org.jboss.jms.client.delegate.ClientSessionDelegate.run(ClientSessionDelegate.java)    at org.jboss.jms.client.JBossSession.run(JBossSession.java:199)    at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:234)    at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:205)    at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260)    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)    at java.lang.Thread.run(Thread.java:619)


Can anyone propose a possible solution or point me to some direction for achieving this, please.

As a work around as I have tried to transform back the Collection into an xml string, so the process doesn't complain when paused. I would like to know how can I use that object model to generate an xml string using Smooks, FreeMarker template (notice I would like to generate back an xml with same structure as received one)

Again if someone can point me on the right direction, I will appreciate a lot.

If you need more information please I can post configuration files also.

Thanks for listen, David
--------------------------------------------------------------

Reply to this message by going to Community
[http://community.jboss.org/message/569374#569374]

Start a new discussion in JBoss ESB Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2032]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20101102/72929580/attachment.html 


More information about the jboss-dev-forums mailing list