Download presentation
Presentation is loading. Please wait.
Published byAlfons Segers Modified over 5 years ago
1
Copyright Springer Verlag Berlin Heidelberg 2004
The interaction between clients and services is often formed by a set of operation invocations (i.e., it is a conversation). A service provider may support some conversations while disallowing others. customer (client) supplier (Web service) 1: requestQuote 2: orderGoods 3: makePayment The internal business logic of clients and Web services must support the conversation, and maintain the state across different operation invocations belonging to the same conversation. Copyright Springer Verlag Berlin Heidelberg 2004
2
Copyright Springer Verlag Berlin Heidelberg 2004
requestQuote quote requested orderGoods goods ordered cancelOrder makePayments order canceled order completed Copyright Springer Verlag Berlin Heidelberg 2004
3
Copyright Springer Verlag Berlin Heidelberg 2004
1:requestQuote customer 2:orderGoods supplier 3:confirmOrder 4:makePayment Copyright Springer Verlag Berlin Heidelberg 2004
4
Copyright Springer Verlag Berlin Heidelberg 2004
1:requestQuote customer 2:orderGoods supplier 4:confirmOrder 5:makePayment 7:getShipmentDetail 3:checkShipAvailable 6:orderShipment warehouse 8:confirmShipment 9:confirmShipment Copyright Springer Verlag Berlin Heidelberg 2004
5
Copyright Springer Verlag Berlin Heidelberg 2004
customer supplier warehouse requestQuote orderGoods checkShipAvailable confirmOrder makePayment orderShipment getShipmentDetail confirmShipment confirmShipment Copyright Springer Verlag Berlin Heidelberg 2004
6
Copyright Springer Verlag Berlin Heidelberg 2004
customer supplier warehouse requestQuote (to supplier) orderGoods (to supplier) checkShipAvailable (to warehouse) warehouse confirms warehouse cancels confirmOrder (to customer) cancelOrder (to customer) makePayment (to supplier) orderShipment (to warehouse) getShipmentDetails (to customer) confirmShipment (to warehouse) confirmShipment (to supplier) Copyright Springer Verlag Berlin Heidelberg 2004
7
Copyright Springer Verlag Berlin Heidelberg 2004
customer supplier warehouse requestQuote (to supplier) orderGoods (to supplier) warehouse confirms warehouse cancels confirmOrder (to customer) cancelOrder (to customer) makePayment (to supplier) getShipmentDetails (to customer) confirmShipment (to warehouse) Copyright Springer Verlag Berlin Heidelberg 2004
8
service provider manufacturing health care telecom finance …
Copyright Springer Verlag Berlin Heidelberg 2004 service provider Web services executing vertical protocols. The main focus of standards such as RosettaNet, xCBL, and part of ebXML is to describe protocols at this level. manufacturing health care telecom finance … middleware for horizontal protocols provides properties and guarantees to the execution vertical protocols. Standards such as WS-Coordination, WS-Transaction, and part of ebXML fit here. support for protocols such as transactionality, reliability, security,… other Web services middleware (e.g., SOAP routers) SOAP messages
9
Copyright Springer Verlag Berlin Heidelberg 2004
service requestor P1 service provider P2, P3 service requestor P4, P5 service requestor Copyright Springer Verlag Berlin Heidelberg 2004
10
service provider Copyright Springer Verlag Berlin Heidelberg 2004
object for P1 P1 service requestor P1 object for P2 P2 conversation controller P3 P2, P3 service requestor object for P3 P4 P4, P5 P5 object for P4 service requestor object for P5 the controller dispatches messages to the appropriate implementation object clients invoke operations at the same address Copyright Springer Verlag Berlin Heidelberg 2004
11
service provider EJB EJB EJB EJB container SOAP router
(with conversation controller) conversation ID/object mapping HTTP server SOAP messages on HTTP transport Copyright Springer Verlag Berlin Heidelberg 2004
12
service provider Copyright Springer Verlag Berlin Heidelberg 2004
object (Web service implementation) object (Web service implementation) H B horizontal protocol implementation B service requestor horizontal protocol implementation conversation routing, compliance verification H H B: conversation compliant with a business protocol H: conversation compliant with an horizontal protocol Copyright Springer Verlag Berlin Heidelberg 2004
13
horizontal protocol handler (A) horizontal protocol handler (B)
object (W1) horizontal protocol handler (A) object (W2) horizontal protocol handler (B) A’s port reference B’s port reference A’s role B’s role conversation controller protocol messages Copyright Springer Verlag Berlin Heidelberg 2004
14
Copyright Springer Verlag Berlin Heidelberg 2004
Web service Web service Web service coordinator (a) central coordination Web service Web service Web service coordinator coordinator coordinator (b) distributed coordination Copyright Springer Verlag Berlin Heidelberg 2004
15
Copyright Springer Verlag Berlin Heidelberg 2004
ActivationRequestorPortType Web service CreateCoordinationContext - ... - coordination type - current context CreateCoordinationContextResponse - ... - coordination context - identifier - coordination type - registration service ActivationCoordinatorPortType coordinator Copyright Springer Verlag Berlin Heidelberg 2004
16
Copyright Springer Verlag Berlin Heidelberg 2004
RegistrationRequestorPortType Web service register - ... - protocol identifier - participant protocol service registerResponse - ... - coordinator protocol service RegistrationCoordinatorPortType coordinator Copyright Springer Verlag Berlin Heidelberg 2004
17
Copyright Springer Verlag Berlin Heidelberg 2004
XParticipantPortType Web service protocol-specific messages from participant to coordinator protocol-specific messages from coordinator to participant XCoordinatorPortType coordinator Copyright Springer Verlag Berlin Heidelberg 2004
18
activation coordinator registration coordinator
coordinator C activation coordinator registration coordinator protocol coordinator Web service A Web service B activation participant protocol participant activation participant protocol participant registration participant Web service implementation Web service implementation registration participant 1. create CC 2. X1 3. register 4. protocol coordinator 5. operational message 6. register 7. protocol coordinator 8. protocol-specific message 9. protocol-specific message Copyright Springer Verlag Berlin Heidelberg 2004
19
Copyright Springer Verlag Berlin Heidelberg 2004
Web service A coordinator Ca Web service B coordinator Cb 1. create CC 2. X1 3. register 4. protocol coordinator 5. operational message 6. create CC 7. X2 8. register 9. register 10. protocol coordinator 11. protocol coordinator 12. protocol message 13. protocol message 14. protocol message 15. protocol message Copyright Springer Verlag Berlin Heidelberg 2004
20
Copyright Springer Verlag Berlin Heidelberg 2004
XParticipantPortType Web service n + 1 XParticipantPortType XParticipantPortType coordinator n coordinator n + 1 XCoordinatorPortType XCoordinatorPortType Copyright Springer Verlag Berlin Heidelberg 2004
21
WS-Coordination interfaces
ActivationCoordinatorPortType RegistrationCoordinatorPortType WS-Transaction interfaces CompletionParticipantPortType CompletionCoordinatorPortType CompletionWithAckParticipantrPortType CompletionWithAckCoordinatorPortType atomic transaction coordinator PhaseZeroParticipantrPortType PhaseZeroCoordinatorPortType 2PCParticipantPortType 2PCCoordinatorPortType OutcomeNptificationParticipantPortType OutcomeNptificationCoordinatorPortType WS-Transaction interfaces needed for chaining RegistrationParticipantPortType WS-Coordination interfaces needed for chaining Copyright Springer Verlag Berlin Heidelberg 2004
22
Copyright Springer Verlag Berlin Heidelberg 2004
Web service A coordinator Ca Web service B coordinator Cb create CC T1 register for Completion completion coordinator operational message create CC T2 register for PhaseZero register for PhaseZero PhaseZero coordinator PhaseZero coordinator register for 2PC register for 2PC 2PC coordinator 2PC coordinator complete Copyright Springer Verlag Berlin Heidelberg 2004 PhaseZero PhaseZero PhaseZeroComplete PhaseZeroComplete prepare prepare prepared prepared commit commit committed committed completed
23
WS-Coordination interfaces
ActivationCoordinatorPortType RegistrationCoordinatorPortType WS-Transaction interfaces BusinessAgreementParticipantPortType BusinessAgreementCoordinatorPortType BusinessAgreementWithCompleteCoordinatorPortType BusinessAgreementWithCompleteParticipantrPortType business activity coordinator WS-Transaction interfaces needed for chaining RegistrationParticipantPortType WS-Coordination interfaces needed for chaining Copyright Springer Verlag Berlin Heidelberg 2004
24
Copyright Springer Verlag Berlin Heidelberg 2004
Web service A Web service B Web service C Coordinator R create CC A1 operational message operational message register for BusinessAgreement BusinessAgreement coordinator register for BusinessAgreement BusinessAgreement coordinator completed faulted compensate forget Copyright Springer Verlag Berlin Heidelberg 2004
25
:customer :product supplier start
<<SecureFlow>> price and availability response <<RequestResponseActivity>> request price and availability process price and availability request <<SecureFlow>> price and availability request [ fail ] [ success ] end failed Copyright Springer Verlag Berlin Heidelberg 2004
26
transport protocols (TCP/IP and others) HTTP SMTP other (future) HTTPS
SSL preamble header delivery header service header service content attachment 1 attachment n MIME multipart/related envelope headers business process payload Copyright Springer Verlag Berlin Heidelberg 2004
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.