RE: [ebxml-msg] about async responses

From
Jeff Turpin <>
Date
2004-09-08T16:28:54+00:00
ID
Thread
RE: [ebxml-msg] about async responses
Title: about async responses

I would like to summarize where I think we
are in terms of the use of WS-Reliablility for the ebMS Request-Response MEP
(Async). I typed this up rather quickly so I apologize if my mock diagram is
confusing. In addition I feel it will be necessary to keep the ebXML MessageId
and RefToMessageId elements to allow for correlation of Async Request-Response
messages.

 

ebMS
Request-Response MEP (Async):

 

      COMPANY_A                                                                                                                            COMPANY_B

 

SOAP One-way MEP: Payload
(PO BOD, etc.) ------à S-RMP.Submit -------à R-RMP.Deliver -----à Payload(PO BOD, etc.)

SOAP One-way MEP: Payload
(PO Ack BOD, etc.) ß------------ R-RMP.Deliver <---------- S-RMP.Submit ß------------- Payload(PO Ack BOD, etc.)

 

RM-Reply options:

 

a.       Callback RM-Reply:

 

SOAP One-way MEP: Payload
(PO BOD, etc.) ------à S-RMP.Submit ---------à R-RMP.Deliver -----à Payload(PO BOD, etc.)

SOAP One-way MEP: S-RMP  ß------------------------------------
R-RMP(RM-Reply(Ack or Fault))

 

SOAP One-way MEP: Payload
(PO Ack BOD, etc.) ß------------ R-RMP.Deliver <------------- S-RMP.Submit ß------------- Payload(PO Ack BOD, etc.)

SOAP One-way MEP: R-RMP(RM-Reply(Ack or Fault)) ----------------------------------à S-RMP

 

b.       Callback RM-Reply(Bundled):

 

SOAP One-way MEP: Payload
(PO BOD, etc.) ------à S-RMP.Submit   +   R-RMP.Deliver -----à Payload(PO BOD, etc.)

 

SOAP One-way MEP: Payload
(PO Ack BOD, etc.) ß------------ R-RMP.Deliver ß------------- (Payload + RM-Reply) S-RMP.Submit ß------------- Payload(PO Ack BOD, etc.)

SOAP One-way MEP: R-RMP(RM-Reply(Ack or Fault)) ----------------------------------à S-RMP

 

c.       Poll RM-Reply:

 

SOAP One-way MEP: Payload
(PO BOD, etc.) ------à S-RMP.Submit   +   R-RMP.Deliver -----à Payload(PO BOD, etc.)

SOAP One-way MEP: S-RMP(RM-PollRequest) ----------------------------------à R-RMP

            Or

SOAP Request-Response MEP: S-RMP(RM-PollRequest) ----------------------------------à R-RMP

 

SOAP One-way MEP: S-RMP  ß------------------------------------
R-RMP(RM-Reply(Ack or Fault))

            Or

SOAP Request-Response MEP: S-RMP  ß------------------------------------
R-RMP(RM-Reply(Ack or Fault) – Sent in SOAP Response)

 

SOAP One-way MEP: Payload
(PO Ack BOD, etc.) ß------------ R-RMP.Deliver <------------- S-RMP.Submit ß------------- Payload(PO Ack BOD, etc.)

SOAP One-way MEP: R-RMP <--------------------------------- S-RMP(RM-PollRequest)

            Or

SOAP Request-Response MEP: R-RMP <---------------------------------
S-RMP(RM-PollRequest)

 

SOAP One-way MEP: R-RMP(RM-Reply(Ack or Fault))  ----------------------------------à S-RMP

            Or

SOAP Request-Response MEP: R-RMP(RM-Reply(Ack or Fault) –
Sent in SOAP Response)  ----------------------------------à S-RMP

 

 

 

 

 

 

 

From: Jacques Durand
[mailto:] 

Sent: Wednesday, September 01,
2004 10:54 AM

To:
''

Subject: [ebxml-msg] about async
responses

 

 

Precision
on how reliable async "responses" could be handled: 

First a
reminder that ebMS Request-response MEP was implicit in ebMS 2.0 with
reftomessageid, 

and additionally for synchronous
case, with SyncReplyMode. 

Assuming
a more explicit notion of ebMS Request-response: 

When asynchronous, such an
ebMS-level MEP does not necessarily map to a single SOAP Request-response MEP
instance (the HTTP binding of which is - though not necessarily - commonly
defined as an HTTP Request-response).

An
asynchronous ebMS Request-response does not have to involve WS-R
Deliver+Respond. 

these two messages do not have to
appear as a pair Request / Response at RMP level: 

they may be handled as two
unrelated SOAP messages (submitted to RMP via "Submit" operation),
and therefore subject to same WS-Reliability handling (same RM features).

(They
could map to - for example - two SOAP One-way MEP instances.) 

This of
course does not hold for synchronous ebMS Request-responses, but then their
likely binding to 

an underlying synchronous protocol
will not require the same handling of reliability for Responses. 

Jacques