question about ksoap and apache soap

"sang park" <[email protected]>
Newsgroups gmane.text.xml.soap.user
Message-ID <[email protected]>
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.