1 Reply Latest reply on Nov 16, 2007 12:33 AM by deepuin9

    Error in invoking one websevice to the other as bpel process

    ram_kumar

      Hi,

      Two webservices are working independly with out any error. But I am getting the following error when one service call another using JBPM BPEL.

      The error is

      17:10:22,393 WARN [ProxyWarnLog] Narrowing proxy to class org.jbpm.bpel.graph.def.CompositeActivity - this operation bre
      17:10:22,503 ERROR [StartListener] could not start process instance
      org.jbpm.graph.def.DelegationException
       at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:367)
       at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:358)
       at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:358)
       at org.jbpm.graph.def.GraphElement$$FastClassByCGLIB$$7a7d6aa6.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.def.CompositeActivity$$EnhancerByCGLIB$$bd010414.raiseException(<generated>)
       at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:358)
       at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:358)
       at org.jbpm.graph.def.GraphElement.raiseException(GraphElement.java:358)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:110)
       at org.jbpm.graph.def.Node$$FastClassByCGLIB$$d187eeda.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$a0328789.enter(<generated>)
       at org.jbpm.graph.def.Transition.take(Transition.java:151)
       at org.jbpm.graph.def.Node.leave(Node.java:393)
       at org.jbpm.bpel.graph.def.Activity.leave(Activity.java:184)
       at org.jbpm.bpel.graph.basic.Assign.execute(Assign.java:55)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:105)
       at org.jbpm.graph.def.Node$$FastClassByCGLIB$$d187eeda.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$a0328789.enter(<generated>)
       at org.jbpm.graph.def.Transition.take(Transition.java:151)
       at org.jbpm.graph.def.Node.leave(Node.java:393)
       at org.jbpm.graph.def.Node$$FastClassByCGLIB$$d187eeda.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin$$EnhancerByCGLIB$$d93a6ab7.leave(<generated>)
       at org.jbpm.bpel.graph.struct.StructuredActivity.execute(StructuredActivity.java:58)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin.leave(StructuredActivity.java:222)
       at org.jbpm.graph.def.Node.execute(Node.java:349)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:105)
       at org.jbpm.bpel.graph.def.Activity$$FastClassByCGLIB$$bf3a65c2.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin$$EnhancerByCGLIB$$d93a6ab7.enter(<generated>)
       at org.jbpm.graph.def.Transition.take(Transition.java:151)
       at org.jbpm.graph.def.Node.leave(Node.java:393)
       at org.jbpm.graph.def.Node$$FastClassByCGLIB$$d187eeda.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin$$EnhancerByCGLIB$$d93a6ab7.leave(<generated>)
       at org.jbpm.bpel.graph.struct.Flow.execute(Flow.java:73)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin.leave(StructuredActivity.java:222)
       at org.jbpm.graph.def.Node.execute(Node.java:349)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:105)
       at org.jbpm.bpel.graph.def.Activity$$FastClassByCGLIB$$bf3a65c2.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin$$EnhancerByCGLIB$$d93a6ab7.enter(<generated>)
       at org.jbpm.graph.def.Transition.take(Transition.java:151)
       at org.jbpm.graph.def.Node.leave(Node.java:393)
       at org.jbpm.bpel.graph.def.Activity.leave(Activity.java:184)
       at org.jbpm.bpel.graph.struct.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:66)
       at org.jbpm.bpel.graph.basic.Receive.accept(Receive.java:81)
       at org.jbpm.bpel.graph.basic.Receive$$FastClassByCGLIB$$29d34f79.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.basic.Receive$$EnhancerByCGLIB$$cd51d5f6.accept(<generated>)
       at org.jbpm.bpel.graph.struct.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:100)
       at org.jbpm.bpel.graph.struct.Sequence.accept(Sequence.java:104)
       at org.jbpm.bpel.graph.def.Activity$$FastClassByCGLIB$$bf3a65c2.invoke(<generated>)
       at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:163)
       at org.jbpm.bpel.graph.def.Activity$$EnhancerByCGLIB$$d9cb99c1.accept(<generated>)
       at org.jbpm.bpel.graph.struct.ProcessInstanceStarter.visit(ProcessInstanceStarter.java:54)
       at org.jbpm.bpel.graph.def.BpelDefinition.messageReceived(BpelDefinition.java:111)
       at org.jbpm.bpel.integration.jms.StartListener.onMessage(StartListener.java:124)
       at org.jboss.mq.SpyMessageConsumer.run(SpyMessageConsumer.java:694)
       at java.lang.Thread.run(Thread.java:595)
      Caused by: java.lang.NullPointerException
       at org.jbpm.bpel.endpointref.SoapEndpointReference.selectPort(SoapEndpointReference.java:100)
       at org.jbpm.bpel.integration.jms.IntegrationControl.getPartnerClient(IntegrationControl.java:220)
       at org.jbpm.bpel.integration.jms.JmsIntegrationService.invoke(JmsIntegrationService.java:232)
       at org.jbpm.bpel.graph.basic.Invoke.execute(Invoke.java:46)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:105)
       ... 61 more
      


      The process is one service takes a string input and pass it the second one and the second one gets it returns the same string and passes to the 1st one's output variable.

      The bpel file is given below,

      <?xml version="1.0" encoding="UTF-8"?>
      <process name="BatchProductBusiness" targetNamespace="http://jbpm.org/examples/bestlinkage"
       xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
       xmlns:tns="http://jbpm.org/examples/bestlinkage"
       xmlns:bpel="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://schemas.xmlsoap.org/ws/2003/03/business-process/
       http://schemas.xmlsoap.org/ws/2003/03/business-process/">
      
       <partnerLinks>
       <!-- establishes the relationship with the caller agent -->
       <partnerLink name="caller" partnerLinkType="tns:BatchProduct-Caller"
       myRole="BatchProduct" />
      
       <partnerLink name="fileread" partnerLinkType="tns:filereadLT"
       partnerRole="FileRead" />
      
       </partnerLinks>
      
       <variables>
       <!-- holds the incoming message -->
       <variable name="request" messageType="tns:nameMessage" />
       <!-- holds the outgoing message -->
       <variable name="response" messageType="tns:greetingMessage" />
       <variable name="getDunsDocumentRequest" messageType="tns:fileReadRequestMessage" />
       <variable name="getDunsDocumentResponse" messageType="tns:fileReadResponseMessage" />
      
       </variables>
      
       <sequence>
      
       <!-- receive the name of a person -->
       <receive operation="sayHello" partnerLink="caller" portType="tns:BatchProduct"
       variable="request" createInstance="yes" />
      
      
       <flow>
       <sequence>
      
      
      
       <assign>
       <copy>
       <from variable="request" part="name" />
       <to variable="getDunsDocumentRequest" part="getDunsDocumentRequest" />
       </copy>
       </assign>
      
      
       <invoke partnerLink="fileread" portType="tns:FileRead"
       operation="getDunsDocument" inputVariable="getDunsDocumentRequest"
       outputVariable="getDunsDocumentResponse">
       </invoke>
      
       <assign>
       <copy>
       <from variable="getDunsDocumentResponse" part="getDunsDocumentResponse" />
       <to variable="response" part="greeting" />
       </copy>
       </assign>
      </sequence>
      </flow>
      
      
       <!-- reply with the greeting -->
       <reply operation="sayHello" partnerLink="caller" portType="tns:BatchProduct"
       variable="response" />
       </sequence>
      
      </process>
      



      Please help in fixing this issue.

      Thanks & Regards,
      Ram