[jboss-user] [jBPM] - jBPM - jBoss ESB integration

Andy Peer do-not-reply at jboss.com
Fri Jan 11 04:26:49 EST 2013


Andy Peer [https://community.jboss.org/people/Andy00] created the discussion

"jBPM - jBoss ESB integration"

To view the discussion, visit: https://community.jboss.org/message/790355#790355

--------------------------------------------------------------
Hi, I have a process which calls an esb service and I pass to this service some variables.
What I can't do, is to send back a variable to jbpm.

This is a snippet from processdefinition.xml
<node name="ESB State 2">
        <action class="org.jboss.soa.esb.services.jbpm.actionhandlers.EsbActionHandler">
            <esbServiceName>
                TestProcess
            </esbServiceName>
            <esbCategoryName>
                EntityServices
            </esbCategoryName>
            <bpmToEsbVars>
                <mapping bpm="praticaTest" esb="praticaTest"></mapping>
            </bpmToEsbVars>
            <esbToBpmVars>
                <mapping bpm="ESBexception" esb="ESBexception"></mapping>
            </esbToBpmVars>
        </action>
        <transition to="Service call ok?"></transition>
    </node>

<decision name="Service call ok?" expression="#{(ESBexception eq 'ESBexception' ? 'to Exception State' : 'to END')}">
        <transition to="Exception State" name="to Exception State"></transition>
        <transition to="END Test" name="to END"></transition>
    </decision>



This is from jboss-esb.xml
<service category="EntityServices"
   description="TestProcess JBPM service" name="TestProcess">
   <listeners>
    <jms-listener busidref="testProcess_esb_channel" name="testProcessJMSListener"/>
   </listeners>
   <actions mep="RequestResponse">
    <!-- log message in -->
    <action class="com.utils.esb.EsbLogger" name="EchoSoapMessage1">
     <property name="message" value="Start ESB - TestProcess -"/>
    </action>
    <action
     class="com.esb.testProcess.handler.TestProcessHandler" name="TestProcessHandler">
     <property name="esbToBpmVars">
      <mapping bpm="ESBexception" esb="ESBexception"/>
     </property>
    </action>
    <!-- log message out -->
    <action class="com.utils.esb.EsbLogger" name="EchoSoapMessage2">
     <property name="message" value="End ESB - TestProcess -"/>
    </action>
   </actions>
  </service>



This is the handler defined above, TestProcessHandler:
@Process
    public Message process(Message message) throws Exception {
        Body body = message.getBody();
        ListString listValues = (ListString)body.get("praticaTest");
        message.getBody().add("ESBexception", "");
        
        try {
            logger.info("ESB TestProcessHandler - BEGIN");
            
            if (listValues.getString().get(0).equalsIgnoreCase("103")) {
                throw new Exception("******  Code generated exception  ***********");
            }
            
            CommonAnagClient client = ClientServiceFactory.getCommonAnagClient();
            CommonAnag servicePort = client.getCommonAnagPort();
            servicePort.elencoRegioni();
        }
        catch (Exception e) {
            logger.info("ESB TestProcessHandler - EXCEPTION");
            e.printStackTrace();
            message.getBody().add("ESBexception", "ESBexception");
        }
        finally {
            logger.info("ESB TestProcessHandler - END");
        }
        return message;
    }



I can get the object praticaTest (jbpm -> esb) correctly, but in jbpm, the ESBexception value (in the decision node) is always null.
The ESBexception variable is set as a process variable when I first create a process instace.

What am I missing?
--------------------------------------------------------------

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

Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20130111/25a6cd81/attachment-0001.html 


More information about the jboss-user mailing list