Hi René,

Do you initialize your "wipart" part before assigning into it?

e.g.
<bpel:assign>
 <bpel:copy>
   <bpel:from>
       <bpel:literal>
         <tm:item/>
         <tm:item/>
         <tm:item/>
         ...
   </bpel:from>
 </bpel:copy>
</bpel:assign>

alex

On 4/17/07, René Bos <[EMAIL PROTECTED]> wrote:

I'm getting better and better with ODE and BPEL with thanks the nice
guys here on the mailinglist! :) Great work here..!!!

At the moment I have problems using an array in a variable.

In my WSDL I defined:
<types xmlns="http://schemas.xmlsoap.org/wsdl/";>
        <schema xmlns="http://www.w3.org/2001/XMLSchema";
targetNamespace="urn:TaskManager">
                <complexType name='StringArray'>
                        <sequence>
                                <element name='item' type='xsd:string'
maxOccurs='unbounded' />
                        </sequence>
                </complexType>
        </schema>
</types>

And:
<message name="createTaskRequest">
        <part name="wipart" type="tns:StringArray"/>
</message>

In my BPEL I have:
<variable name="createTaskIn" messageType="tm:createTaskRequest"/>

<assign>
        <copy>
                <from><literal>test1text</literal></from>
                <to variable="createTaskIn" part="wipart">
                        <query>item[1]</query>
                </to>
        </copy>

        <copy>
                <from><literal>test2text</literal></from>
                <to variable="createTaskIn" part="wipart">
                        <query>item[2]</query>
                </to>
        </copy>
</assign>

<invoke partnerLink="taskManagerLink"
        portType="tm:TaskManagerPort"
        operation="createTask"
        inputVariable="createTaskIn"
        outputVariable="createTaskOut"/>

When I deploy, no error, when I run, no errors. But the SOAP message
send is wrong:
<?xml version='1.0' encoding='UTF-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/
">
        <soapenv:Header>
                <addr:To
xmlns:addr="http://www.w3.org/2005/08/addressing";>
http://localhost:81/web_service/taskmanager.php</addr:To>
                <addr:Action xmlns:addr="
http://www.w3.org/2005/08/addressing"/>
        </soapenv:Header>
        <soapenv:Body>
                <axis2ns9:createTask xmlns:axis2ns9="urn:TaskManager">
                        <wipart>test2text</wipart>
                        <procid>t2</procid>
                        <user>t3</user>
                        <feedback>t4</feedback>
                        <reference>t5</reference>
                </axis2ns9:createTask>
        </soapenv:Body>
</soapenv:Envelope>

I'm expecting an array there.. :( What is wrong with this approach?

Thanks! René

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.


Reply via email to