Alex,
Alex Yiu wrote:
>
> Hi Danny and Chris,
>
> Please see inline.
...
> *Q1*: /have the process' faultHandlers been uninstalled?/
> Answer: As I mentioned in the my previous email: (please see the example)
> http://lists.oasis-open.org/archives/wsbpel/200512/msg00050.html
> I prefer the direction of which: the fault is thrown by scope S2 to
> scope S2.
I am not a big fan of this "S2 to S2" semantics for
the following reasons:
Reason 1: Credibility of the use case.
I am not convinced that there are (many) cases where
scope S2 fails to reply without throwing a fault (except
missingReply). If S2 does, it should be a programming
error rather than a runtime error.
More likely are, in my opinion, the cases where
scope S2 fails to reply due to some fault.
For such cases,
S2 should define a fault handler to catch the fault and
send a reply there.
Not catching the cause fault and instead waiting for the
missingReply to occur doesn't seem to be a good programming
practice. The language should not promote that.
Reason 2: When to judge if a reply is missing.
A missingReply should be thrown only after the whole execution
of the scope S2, including the fault handlers, completed
without sending a reply. (As explained in the example for Reason 1,
we should expect a fault handler to send a reply.)
Then the natural destination of the missingReply fault should be
the parent of S2, i.e., S1.
Yuzo Fujishima
NEC Corporation