[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [wsbpel] Issue - R29 - Partner link's initializePartnerRole attribute
Hi Mark, Sorry ... I am not sure I would agree with your particular proposal on removing initializePartnerRole attribute. The "initializePartnerRole" attribue is used to provide an intent contract point between the BPEL process definition and the rest of SOA system. One of this intent contract point usage is as the input of the deployement mechanism. Their usage of this intent contract point affects the process design as well. (See below) And, the "initializePartnerRole" attribue does create consequence of runtime behavior of the process. For example, if "initializePartnerRole" is set to "yes" on a particular declaration, then we are guaranteed that "bpel:uninitializedPartnerRole" fault will not be thrown. From this perspective, this "initializePartnerRole" feature is similar to the inline variable initialization. When a variable is initialized inline, then we are guaranteed that accessing to that variable will not trigger any "bpel:uninitializedVariable" fault. The only difference is: inline variable initialization has value specified inside the process, while the partnerRole value is specified outside the process. (For all practical reasons to make the process more portable, the epr value of partnerRole has to be outside the process.) Regarding to the example in your bullet point #3, if the process first receives a message on partnerLink PL1 and send another message out on the same partnerLink PL2 later:
In summary, "initializePartnerRole" is a very handy tool to disambiguate the intent of the process designer and bridges the process definition with other parts of SOA system nicely. And, it does have runtime behavior impact (as stated above). Therefore, removing this attribute does not seem to be a good move. However, I do agree with you that we want to review our sample process (such as the ones in Section 15.3.2) to see whether initializePartnerRole is needed to be set. Thanks! Regards, Alex Yiu ws-bpel issues list editor wrote:
|
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]