users@glassfish.java.net

BPEL engine hangs on non-initiating, uncorrelated message

From: <glassfish_at_javadesktop.org>
Date: Mon, 28 Apr 2008 10:47:24 PDT

I have a BPEL process that identifies one incoming message as the initiator of a correlation set and all others (subsequent to the initiator, in a Pick within a While) set to "initiate='no'".

If the first message relevant to my correlation set is the message defined as my "initiate='yes'" message, then all is fine. Subsequent messages which match the correlation set are directed to that instance of the BPEL process.

If the first message relevant to my set is one of the subsequent messages in the Pick, my desire is for the BPEL engine to recognize that the initiating message was missed (e.g., it arrived before I started my message feed), and to ignore it. Unfortunately, sending such a message to Glassfish results in getting >no< response at all. In other words, my sending application hangs because it blocks, forever, on this message which has no matching correlation set and no ability to initiate.

Is there some way around this? This situation makes GF unusable for me. I get the same "blocks forever" situation whether I use SOAPConnection.call() or Dispatch.invokeOneWay(). No other configuration of the "initiate" attribute on the Pick messages results in a different behavior.

Appreciate any feedback on how to get usable behavior out of the GF BPEL engine. Thanks -- Wayne
[Message sent by forum member 'wmadams' (wmadams)]

http://forums.java.net/jive/thread.jspa?messageID=271852