Re: [ebxml-msg] Issue for your review

From
Doug Bunting <>
Date
2002-10-17T20:12:42+00:00
ID
Thread
Re: [ebxml-msg] Issue for your review
I suspect we're focusing on the incorrect layer here.  The MSH layer
and the transport layer below it are responsible for responding to the
incoming HTTP request and must (MUST in our specification) do that after
making the message available to the application.  If the application
does some application work, including sending a business signal, faster
than the MSH layer responds, it's out of our hands.  Even if the "application
work" also involves the MSH (e.g. sending a new ebXML message including
a RefToMessageID referring to the "current" incoming message), enforcement
of the proposed rules seems difficult at best.

We're likely increasing the MSH requirements on the recipient side to
lessen them on the sending side without clear enforcement ability on that
side.

By the way, a big +1 on clear separation of layers in general -- from
the Mike Wang, Chris Ferris split from this thread.

thanx,

    doug

"Ahmed, Zahid" wrote:
 

>The decoupling that should exist between the ebXML and
transport layers

>becomes more apparent when you consider other mixtures
of transports.

>What if the outbound ebXML messages were transport via
FTP batch with

>async mshSignal acks coming back via SMTP ?

>

>I certainly agree with the sequence you list as a recommended
order of

>processing for a receiving MSH, however can we expect/enforce
that

>sequence in terms of transport protocol and ebXML message
timing ???

Decoupling of the transport layer (HTTP/S, JMS, SMTP,
FTP, etc.)

from the ebXML messaging layer is a good idea. Infact,
I believe

it is the intention of the ebXML SOAP messaging exchange
system

to be loosely coupled.

However, the relative ordering of events in the transport
layer and

ebXML messaging layer would need to be factored in any
implementation.

This implies that MSH<-->transport components will
have some interface

to coordinate relative ordering of events. E.g., if MSH
is implemented

on J2EE/EJB component such that the underlying transport
protocol is

JMS, then some form of hand-off, whenever a ebXML message
asynchronously

arrives at that end-point, between the message listener
and the MSH

(which is the message consumer) will occur.

thanks,

Zahid

-----Original Message-----

From: Dave Elliot [mailto:]

Sent: Thursday, October 17, 2002 11:41 AM

To: Christopher B Ferris

Cc: Mike Dillon - Drummond Group; Doug Bunting;

; 

Subject: Re: [ebxml-msg] Issue for your review

Christopher,

Regarding the 2xx HTTP response (202/Accepted, 204/No
Response, etc) in

terms of reliable messaging in a SyncReply NONE scenerio.

Consider this...if the HTTP 2xx response is lost however
the receiving

MSH still sends back the async acknowledgment successfully,
should the

sending MSH accept that ebXML acknowledgment?

I would argue that it should.

I think it is dangerous to declare sequences of events
(1, 2, 3) that

switch between boundaries in the ebXML protocol stack. 
My impression is

that the ebXML msging stack has an ebXML layer sitting
above a transport

layer (the transport layer could conceivably support
HTTP, SMTP, FTP,

MQSeries, carrier pigeons, ...).

It is certainly fair (required) to enforce event sequences
at the ebXML

layer (ebxml request sent before ebxml ack received),
or to enforce

event sequences at the transport layer (POST sent before
204 received).

However it would be extremely cumbersome to dictate and
enforce event

sequences ACROSS layers (ebxml request sent, HTTP post
sent, HTTP 202

received, ebxml ack received...rework for every transport
protocol

supported ).

The decoupling that should exist between the ebXML and
transport layers

becomes more apparent when you consider other mixtures
of transports.

What if the outbound ebXML messages were transport via
FTP batch with

async mshSignal acks coming back via SMTP ?

I certainly agree with the sequence you list as a recommended
order of

processing for a receiving MSH, however can we expect/enforce
that

sequence in terms of transport protocol and ebXML message
timing ???

Dave Elliot

XML Global Technologies

 

On Thu, 2002-10-17 at 08:36, Christopher B Ferris wrote:

> IMO, if you are doing a one-way asynch message pattern
over HTTP, with

> asynch

> ack on a separate channel in the reverse direction,
then the HTTP response

> for the

> original POST should be a 202 Accepted. That response
should be returned

> WITHOUT

> any processing (MSH or application-level) of the message,
which is what

> 202 implies.

>

> So, from the receiving end, it would be:

>

> 1) receive message

> 2) send 202 response

> 3) dispatch message to MSH for processing and eventual
dispatch to

> application.

>

> Cheers,

>

> Christopher Ferris

> Architect, Emerging e-business Industry Architecture

> email: 

> phone: +1 508 234 3624

>

> Mike Dillon - Drummond Group <>
wrote on 10/17/2002

> 11:18:00 AM:

>

> > Hi all,

> >

> >  In the current DrummondGroup ebXML Messaging
Interop

> >  we have a issue that would be really helpful
to have input

> >  from the committee.  This is somewhat
subtle but

> >  but thorny problem that we are having in the
current

> >  DGI ebXML Messaging interop.

> >

> >  The problem is on an asynchronous message with

> >  acknowledgment.  Some implementations
are returning

> >  the ack before the original http response...

> >  In other words, I post a message to you and
I'm

> >  waiting for the http reply, I receive the ack

> >  first, then I receive the http reply. This
obviously

> >  has a big effect on the architecture of an
MSH solution.

> >

> >  Do you'all have any comment on this ?

> >

> >  Thanks !

> >

> >  mike dillon

> >  

> >  817 875 0794

> >

> > ----------------------------------------------------------------

> > To subscribe or unsubscribe from this elist use the
subscription

> > manager: <http://lists.oasis-open.org/ob/adm.pl>

 

----------------------------------------------------------------

To subscribe or unsubscribe from this elist use the subscription

manager: <http://lists.oasis-open.org/ob/adm.pl>