Simply put, the way to resolve of this is to use a correlation set (nested) inside your <bpel:forEach> scope such that the correlation is unique to each instance of the <bpel:receive> activity.
alex On Fri, Oct 30, 2009 at 12:40 PM, Karthick Sankarachary < [email protected]> wrote: > Using correlations inside of a parallel <forEach> activity might result in > a > bpws:conflictingReceive, which the spec defines as follows: > > "If during the execution of a business process instance, two or more > receive > activities for the same partner link, portType, operation and correlation > set(s) are in fact simultaneously enabled, then the standard fault > bpws:conflictingReceive MUST be thrown by a compliant implementation." > > Off the top of my head, one way to work around this issue could be to > extend > the message variable that you're correlating on (via a <invoke> or > <receive> > activity, for instance), by adding a numeric property, say > "iterationNumber", which is set to the value of the <forEach> counterName > variable. That property basically acts as a discriminant between the > messages corresponding to different iterations. AFAIK, there is no > constraint in the spec per se that would allow us to implement this feature > in the BPEL server. > Best Regards, > Karthick Sankarachary > > > On Fri, Oct 30, 2009 at 6:07 AM, shepy <[email protected]> wrote: > > > > > It looks like correlation inside parallel foreach is not supported by > ODE. > > Can anybody confirm this? > > -- > > View this message in context: > > http://old.nabble.com/Correlation-in-foreach-tp26050377p26129778.html > > Sent from the Apache Ode User mailing list archive at Nabble.com. > > > > >
