[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: Re: interposition requirements
Not sure which Mark you mean, but I'll take a stab at it: first I don't see
that the participant and the sub-coordinator have to be different; if a
participating web service wants to propagate the context to other, back-end (for
example) web services then as well as doing it's own work when it's told to
"prepare" it sends this message to those back-end services, i.e., it acts like a
sub-coordinator. However, in order to do this, when it propagates the context to
these additional services it needs to re-write the context slightly so that the
coordinator URL is no longer the one that it received, but itself. Obviously
this means that the web service must support the coordinator interface and
appropriate functionality; if it can't then it can't do interposition - it's as
simple as that.
I don't think a participant *has* to be a sub-coordinator. If it's a leaf
node, and does no further invocations to other BTP-aware services, then it's not
coordinating anything other than its own work. Even if it does propagate the
context, it may be physically unable to act as a sub-coordinator anyway.
I don't think this is a decision that the initiator can, or
should, make. It depends upon too many factors that the initiator can't and
shouldn't be aware of: implementation (does the web service support
sub-coordinator operations), business logic (what's going on at the back-end),
connectivity (can the root actually talk to all participants), ... I believe
this is a decision that only the propagating web service should make (possibly
with some configurable option based on the application.)
OK, as long as the requirement from the initiator is only a hint, and can
be ignored by the participating web services, I don't have a problem with
this.
I've tried to use participant (web service) and sub-coordinator separately,
because one may not be the other.
Mark.
----------------------------------------------
Dr. Mark Little (mark@arjuna.com) Transactions Architect, HP Arjuna Labs Phone +44 191 2064538 Fax +44 191 2064203 |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC