receive

Die Activity receive wartet auf eine Nachricht. Die Activity wird benutzt, wenn eine Process Definition als Web Service bereitgestellt werden soll.

Das Attribut createInstance steuert, ob beim Empfang einer Nachricht eine neue Process Instance erzeugt wird, wenn eine Process Instance mit gleichem Correlation Set noch nicht existiert.

Die Activity reply tritt immer zusammen mit der Activity receive auf.

<receive partnerLink="ncname" portType="qname" operation="ncname"
variable="ncname"? createInstance="yes|no"?
standard-attributes>
standard-elements
<correlations>?
<correlation set="ncname" initiate="yes|no"?>+
</correlations>
</receive>

Bezogen auf die Activity receive können Race Conditions auftreten. Das ist zum Beispiel der Fall, wenn eine Nachricht für eine spezielle Prozessinstanz eintrifft, bevor diese die Activity receive gestartet hat. Trotzdem soll die Nachricht korrekt verarbeitet werden.


Quelle

"Web Services Business Process Execution Language Version 2.0"
OASIS Standard
11 April 2007
10.4. Providing Web Service Operations – Receive and Reply
http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.html