Hi, I created a simple Hello WSDL service and I got it working using SOAP encoding. Since it was using multiRefs, I changed it to literal encoding and the server side throws an exception. Can someone explain me whats going on? I am also attaching the WSDL files.
POST /axis/services/GreetingOpSet HTTP/1.0^M Content-Type: text/xml; charset=utf-8^M Accept: application/soap+xml, application/dime, multipart/related, text/*^M User-Agent: Axis/beta3^M Host: localhost^M Cache-Control: no-cache^M Pragma: no-cache^M SOAPAction: ""^M Content-Length: 345^M ^M <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <SayHello> <request> <name>harish</name> </request> </SayHello> </soapenv:Body> </soapenv:Envelope> HTTP/1.0 500 Internal server error^M Content-Type: text/xml; charset=utf-8^M Set-Cookie: 0^M Set-Cookie2: 0^M ^M <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <soapenv:Fault> <faultcode xmlns:ns1="http://xml.apache.org/axis/">ns1:Server.userException</faultcode> <faultstring>org.xml.sax.SAXException: Invalid element in com.openwave.hello.SayHelloRequest - request</faultstring> <detail> <ns2:stackTrace xmlns:ns2="http://xml.apache.org/axis/">org.xml.sax.SAXException: Invalid element in com.openwave.hello.SayHelloRequest - request at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:248) at org.apache.axis.encoding.DeserializationContextImpl.startElement(DeserializationContextImpl.java:883) at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:158) at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:681) at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:210) at org.apache.axis.message.RPCElement.getParams(RPCElement.java:268) at org.apache.axis.providers.java.RPCProvider.processMessage(RPCProvider.java:189) at org.apache.axis.providers.java.JavaProvider.invoke(JavaProvider.java:276) at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrategy.java:71) at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:153) at org.apache.axis.SimpleChain.invoke(SimpleChain.java:123) at org.apache.axis.handlers.soap.SOAPService.invoke(SOAPService.java:431) at org.apache.axis.server.AxisServer.invoke(AxisServer.java:314) at org.apache.axis.transport.http.SimpleAxisWorker.run(SimpleAxisWorker.java:407) at org.apache.axis.transport.http.SimpleAxisServer.run(SimpleAxisServer.java:166) at org.apache.axis.transport.http.SimpleAxisServer.start(SimpleAxisServer.java:205) at org.apache.axis.transport.http.SimpleAxisServer.start(SimpleAxisServer.java:213) at org.apache.axis.transport.http.SimpleAxisServer.main(SimpleAxisServer.java:277) </ns2:stackTrace> </detail> </soapenv:Fault> </soapenv:Body> </soapenv:Envelope>
HelloDefinitions.wsdl
Description: Binary data
HelloSchemas.xsd
Description: Binary data
HelloService.wsdl
Description: Binary data