ode-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jit K <jkf...@gmail.com>
Subject Re: Dynamically invoke a child process
Date Wed, 02 Nov 2016 11:20:02 GMT
Hi Sathwik,

Thank you for taking time to suggest these ideas.

I was thinking on the same line but did not implement because I was not
sure about calling <receive /> in a loop.
Since <receive /> is a blocking activity, I thought the loop will stop
during the first iteration when it executes the first <receive /> activity
and will not not complete.

I have few queries.

1) Iterative forEach parallel='yes'
In my case I would like to collate the result of all sub-processes in the
main process. So in the first approach (forEach) do you think I can add a
<receive /> after <invoke /> as shown below

<bpel:forEach parallel='yes' ...>
        initialize the counter here
        <scope>
               <partnerlink .. /> access the EPR array using the index
counter and assign it to the partnerlink.
               <invoke .../>
               <receive .../> to receive the response from above invoke
         </scope>
</bpel:forEach>

2) While loop with async communication and explicit correlation
‚ÄčIn case of while loop, the execution is sequential. This is ok for <invoke
/> activities. But may not work for <receive /> activities because there is
no guarantee that the responses will be received in the same order of
invoke.
Or putting <receive /> in <while> will create an implicit <flow> like
<forEach> loop?

Thank you once again.

JK

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message