Take a look at your WSDL and tell us what the transport attribute in the <wsdlsoap:binding> definition says. That will determine which version of SOAP Axis is expecting.
It should say either: transport="http://schemas.xmlsoap.org/soap/http" (SOAP 1.1) or transport="http://www.w3.org/2003/05/soap-envelope" (SOAP 1.2) You should not be using any of the pre-standard SOAP 1.2 working draft versions, such as transport="http://www.w3.org/2001/12/soap-envelope". Anne On 5/20/05, Markus Krogemann <[EMAIL PROTECTED]> wrote: > Dear List, > > this may well be an often-asked question but I did not find any entries > in the FAQ-List or did not look under the right subject, so here goes: > > From a webservice server I receive a response envelope starting like this: > > <SOAP-ENV:Envelope > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"> > > Now I think the namespace declaration is equivalent to a versioning, right? > My application asks Axis to deserialize the response and Axis throws an > exception like below. Is there a way to tell Axis how to deal with this > kind of response? I am using axis1.1 (have tried 1.2, but same result). > > It works ok if the response starts like this: > > <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://www.w3.org/2001/12/soap-envelope"> > > Thanks for any pointers, > Markus > > AxisFault > faultCode: {http://schemas.xmlsoap.org/soap/envelope/}VersionMismatch > faultSubcode: > faultString: Version Mismatch > faultActor: > faultNode: > faultDetail: > {http://xml.apache.org/axis/}stackTrace:Version Mismatch > at > org.apache.axis.message.EnvelopeBuilder.startElement(EnvelopeBuilder.java:102) > at > org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1048) > at > org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown > Source) > at > org.apache.xerces.impl.XMLNSDocumentScannerImpl$NSContentDispatcher.scanRootElementHook(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown > Source) > at > org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown > Source) > at org.apache.xerces.parsers.XML11Configuration.parse(Unknown > Source) > at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) > at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) > at javax.xml.parsers.SAXParser.parse(SAXParser.java:345) > at > org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227) > at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696) > at org.apache.axis.Message.getSOAPEnvelope(Message.java:424) > at > org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) > at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206) > at org.apache.axis.client.Call.invokeEngine(Call.java:2765) > at org.apache.axis.client.Call.invoke(Call.java:2748) > at org.apache.axis.client.Call.invoke(Call.java:1902) > .... >
