Return-Path: Mailing-List: contact soap-dev-help@xml.apache.org; run by ezmlm Delivered-To: mailing list soap-dev@xml.apache.org Received: (qmail 64614 invoked from network); 1 Dec 2001 20:38:49 -0000 Received: from adsl-63-202-173-133.dsl.snfc21.pacbell.net (HELO zaks.demon.co.uk) (63.202.173.133) by daedalus.apache.org with SMTP; 1 Dec 2001 20:38:49 -0000 Received: from debian.simonfell.com ([192.168.1.11]) by zaks.demon.co.uk with SMTP (Mailtraq/1.1.5.1167) id ZKS343622A262 for soap-dev@xml.apache.org; Sat, 01 Dec 2001 12:44:45 -0800 From: Simon Fell To: soap-dev@xml.apache.org Subject: Re: Literal XML Interop Problem ! Date: Sat, 01 Dec 2001 12:44:45 -0800 Message-ID: References: <86di0uo8n6b80l4hcr8q29hsalev1ov6hj@4ax.com> In-Reply-To: <86di0uo8n6b80l4hcr8q29hsalev1ov6hj@4ax.com> X-Mailer: Forte Agent 1.8/32.548 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="--=_t9gi0usugilnc2h2p89ud98b3gdd1fgee7.MFSBCHJLHS" X-Hops: 1 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N ----=_t9gi0usugilnc2h2p89ud98b3gdd1fgee7.MFSBCHJLHS Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Looking through the 2.2 source, it appears that RPCMessage::unmarshal works out the correct encodingStyle URL, but then passes the wrong version to the call constructor. This doesn't trip up the Apache client because RPCRouter::invoke will pull the encodingStyle from the first child of the body if RPCMessage::encodingStyle returns null. I've attached the diff. Cheers Simon www.pocketsoap.com On Sat, 01 Dec 2001 11:51:40 -0800, in soap you wrote: >I'm trying to call the Apache SOAP 2.2 sample >AddressBook::getAllListings, which is a literal XML request/response. >The Apache based client works, the equivalent pocketSOAP code produces >an error, i can't see why, > >Here's the Apache generated request that works > > >xmlns:SOAP-ENV=3D"http://schemas.xmlsoap.org/soap/envelope/" >xmlns:xsi=3D"http://www.w3.org/1999/XMLSchema-instance" >xmlns:xsd=3D"http://www.w3.org/1999/XMLSchema"> > >SOAP-ENV:encodingStyle=3D"http://xml.apache.org/xml-soap/literalxml"> > > > > >Here's the pocketSOAP generated request that fails > S:encodingStyle=3D'http://xml.apache.org/xml-soap/literalxml' > xmlns:S=3D'http://schemas.xmlsoap.org/soap/envelope/' > xmlns:E=3D'http://schemas.xmlsoap.org/soap/encoding/' > xmlns:a=3D'urn:AddressFetcher'> > > > >AFAIKS, this is syntactically identical, yet generates this error > > >xmlns:SOAP-ENV=3D"http://schemas.xmlsoap.org/soap/envelope/" >xmlns:xsi=3D"http://www.w3.org/1999/XMLSchema-instance" >xmlns:xsd=3D"http://www.w3.org/1999/XMLSchema"> > > >SOAP-ENV:Server >java.lang.IllegalArgumentException: No Serializer found >to serialize a 'org.w3c.dom.Element' using encoding style >'http://schemas.xmlsoap.org/soap/encoding/'. >/soap/servlet/rpcrouter > >[SOAPException: faultCode=3DSOAP-ENV:Server; >msg=3Djava.lang.IllegalArgumentException: No Serializer found to >serialize a 'org.w3c.dom.Element' using encoding style >'http://schemas.xmlsoap.org/soap/encoding/'.] > at >org.apache.soap.providers.RPCJavaProvider.invoke(RPCJavaProvider.java:13= 8) > at >org.apache.soap.server.http.RPCRouterServlet.doPost(RPCRouterServlet.jav= a:287) >[snipped rest of strack trace] > > > > > > > >Any Ideas ? >Tx >Simon >www.pocketsoap.com ----=_t9gi0usugilnc2h2p89ud98b3gdd1fgee7.MFSBCHJLHS Content-Type: application/octet-stream; name=rpcmessage.diff Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=rpcmessage.diff SW5kZXg6IFJQQ01lc3NhZ2UuamF2YQ0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6IC9ob21lL2N2c3B1 YmxpYy94bWwtc29hcC9qYXZhL3NyYy9vcmcvYXBhY2hlL3NvYXAvcnBjL1JQQ01lc3NhZ2UuamF2 YSx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTUNCmRpZmYgLXIxLjE1IFJQQ01lc3NhZ2UuamF2 YQ0KNDY0YzQ2NA0KPCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHBhcmFtcywgbnVsbCwgZGVjbE1zZ0VuY1N0eWxlLCBjdHgpOw0KLS0tDQo+ICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zLCBudWxsLCBhY3R1YWxNc2dF bmNTdHlsZSwgY3R4KTsNCg== ----=_t9gi0usugilnc2h2p89ud98b3gdd1fgee7.MFSBCHJLHS--