竹伟饶 wrote: > plist[i].getResultState().getState() is "active " and > plist[i].getStatus().getState() is "completing".
> But,in fact,the state of > coordinate and participant have been "completed"(participant will send > "completed" message automatically). The contents of the plist are *not* updated, but reflect the states at the point in time the plist was returned. In this case, this is immediately after the coordinator sent out the "Complete" messages to the participants. New messages from the participants do not change the contents of this plist instance anymore. But: you can at any time fetch an updated plist from the coordinator with plist = coordIProxy.listParticipants(); > So I think the ResultState() shoule > be "completing" and Status should be "completed". The "ResultState" reflects what actually happened on a business level. Please see the javadoc on AbstractCoordParticipant#getResultState and the WS-BAI specification (linked at http://ws.apache.org/kandula/1/publications.html ) what this means. In short: this value is only important when the participant has already reached the Ended state (and .getStatus().getState() returns "Ended"). Without ResultState you would not be able to know whether the participant completed (= executed your work) or exited (= did nothing). > what I mean is the true current state. The true current state can only be fetched by obtaining a current participant list through coordIProxy.listParticipants() and examining the .getStatus().getState() return value of the desired participant. I hope I could explain this? -hannes --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
