1

I'm trying to get the BPEL foreach completioncondition work. Therefore I made a very simple test case. I have a foreach loop which waits for $Counter seconds and then assign the $Counter value to the output. So with 4 loops and attribute "parallel" set to no I wait 10 seconds (1 + 2 + 3 + 4) and get the response "1234". With "parallel" = yes I wait 4 seconds (because of concurrent behaviour) and get the same result.

Now I add the completion condition. Line 79 http://pastebin.com/MbLMcNag

The spec says:

The activity without a completes when all of its child 's have completed. The element is optionally specified to prevent some of the children from executing (in the serial case), or to force early termination of some of the children (in the parallel case).

So I would expect getting only "12" as result and waiting 3 seconds in the sequential case and 2 seconds in the parallel case. But I always get "1234" and wait 10 / 4 seconds. So the completion condition is totally ignored. Can you tell me what I'm doing wrong?

I use Apache ODE 1.3.5 running on Tomcat.

Here is the full bpel process: http://pastebin.com/MbLMcNag

tshepang
  • 12,111
  • 21
  • 91
  • 136
Michael
  • 53
  • 1
  • 6
  • hi,what happens if you put successfulBranchesOnly="yes" in your condition? – florent Jul 16 '12 at 14:01
  • @florent thanks for your answer. I testet it and it doesn't make any difference. My branches doesn't quit with faults. – Michael Jul 17 '12 at 11:54

0 Answers0