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

Reply via email to