You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by Vineesh Thomas <vi...@gmail.com> on 2008/05/29 11:06:17 UTC
Trouble initializing an array of Data object in BPEL.
Hi,
I am passing an array of model class(Data object) to a webservice and get
back a array of String.
Since I won’t be knowing the number of objects in the array that will be
passed to the webservice so I have to iterate the received object[] and set
it to the request message of the webservice before invoking.
Now the problem is before assigning values I have to initialize the
variable. I know only to initialize the request param as a literal and I am
not able to iterate within the assign tag.
For e.g.
In My input SOAP msg, the array of data object looks like :
<dmx:processMarks>
<dmx:m>
<dmx1:marks/>
<dmx1:marks/>
<dmx1:marks/>
<dmx1:name/>
</dmx:m>
<dmx:m>
<dmx1:marks/>
<dmx1:marks/>
<dmx1:marks/>
<dmx1:name/>
</dmx:m>
</dmx:processMarks>
Here each <dmx:m/> represents an object in the array. So when I receive
this data in the bpel and if I have to initialize another variable of the
same size(which changes based on the number of object passed in the
array)how do I got about it ? Kindly share some sample examples or code
snippets if possible.
I tested for a case where I am assuming that I know the number of objects in
the Object[] being passed. i.e. I am passing 2 object in my Object[] and I
have hard coded the initialization for these 2 objects within the bpel. That
is working fine. So invoking a webservice by passing an object[] and getting
back an array of string is working fine, but with the hard coding for the
initialization part as described above.
I am attaching my bpel file along.
http://www.nabble.com/file/p17530609/DM.bpel DM.bpel
--
View this message in context: http://www.nabble.com/Trouble-initializing-an-array-of-Data-object-in-BPEL.-tp17530609p17530609.html
Sent from the Apache Ode Dev mailing list archive at Nabble.com.
Re: Trouble initializing an array of Data object in BPEL.
Posted by Vineesh Thomas <vi...@gmail.com>.
Thanks Matt,
Works like charm.
-------------------------
Vineesh Thomas Devasia
-------------------------
Matthieu Riou-5 wrote:
>
> On Thu, May 29, 2008 at 2:06 AM, Vineesh Thomas <vi...@gmail.com>
> wrote:
>
>>
>> Hi,
>>
>> I am passing an array of model class(Data object) to a webservice and get
>> back a array of String.
>>
>> Since I won't be knowing the number of objects in the array that will be
>> passed to the webservice so I have to iterate the received object[] and
>> set
>> it to the request message of the webservice before invoking.
>>
>> Now the problem is before assigning values I have to initialize the
>> variable. I know only to initialize the request param as a literal and I
>> am
>> not able to iterate within the assign tag.
>>
>> For e.g.
>> In My input SOAP msg, the array of data object looks like :
>> <dmx:processMarks>
>> <dmx:m>
>> <dmx1:marks/>
>> <dmx1:marks/>
>> <dmx1:marks/>
>> <dmx1:name/>
>> </dmx:m>
>> <dmx:m>
>> <dmx1:marks/>
>> <dmx1:marks/>
>> <dmx1:marks/>
>> <dmx1:name/>
>> </dmx:m>
>> </dmx:processMarks>
>>
>> Here each <dmx:m/> represents an object in the array. So when I receive
>> this data in the bpel and if I have to initialize another variable of the
>> same size(which changes based on the number of object passed in the
>> array)how do I got about it ? Kindly share some sample examples or code
>> snippets if possible.
>>
>> I tested for a case where I am assuming that I know the number of objects
>> in
>> the Object[] being passed. i.e. I am passing 2 object in my Object[] and
>> I
>> have hard coded the initialization for these 2 objects within the bpel.
>> That
>> is working fine. So invoking a webservice by passing an object[] and
>> getting
>> back an array of string is working fine, but with the hard coding for the
>> initialization part as described above.
>>
>
> BPEL doesn't easily support array iteration, you may want to look at the
> doXslTransform XPath extension method and do your manipulation in an XSL
> stylesheet.
>
> Matthieu
>
>
>>
>> I am attaching my bpel file along.
>> http://www.nabble.com/file/p17530609/DM.bpel DM.bpel
>> --
>> View this message in context:
>> http://www.nabble.com/Trouble-initializing-an-array-of-Data-object-in-BPEL.-tp17530609p17530609.html
>> Sent from the Apache Ode Dev mailing list archive at Nabble.com.
>>
>>
>
>
--
View this message in context: http://www.nabble.com/Trouble-initializing-an-array-of-Data-object-in-BPEL.-tp17530609p17541740.html
Sent from the Apache Ode Dev mailing list archive at Nabble.com.
Re: Trouble initializing an array of Data object in BPEL.
Posted by Matthieu Riou <ma...@offthelip.org>.
On Thu, May 29, 2008 at 2:06 AM, Vineesh Thomas <vi...@gmail.com> wrote:
>
> Hi,
>
> I am passing an array of model class(Data object) to a webservice and get
> back a array of String.
>
> Since I won't be knowing the number of objects in the array that will be
> passed to the webservice so I have to iterate the received object[] and set
> it to the request message of the webservice before invoking.
>
> Now the problem is before assigning values I have to initialize the
> variable. I know only to initialize the request param as a literal and I am
> not able to iterate within the assign tag.
>
> For e.g.
> In My input SOAP msg, the array of data object looks like :
> <dmx:processMarks>
> <dmx:m>
> <dmx1:marks/>
> <dmx1:marks/>
> <dmx1:marks/>
> <dmx1:name/>
> </dmx:m>
> <dmx:m>
> <dmx1:marks/>
> <dmx1:marks/>
> <dmx1:marks/>
> <dmx1:name/>
> </dmx:m>
> </dmx:processMarks>
>
> Here each <dmx:m/> represents an object in the array. So when I receive
> this data in the bpel and if I have to initialize another variable of the
> same size(which changes based on the number of object passed in the
> array)how do I got about it ? Kindly share some sample examples or code
> snippets if possible.
>
> I tested for a case where I am assuming that I know the number of objects
> in
> the Object[] being passed. i.e. I am passing 2 object in my Object[] and I
> have hard coded the initialization for these 2 objects within the bpel.
> That
> is working fine. So invoking a webservice by passing an object[] and
> getting
> back an array of string is working fine, but with the hard coding for the
> initialization part as described above.
>
BPEL doesn't easily support array iteration, you may want to look at the
doXslTransform XPath extension method and do your manipulation in an XSL
stylesheet.
Matthieu
>
> I am attaching my bpel file along.
> http://www.nabble.com/file/p17530609/DM.bpel DM.bpel
> --
> View this message in context:
> http://www.nabble.com/Trouble-initializing-an-array-of-Data-object-in-BPEL.-tp17530609p17530609.html
> Sent from the Apache Ode Dev mailing list archive at Nabble.com.
>
>