Hi, I found out a way to fix the BPEL as follows and now sample/helloworld-bpel is passing:

  <variables>
    <variable name="myVar" messageType="test:HelloMessage"/>
    <variable name="tmpVar" type="xsd:string"/>
  </variables>

...
     <assign name="assign1">
         <copy>
<from>concat($myVar.TestPart/test:message/text(), ' World')</from>
             <to variable="tmpVar"/>
         </copy>
         <copy>
             <from>$tmpVar</from>
             <to>$myVar.TestPart/test:message</to>
         </copy>
     </assign>

Please note $myVar.TestPart is the "test:hello" element.

The other option doesn't work as ODE seems not to treat $tmpVar as a variable.
         <copy>
             <from>
                 <literal>
                     <test:hello>
                         <test:message>$tmpVar</test:message>
                     </test:hello>
                 </literal>
             </from>
             <to variable="myVar" part="TestPart"/>
         </copy>

Thanks,
Raymond
--------------------------------------------------
From: "Raymond Feng" <[email protected]>
Sent: Wednesday, July 01, 2009 3:29 PM
To: <[email protected]>
Subject: Re: BPEL Sample - Does anyone think it is Correct???

You are exactly right, Mike. I'm now trying to modify the BPEL to produce a WSDL-conforming response but I couldn't get it working:

  <variables>
    <variable name="myVar" messageType="test:HelloMessage"/>
<variable name="tmpVar" messageType="test:HelloMessage"/> <!-- I changed the type, for some reason, I cannot use element="test:hello" -->
  </variables>
  ...
       <assign name="assign1">
         <copy>
             <from variable="myVar" part="TestPart"/>
             <to variable="tmpVar" part="TestPart"/>
         </copy>
         <copy>
             <from>
                 <test:hello>

<test:message>concat($tmpVar.TestPart/test:hello/test:message, ' World')</test:message> <!-- I also tried Hello World without the function -->
                 </test:hello>
             </from>
             <to variable="myVar" part="TestPart"/>
         </copy>
     </assign>

I need BPEL experts to help.

Thanks,
Raymond
--------------------------------------------------
From: "Mike Edwards" <[email protected]>
Sent: Wednesday, July 01, 2009 3:01 PM
To: <[email protected]>
Subject: Re: BPEL Sample - Does anyone think it is Correct???

ant elder wrote:
I'm now confused after the emails in this thread. The sample _does_
work, in both 1.x and 2.x, with that wsdl, the simple Java interface,
and the previous version of Ode, and that seems ok to me. What do you
mean "the problem is the tmpVar value"?

   ...ant

Ant,

It is my belief that if this sample works on any release, it works "by chance" with one problem masking another.

In your other email response to an earlier post of mine, you said:

> The response looks like:
>
> <TestPart>
> <hello > xmlns="http://tuscany.apache.org/implementation/bpel/example/helloworld.wsdl";>Hello
> World</hello>
> </TestPart>

This is actually incorrect. Go look at the WSDL again. The structure of the response message should be:

<TestPart>
  <hello>
    <message>
      Hello World
    </message>
  </hello>
</TestPart>

so that whole <message> level of XML is missing from the response - but the test works!!

It should fail.


Yours,  Mike.

Reply via email to