0 Replies Latest reply on Jul 10, 2007 7:06 AM by ram_kumar

    Please help, its urgent (BPEL involving call to a service in

    ram_kumar

      Hi,

      I get the following error when one webservice residing in the service mix called by another one which is a bpel application.

      16:18:41,869 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 sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.bpel.graph.def.CompositeActivity$$EnhancerByCGLIB$$6b1056f4.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.bpel.graph.def.Activity.enter(Activity.java:110)
       at sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$4e41da69.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 sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$4e41da69.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.Invoke.execute(Invoke.java:47)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:105)
       at sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$4e41da69.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 sun.reflect.GeneratedMethodAccessor96.invoke(Unknown Source)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$4e41da69.enter(<generated>)
       at org.jbpm.graph.def.Transition.take(Transition.java:151)
       at org.jbpm.graph.def.Node.leave(Node.java:393)
       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin$$EnhancerByCGLIB$$8749bd97.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 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.bpel.graph.struct.StructuredActivity$Begin$$EnhancerByCGLIB$$8749bd97.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 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.bpel.graph.basic.Receive$$EnhancerByCGLIB$$7b6128d6.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 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
       at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
       at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
       at java.lang.reflect.Method.invoke(Method.java:585)
       at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:185)
       at org.jbpm.bpel.graph.def.Activity$$EnhancerByCGLIB$$87daeca1.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:696)
       at java.lang.Thread.run(Thread.java:595)
      Caused by: java.lang.NullPointerException
       at org.jbpm.bpel.integration.client.SoapClient.writeDocumentPart(SoapClient.java:304)
       at org.jbpm.bpel.integration.client.SoapClient.writeDocumentBody(SoapClient.java:276)
       at org.jbpm.bpel.integration.client.SoapClient.writeMessage(SoapClient.java:196)
       at org.jbpm.bpel.integration.client.SoapClient.callImpl(SoapClient.java:143)
       at org.jbpm.bpel.integration.client.SoapClient.call(SoapClient.java:111)
       at org.jbpm.bpel.integration.jms.JmsIntegrationService.invoke(JmsIntegrationService.java:242)
       at org.jbpm.bpel.graph.basic.Invoke.execute(Invoke.java:46)
       at org.jbpm.bpel.graph.def.Activity.enter(Activity.java:105)
       ... 77 more
      



      The first service calls another ordinary service (fileread) and also another service (ftpinput) which is in service mix.

      The bpel file is given below.


      <?xml version="1.0" encoding="UTF-8"?>
      <process name="BatchProductBusiness" targetNamespace="http://blwb.abc.com/getGlobalService"
       xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
       xmlns:tns="http://blwb.abc.com/getGlobalService"
       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" />
      
      
       <partnerLink name="ftpinput" partnerLinkType="tns:ftpinputLT"
       partnerRole="FetchService" />
      
      
       </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" />
      
      
       <variable name="getFileRequest" messageType="tns:ftpinputRequestMessage" />
       <variable name="getFileResponse" messageType="tns:ftpinputResponseMessage" />
      
      
      
       <variable name="POFault" messageType="tns:orderFaultType" />
      
      
       </variables>
      
      
      <faultHandlers>
      
       <catch faultName="tns:cannotCompleteOrder" faultVariable="POFault">
      
       <reply partnerLink="caller" portType="tns:BatchProduct"
       operation="sayHello" variable="POFault"
       faultName="cannotCompleteOrder" />
      
       </catch>
      
       </faultHandlers>
      
      
      
       <sequence>
      
       <!-- receive the name of a person -->
       <receive operation="sayHello" partnerLink="caller" portType="tns:BatchProduct"
       variable="request" createInstance="yes" />
      
      
      
       <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="getFileRequest" part="getFileRequest" />
       </copy>
       </assign>
      
      
      
      
       <invoke partnerLink="ftpinput" portType="tns:FTPInputPortType"
       operation="getFile" inputVariable="getFileRequest"
       outputVariable="getFileResponse">
       </invoke>
      
       <assign>
       <copy>
       <from variable="getFileResponse" part="getFileResponse" />
       <to variable="response" part="greeting" />
       </copy>
       </assign>
      
      
      
      </sequence>
      
       <!-- reply with the greeting -->
       <reply operation="sayHello" partnerLink="caller" portType="tns:BatchProduct"
       variable="response" />
       </sequence>
      
      </process>
      
      


      The wsdl file is given below.

      <?xml version="1.0" encoding="UTF-8"?>
      <definitions targetNamespace="http://blwb.abc.com/getGlobalService"
       xmlns="http://schemas.xmlsoap.org/wsdl/"
       xmlns:pos="http://blwb.abc.com/getGlobalService"
       xmlns:xsd="http://www.w3.org/2001/XMLSchema"
       xmlns:plt="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://schemas.xmlsoap.org/wsdl/
       http://schemas.xmlsoap.org/wsdl/
       http://schemas.xmlsoap.org/ws/2003/05/partner-link/
       http://schemas.xmlsoap.org/ws/2003/05/partner-link/">
      
       <!-- characterizes the relationship between the greeter and its caller -->
       <plt:partnerLinkType name="BatchProduct-Caller">
       <plt:role name="BatchProduct">
       <plt:portType name="pos:BatchProduct" />
       </plt:role>
       <!-- the Caller does not provide services to the BatchProduct,
       this is why we omit the "Caller" role -->
       </plt:partnerLinkType>
      
       <plt:partnerLinkType name="filereadLT">
       <plt:role name="FileRead">
       <plt:portType name="pos:FileRead" />
       </plt:role>
      
       </plt:partnerLinkType>
      
      
      
      <plt:partnerLinkType name="ftpinputLT">
       <plt:role name="FetchService">
       <plt:portType name="pos:FTPInputPortType" />
       </plt:role>
      
       </plt:partnerLinkType>
      
      
      
       <types>
       <xsd:schema>
       <xsd:import namespace="http://blwb.abc.com/getGlobalService"
       schemaLocation="bestlinkage.xsd" />
       </xsd:schema>
       </types>
       <!-- carries the name of a person -->
       <message name="nameMessage">
       <part name="name" type="xsd:string" />
       </message>
      
       <!-- carries the greeting -->
       <message name="greetingMessage">
       <part name="greeting" type="xsd:string" />
       </message>
      <message name="fileReadRequestMessage">
       <part name="getDunsDocumentRequest" type="xsd:string" />
       </message>
      
       <message name="fileReadResponseMessage">
       <part name="getDunsDocumentResponse" type="xsd:string" />
       </message>
      
      
       <message name="ftpinputRequestMessage">
       <part name="getFileRequest" type="xsd:string" />
       </message>
      
       <message name="ftpinputResponseMessage">
       <part name="getFileResponse" type="xsd:string" />
       </message>
      
      
      
      
       <message name="orderFaultType">
       <part name="problemInfo" element="pos:problemInfo" />
       </message>
      
       <!-- describes the interface presented to callers -->
       <portType name="BatchProduct">
       <operation name="sayHello">
       <input message="pos:nameMessage" />
       <output message="pos:greetingMessage" />
       <fault name="cannotCompleteOrder" message="pos:orderFaultType" />
       </operation>
       </portType>
      
       <portType name="FileRead">
       <operation name="getDunsDocument">
       <input message="pos:fileReadRequestMessage" />
       <output message="pos:fileReadResponseMessage" />
       </operation>
       </portType>
      
      <portType name="FTPInputPortType">
       <operation name="getFile">
       <input message="pos:ftpinputRequestMessage" />
       <output message="pos:ftpinputResponseMessage" />
       </operation>
       </portType>
      
      </definitions>
      



      The bpel-Application.xml is given below.

      
      <?xml version="1.0" encoding="UTF-8"?>
      <bpelApplication name="BatchProductBusiness" xmlns="http://jbpm.org/bpel"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://jbpm.org/bpel
       http://jbpm.org/bpel/bpel_application_1_0.xsd" >
       <serviceCatalogs>
       <!-- listing of locally published WSDL documents -->
       <urlCatalog contextUrl="http://localhost:8080/">
       <!-- published WSDL document of fileread service -->
       <wsdl location="fileread/fileread?wsdl"/>
       </urlCatalog>
       <urlCatalog contextUrl="http://localhost:8080/">
       <!-- published WSDL document of ftpinput service -->
       <wsdl location="esb/jbi/ftpinservice/main.wsdl"/>
      
       </urlCatalog>
      
      
       </serviceCatalogs>
      
      </bpelApplication>
      
      


      Please write to me where I am making the mistake ?

      Thanks in advance,

      Regards,
      -veena-