OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-msg message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [ebxml-msg] Routing Errors


How about:

Either one of the following:

(a) errors are handled and reported in an implementation-specific
manner: either logged locally or sent to a fixed, pre-configured
destination, or yet assigned to a specific MPC that one may pull from.

(b) if there is no provision for (a), the error is sent to the
destination identified by wsa:ReplyTo or wsa:FaulTo, which may involve
I-Cloud routing as described in 2.7.3 (the ebms Error message being
considered as a response message).

(c) if there is no provision for (a) and no wsa header supporting (b),
the error related to the routing of a messages sent over an HTTP request
should be sent over the HTTP response. 

Jacques

-----Original Message-----
From: Pim van der Eijk [mailto:pvde@sonnenglanz.net] 
Sent: Wednesday, April 29, 2009 12:12 PM
To: ebxml-msg@lists.oasis-open.org
Subject: [ebxml-msg] Routing Errors

 

Section 2.6.6 of the current version of the spec describes three options
for routing errors at intermediaries:
(a) error is logged only
(b) error is sent to a fixed, pre-configured destination
(c) error is sent to destination identified by wsa:ReplyTo or wsa:FaulTo

I would like to propose some variants:

(d) error is sent on the HTTP response (anonymous EPR).  

(e) the error is sent to the icloud URI asynchronously.

In both cases (d) and (e) an error message generated using option (4)
from section 2.7.3 SHOULD be added. I.e. a routing parameter is added
based on UserMessage header elements. Attached are a UserMessage and a
sample Error message that an intermediary might generate. This allows
routing errors to
be routed back to the senders.   

Option (d) is especially relevant for the first intermediary: endpoints
sending messages to an intermediary will get all routing errors
immediately, without having to be HTTP addressable or to pull from an
MPC on some intermediary.  To be able to generate the routing error, the
intermediary only needs to verify that it has a matching routing rule.
It would not have to actually wait until the message is routed, so the
intermediary can still be fully asynchronous (pull-on-push, or
store-and-forward push-on-push). The is-routable(message)->boolean
function adds a minimal processing burden on intermediaries so is quite
acceptable even in high performance, high volume
environments.   Assuming typical multihop deployments will have vastly
more
endpoints for any intermediary, I think (d) could be the default. At the
least, I would prefer it to options (a) and (b).

In scenario (e) the routing function of the intermediary would define
how to route the error message back through the icloud, using the
regular options for response messages.

Scenarios (d) and (e) MUST NOT be applied to messages that themselves
carry routing errors. 

Pim
 





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]