Glen Daniels wrote:
 >
 >> How about Call.setOperationName( "GET" ) or similar?
 >
 > Bear with me here, but this is one of the problems I have with this
 > whole new MEP thing.  GET/POST/etc. are *HTTP* methods.  Yes, it's
 > called "WebMethod" in SOAP 1.2, but we all know that it's really
 > about using HTTP, and I think that does a disservice to the
 > protocol-neutrality of SOAP.  I would much prefer something like
 > Call.setIdempotentOperation(true), and then let the binding figure
 > out that in the HTTP case, that means you use GET.

Brainstorming again.

The name of the MEP is SOAP Response.  There may not have been a SOAP 
Request, the request may have been made out of band, etc.  My point is 
that the MEP is defined to mean that we are simply to process the 
response.  It is somebody else's job to handle what happens before this.

The org.apache.axis.client.Call class has an invoke method that takes a 
SOAPEnvelope as its only argument.  How about we create an overload that 
  takes an InputStream as its argument.  It would then create a null 
RequestMessage, avoid calling invoke(), set the response Message from 
the input stream, and then return the SOAPEnvelope using the appropriate 
SerializionContext, etc.

This give Glen full transport indepdenence.  This gives Mark full 
control over the HTTP GET (see 
http://java.sun.com/j2se/1.3/docs/api/java/net/HttpURLConnection.html 
for details).

The only down side is that developers using this API will perceive it as 
low level. I am just bringing it up again as I perceive it as a issue, 
even if Mark does not.

- Sam Ruby

Reply via email to