180 likes | 281 Views
WS-BusinessActivity using WS-Coordination. A bare-bone implementation. Presented by: Krishnan Narayanan Guided by: Dr. Bina Ramamurthy Course: CSE 622, Spring 2006. Outline. Motivation & Approach Overview of protocols System Design Applications Demo along the way!. Motivation.
E N D
WS-BusinessActivity using WS-Coordination A bare-bone implementation Presented by: Krishnan Narayanan Guided by: Dr. Bina Ramamurthy Course: CSE 622, Spring 2006
Outline • Motivation & Approach • Overview of protocols • System Design • Applications • Demo along the way!
Motivation • Build a working model of WS-BA protocol on top of which applications can be built – more of an academic test bed • Gain practical experience in implementing protocols • Understand the intricacies involved in translating standards into working model – may be this will help us appreciate the part played by vendor dependant design?
What is & What is NOT? • Design compliant with the standards & specification • Not STRICT adherence to the semantics of WS suite of protocols (WS-Policy, WS-Addressing, WS-Security) • Not implemented as a web service – guess why? • Not a complete implementation – basic framework is ready. Future extensions needed/possible. • Only one protocol – Automic Outcome/BAWithParticipantCompletion
Some Technical Details… • Messages - SOAP with Attachments API for Java • Messaging – SOAP/XML • Transport Protocol – HTTP • Supporting Framework – Servlet • Container Support – Apache Tomcat • Callbacks & Notifications – Thread Model
WS-BA Overview • Enables multiple business activities to work in a coordinated fashion • Uses WS-Coordination as the underlying framework • 2 different coordination types • Atomic Outcome – All participants are driven to same end state • Mixed Outcome – Each participant is attended individually • 2 different coordination protocols • Participant Completion – Participant drives the decision making • Coordinator Completion – Coordinator drives the decision making
Applying WS-Coordination to WS-BA with Participant Completion
Coordinator - Activation Component • Purpose: • Manages a list of activities • Design: • Implemented as a Singleton class • Details: • Maintains a static list of on-going Activities • Generate and assigns unique id for the activity (callbackRef) CoordinationContextResponse createCoordinationContext(CoordinationContextRequest)
Coordinator - Registration Component • Registers participant into an active “Activity” • Performs validation by interacting with Activation manager • Generate a Unique ID for the Participant & add it to the Activity list (participantRef) • No security measures in place – WS-Security • Handles the participant to the Protocol Manager RegisterResponse register(Register regRequest)
Coordinator – Protocol Handler • Implements the state machine specified by the standard • Reflects Coordinator’s view of Participant state • Events specified by the standard are translated into SOAP messages • State transitions are triggered by generating appropriate event • One instance for each Participant
Participant – Protocol Handler • Implements the Participant’s view of the state machine • Same as Protocol Handler employed by Coordinator – Events & States
Callbacks • Why is it needed? • Events can be generated either by coordinator & participants. • How is it implemented? • Queue for managing the list of “to process” events. • Callback manager monitors the event queue and triggers callback.
Pieces put together Protocol Handler Design
WS-BA - Protocol Handler at work An Illustration
Is the WS-BA PC Protocol State Machine Deadlock Proof? • Is there a possibility for the protocol to get deadlocked? • If so, can the nature of the Business Process play a role to avoid such a situation? • If yes, is it good or bad? State Machine
Extensions & Applications • WS-Notification can be utilized to implement the callbacks for the Coordinator. • Can be integrated with BPEL to create “coordinated composition” of web services.
References & Questions • WS-Coordination: ftp://www6.software.ibm.com/software/developer/library/WS-Coordination.pdf • WS-BA: ftp://www6.software.ibm.com/software/developer/library/WS-BusinessActivity.pdf • Web services: composition, integration and interoperability: Composition of coordinated web services