*MY* dynamic endpoint references have suddenly stopped working :(
-----------------------------------------------------------------

                 Key: ODE-601
                 URL: https://issues.apache.org/jira/browse/ODE-601
             Project: ODE
          Issue Type: Bug
    Affects Versions: 1.3.2, 1.3.3
         Environment: n/a
            Reporter: Ciaran Jessup


My BPEL flows (I *think*, although its possible this hasn't been function as 
expected) used to work before changeset [765432] (on the ODE 1_XXX branch), 
they no longer do (and continue to work when I rever that changeset out.
I think its something to do with the 'location' property now being set on the 
variable reference where it previously wasn't, but I'm very very out of depth.  
I've attached what I think is the relevant snipped of BPEL that I'm using for 
doing my invoke:

<!-- in the bpel:variables section -->
<bpel:variable name="DynamicEndpointRef" element="wsa:EndpointReference" />


<!--- Trying to invoke a service call -->
<bpel:assign name="proxyPreparation">
<bpel:copy>
  <bpel:from>
    <bpel:literal>
      <wsa:EndpointReference xmlns:swsdl="uri:swsdl">
        <wsa:Address />
        <wsa:ServiceName PortName="PPSSoap">swsdl:PPS</wsa:ServiceName>
      </wsa:EndpointReference>
    </bpel:literal>
  </bpel:from>
  <bpel:to variable="DynamicEndpointRef" />
</bpel:copy>
<bpel:copy>
  
<bpel:from>bpel:doXslTransform("GetNextAddress.xsl",$DynamicEndpointRef/wsa:Address)</bpel:from>
  <bpel:to variable="ProxyAddress" />
</bpel:copy>
<bpel:copy>
  <bpel:from variable="ProxyAddress" />
  <bpel:to variable="DynamicEndpointRef">
    <bpel:query>wsa:Address</bpel:query>
  </bpel:to>
</bpel:copy>
<bpel:copy>
  <bpel:from variable="DynamicEndpointRef" />
  <bpel:to partnerLink="PPS" />
</bpel:copy>
<bpel:copy>
  <bpel:from>
    <bpel:literal>
      <swsdl:PPI>
        <swsdl:processId>9f538fdb-ca36-4d5d-a056-d6bf92632f75</swsdl:processId>
      </swsdl:PPI>
    </bpel:literal>
  </bpel:from>
  <bpel:to variable="ppIn" part="parameters" />
</bpel:copy>
</bpel:assign>
<bpel:invoke name="InvokePPS" partnerLink="PPS" portType="swsdl:PPSSoap" 
operation="PPI" inputVariable="ppIn" outputVariable="ppOut" />


And when the flow executes I see an error along the lines of :

ERROR - GeronimoLog.error(104) | Couldn't find endpoint for partner EPR <?xml 
version="1.0" encoding="UTF-8"?>
<service-ref xmlns="http://docs.oasis-open.org/wsbpel/2.0/serviceref";>
                            <Address 
xmlns="http://schemas.xmlsoap.org/ws/2003/03/addressing";>http://server/myaddress.asmx?wsdl</Address>
                            <wsa:ServiceName 
xmlns:wsa="http://schemas.xmlsoap.org/ws/2003/03/addressing"; 
PortName="PPSSoap">swsdl:PPS</wsa:ServiceName>
                          </service-ref>

I do not get this error, and the correct web service seems to get called when I 
revert the change.. any ideas, is my BPEL flawed, or has an issue been 
introduced?


Please find attached a fully deployed process, this will require you to mock a 
service that adheres to the wsdl in proxy.wsdl.

A request such as :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";
    xmlns:wor="http://www.myco.com/xml/sa/4.0/Workflow/";
     xmlns:smf="http://www.myco.com/xml/sa/4.0/smf";>
   <soapenv:Header/>
   <soapenv:Body>
      <wor:ExecuteWorkflow>
         <wor:userCredentials>
            <smf:userId>03d27fc0-5ede-4cb8-89d7-6bf7510e16c6</smf:userId>
            <smf:applicationName>NA</smf:applicationName>
         </wor:userCredentials>
         <wor:workItem version="54">
            <smf:state>BECE5689-A575-4531-86B6-15176D827C08</smf:state>
         </wor:workItem>
      </wor:ExecuteWorkflow>
   </soapenv:Body>
</soapenv:Envelope>

Will cause the error to occur on trunk head, but the error won't occur if you 
revert changeset [765432]   I do believe its to dow with the dynamic addressing 
breaking the partnerlink stuff, but I'm not clever enough to pin it down :(




-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to