- From: Ugo Corda <UCorda@SeeBeyond.com>
- Date: Mon, 5 Jul 2004 15:06:12 -0700
- To: "Sanjiva Weerawarana" <sanjiva@watson.ibm.com>, <www-ws-desc@w3.org>
Isn't a messageID also required to correlate the request and the response, since they cannot be correlated by being on the same channel? Both WS-Address and WS-MD have the capability of carrying such an ID, but the two concepts are orthogonal and other addressing mechanism might not include a messageID capability. Ugo > -----Original Message----- > From: www-ws-desc-request@w3.org > [mailto:www-ws-desc-request@w3.org] On Behalf Of Sanjiva Weerawarana > Sent: Sunday, July 04, 2004 9:16 AM > To: www-ws-desc@w3.org > Subject: Re: Revised Asynch Binding > > > > This feels all too complicated to me. > > The problem we want to address is to enable an asynchronous > SOAP/HTTP binding right? IMO trying to make all bindings > asynch aware is beyond the scope of what we need at this time. > > So if its just SOAP/HTTP I propose the following simple solution: > > - Presently we require the user to set the > /binding/@wsoap:protocol > attribute to http://www.w3.org/2003/05/soap/bindings/HTTP/ > to indicate that they wish to have the XMLP defined > SOAP-over-HTTP > protocol. That protocol assumes that the response of a request/ > response will always come back in the response channel of the > HTTP request. > > - We define a new URI: > http://www.w3.org/@@@@/@@/wsdl/soap/asynch/http > > - By assigning the above value to > /binding/@wsoap:protocol attr, the > user is indicating that they will follow all the rules > of SOAP/HTTP > protocol, but for one: the response MAY get sent back > via another > transport/connection and not necessarily via the > response path of > the HTTP request. > > - How does the requester indicate how the response should be sent? > To avoid political problems, we say that how that is > done MUST be > indicated in the WSDL thru extensibility (or F&P; which > is of course > a special form of extensibility). So, if I want to > allow the use of > WS-Addressing's <ReplyTo> to indicate where the > response should go, > I need to assign the above URI to the SOAP protocol > attribute, put > some indication in the WSDL that I can handle WS-Addressing and > that's it. > > - We can also state that if the above URI is assigned to > @wsoap:protocol > and if no reply address has been defined in some other > manner, then > the old approach of sending the response via the HTTP > response will > hold. > > That's it. Its very simple and it allows me to do full async > stuff very cleanly. > > Sanjiva. > > ----- Original Message ----- > From: "David Orchard" <dorchard@bea.com> > To: <www-ws-desc@w3.org> > Sent: Wednesday, June 30, 2004 12:47 AM > Subject: Revised Asynch Binding > > > > > > In order to do an Asynchronous binding, that is binding an > abstractly > synchronous operation to 2 synchronous operations in the > binding, it means that most of the binding operation > constructs that are expected on the input side must also be > available for the output. The way that a wsoap:operation > extends the binding operation must be available for the > output as well as > the input. Further, the service must have a way of > specifying what the > address of the "callback" is. > > > > The current model is: > > <definitions > > > <binding name="xs:NCName" interface="xs:QName"? type="xs:anyURI" > > wsoap:protocol="xs:anyURI" > > wsoap:mepDefault="xs:anyURI"? > > > > > <operation ref="xs:QName" > > wsoap:mep="xs:anyURI"? > > wsoap:action="xs:anyURI"? > > > > > <input messageLabel="xs:NCName"? > > > </input>* > > <output messageLabel="xs:NCName"? > > > > > </output>* > > </operation> > > </binding> > > > > This causes us problems because we want to retain the > operation/input|output model. The part of wsoap:operation > that is useful to both input and output is the mep. > Therefore, I propose that the wsoap:operation be modified. > The operation information - namely the protocol, mep and > action - apply to the input or output in 2 ways: When the mep > and action are only on the operation, then the implication is > that the protocol operation binds directly to the > input/output. For example, an input binds to http request > and the output binds to http response. This can be > overridden in the input or output to enable a 2nd protocol > operation to be controled. The protocol may be overridden to > specify a different protocol for the second message. In the > case of wsdl in/out?, then the output may contain protocol, > mep and/or action attributes. In the case of wsdl out/in?, > the input may contain protocol, mep and/or action attribugtes. > > > > <definitions > > > <binding name="xs:NCName" interface="xs:QName"? type="xs:anyURI" > > wsoap:protocol="xs:anyURI" > > wsoap:mepDefault="xs:anyURI"? > > > > > <operation ref="xs:QName" > > wsoap:mep="xs:anyURI"? > > wsoap:action="xs:anyURI"? > > > > > <input messageLabel="xs:NCName"? wsoap:protocol="xs:anyURI" > > wsoap:mep="xs:anyURI"? wsoap:action="xs:anyURI"? > > > </input>* > > <output messageLabel="xs:NCName"? wsoap:protocol="xs:anyURI" > > wsoap:mep="xs:anyURI"? wsoap:action="xs:anyURI"? > > > > > </output>* > > </operation> > > </binding> > > > > The endpoint has an additional optional asynch address attribute. > > This > attribute specifies a location of the 2nd message if the > interface operation is bound to 2 protocol messages. > > > > <service name="xs:NCName" interface="xs:QName" > > <endpoint name="xs:NCName" binding="xs:QName" > location="xs:anyURI" > asynchLocation="xs:anyURI"?> > > </endpoint>* > > </service>* > > > > > > When a WSDL document is exchanged, the location of an > endpoint may not > > be > known to the WSDL publisher. Some examples of this scenario are > asynchronous message exchanges with callbacks and > non-addressible software. WSDL defines a URI for specifying > these "unknown" locations > > > > http://www.w3.org/2004/wsdl/part3/unknown > > > > It is expected that messages that are sent to the unknown location > > will > use some other mechanism, such as runtime soap headers, for > exchanging the location. > > > > Cheers, > > Dave > >
Received on Monday, 5 July 2004 18:06:44 UTC