180 likes | 285 Vues
This presentation covers the implementation of WS-BA protocol, system design, applications, and demo. It focuses on protocol design, messaging, WS-Coordination framework, and coordination types. Technical details include message format, protocols, and components for managing activities and participants. The presentation also discusses the Protocol Handler design, state machine, deadlock prevention, extensions, and applications with WS-Notification and BPEL integration.
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