Re: question about ksoap and apache soap

"Scott Nichol" <[email protected]>
Newsgroups gmane.text.xml.soap.user
Message-ID <000b01c45d11$53395530$6401a8c0@northgate>
From your deployment descriptor, I assume you have implemented the Serializer and Deserializer interfaces in your Bookmark class. Assuming that is correct, then there is just one problem with the deployment descriptor.  The line

     <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding"

should be

     <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"

i.e. there is a trailing slash in the SOAP Encoding URI.

Scott Nichol

Do not send e-mail directly to this e-mail address,
because it is filtered to accept only mail from
specific mail lists.
----- Original Message ----- 
From: "sang park" <[email protected]>
To: <[email protected]>
Sent: Monday, June 28, 2004 6:53 AM
Subject: question about ksoap and apache soap


> hi all, very new to the world of webservices and i am currently trying to
> build a j2me webservices app.  what I am trying to do in my app, is to add a
> bookmark from my j2me client and send the Bookmark object as a parameter to
> the RPC method.  I've implemented the serializer and deserializer on the
> server for the Bookmark class, and I believe I have my deployment descriptor
> correct.
> 
> the soap deployment descriptor is as follows:
> 
> 
> <isd:service xmlns:isd="http://xml.apache.org/xml-soap/deployment"
> id="urn:feedproxy">
> <isd:provider type="java"
>               scope="Application"
>               methods="getBookmarks">
> <isd:java class="edu.feedproxy.service.FeedProxyService"/>
> </isd:provider>
> 
> <isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListene
> r>
>   <isd:mappings>
>     <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding"
>     xmlns:x="urn:feedproxy"
>     qname="x:bookmark"
>     javaType="edu.feedproxy.bookmarks.Bookmark"
>     java2XMLClassName="edu.feedproxy.bookmarks.Bookmark"
>     xml2JavaClassName="edu.feedproxy.bookmarks.Bookmark"/>
>   </isd:mappings>
> </isd:service>
> 
> The problem that I am running into is that it cannot find a 'Deserializer'
> for my soap request.  specifically, the error is as follows:
> 
> Error:SoapFault - faultcode: 'SOAP-ENV:Client' faultstring: 'No Deserializer
> found to deserialize a 'urn:feedproxy:bookmark' using encoding style
> 'http://schemas.xmlsoap.org/soap/encoding/'.' faultactor:
> '/soap/servlet/rpcrouter' detail: null
> 
> when i print out the request/response for this particular transaction, i get
> the following:
> 
> +++++++++++++Invoking the soap call with request :
>  <SOAP-ENV:Envelope xmlns:n0="urn:feedproxy"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"
> xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
>   <SOAP-ENV:Body
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
>    <n0:addBookmark id="o0" SOAP-ENC:root="1">
>     <p1 xsi:type="xsd:string">[email protected]</p1>
>     <bookmark xsi:type="n0:bookmark">
>      <name xsi:type="xsd:string">newBookmark</name>
>      <url xsi:type="xsd:string">http://aaaa.xml.rss</url>
>      <max-items xsi:type="xsd:string">5</max-items>
>      <update-frequency xsi:type="xsd:string">5</update-frequency>
>     </bookmark>
>    </n0:addBookmark>
>   </SOAP-ENV:Body>
>  </SOAP-ENV:Envelope>
> 
> 
>   Error:SoapFault - faultcode: 'SOAP-ENV:Client' faultstring: 'No
> Deserializer found to deserialize a 'urn:feedproxy:bookmark' using encoding
> style 'http://schemas.xmlsoap.org/soap/encoding/'.' faultactor:
> '/soap/servlet/rpcrouter' detail: null
> 
> ********************response is  <?xml version='1.0' encoding='UTF-8'?>
> 
>  <SOAP-ENV:Envelope
> xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xmlns:xsd="http://www.w3.org/2001/XMLSchema">
>  <SOAP-ENV:Body>
>  <SOAP-ENV:Fault>
>  <faultcode>SOAP-ENV:Client</faultcode>
>  <faultstring>No Deserializer found to deserialize a
> &apos;urn:feedproxy:bookmark&apos; using encoding style
> &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.</faultstring>
>  <faultactor>/soap/servlet/rpcrouter</faultactor>
>  </SOAP-ENV:Fault>
> 
>  </SOAP-ENV:Body>
>  </SOAP-ENV:Envelope>
> 
> if anyone could help me take a look at the response/reqeust and figure out
> what is wrong, i would really appreciate it.  Could it be the econding style
> for that bookmark?  if so, then if i change teh encoding style, how would i
> still have the SOAP data types defined?
> 
> any help would be much appreciated.
> 
> +s.park
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.