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