You are viewing a plain text version of this content. The canonical link for it is here.
Posted to soap-user@ws.apache.org by Nicolas DUFORT <Ni...@socgen.com> on 2001/05/11 12:39:50 UTC

Re[2]: xsi-type dependancy

I had the same problem and I tried your solution but there's still a problem.

When the deployment descriptor is loaded, a QName is created using the NS and the local name (no prefix)
to map to the deserializer.  On the other end, a QName is created from the SOAP message received using
the NS and the tag name of the element (including the prefix).  Therefor no deserializer is found in the map
because it compare "NS-uri:x:element" with "NS-uri:element".

A solution would be to modify the unmarshall method of ParameterSerializer to used the local name
instead of the whole name.

Nicolas Dufort

______________________________ Reply Separator _________________________________



Richard.Hansen@westgroup.com
10/05/2001 15:34:00


 To: soap-user@xml.apache.org@internet
 cc:  (bcc: Nicolas DUFORT/decc/fr/socgen)
	Return Receipt: No
	Importance: Normal
	

SUBJECT: RE: xsi-type dependancy


Here is an example for a single string parameter. For multiples you just add
a new <isd:map> for each parameter.

  <isd:mappings>    
    <isd:map encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" 
             xmlns:x="" qname="x:customerPassword" 
 
xml2JavaClassName="org.apache.soap.encoding.soapenc.StringDeserializer"/>
  </isd:mappings>


> -----Original Message-----
> From: Lommock, John [mailto:John.Lommock@airclic.com]
> Sent: Thursday, May 10, 2001 8:18 AM
> To: 'soap-user@xml.apache.org'
> Subject: RE: xsi-type dependancy
> 
> 
> Can you point to an example of this?  What would the 
> deployment descriptor
> look like for 
> String getStuff( String var1 , int var2 )?
> 
> > -----Original Message-----
> > From: Hansen, Richard [mailto:Richard.Hansen@westgroup.com]
> > Sent: Thursday, May 10, 2001 9:07 AM
> > To: 'soap-user@xml.apache.org'
> > Subject: RE: xsi-type dependancy
> > 
> > 
> > What you need to do is map the types to parameter names. Then 
> > Apache Soap
> > can lookup the parameter types for a method call. The mapping 
> > is most easily
> > done in the deployment descriptor of a service.
> > 
> > Rick Hansen
> > 
> > > -----Original Message-----
> > > From: Kartheek Hirode [mailto:kartheek_hirode@centegy.com]
> > > Sent: Wednesday, May 09, 2001 7:37 PM
> > > To: soap-user@xml.apache.org
> > > Subject: xsi-type dependancy
> > > 
> > > 
> > > Does the SOAP message from an MS-SOAP client still have to 
> > attach this
> > > attribute to the payload parameter? I thought this was fixed 
> > > in SOAP2.1
> > > ("Reduced dependency on xsi:type for deserialization"..as per 
> > > 2.1 release
> > > notes)
> > > 
> > > I have a VB-client (low-level) which attaches the "xsi-type" 
> > > attribute and
> > > everything works fine. But as soon as I take out the 
> > > attribute I get the
> > > SOAP-Fault below:
> > > Thanks for any leads,
> > > --Kartheek
> > > 
> > > This is the SOAP-Request:
> > > <?xml version="1.0" encoding="UTF-8" standalone="no"?>
> > > <SOAP-ENV:Envelope
> > > xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
> > > xmlns:xsd="http://www.w3.org/1999/XMLSchema"
> > > xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance">
> > > <SOAP-ENV:Body><ns1:AcceptanceTestUI-invokeRemoteSOAP 
> > xmlns:ns1="ping"
> > > 
> SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
> > > <PayloadString>Trial payload</PayloadString>
> > > </ns1:myAgent-myService>
> > > </SOAP-ENV:Body>
> > > </SOAP-ENV:Envelope>
> > > 
> > > 
> > > This is the SOAP-Fault response:
> > > <?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/1999/XMLSchema-instance"
> > > xmlns:xsd="http://www.w3.org/1999/XMLSchema">
> > > <SOAP-ENV:Body>
> > > <SOAP-ENV:Fault> <faultcode>SOAP-ENV:Client</faultcode> 
> > > <faultstring>No
> > > Deserializer found to deserialize a ':PayloadString' using 
> > > encoding style
> > > 'http://schemas.xmlsoap.org/soap/encoding/'.</faultstring>
> > > <faultactor>/cif/servlet/soap</faultactor> </SOAP-ENV:Fault>
> > > </SOAP-ENV:Body> </SOAP-ENV:Envelope>
> > > 
> > > 
> > > 
> > 
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
> > > For additional commands, email: soap-user-help@xml.apache.org
> > > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
> > For additional commands, email: soap-user-help@xml.apache.org
> > 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
> For additional commands, email: soap-user-help@xml.apache.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
For additional commands, email: soap-user-help@xml.apache.org



---------------------------------------------------------------------
To unsubscribe, e-mail: soap-user-unsubscribe@xml.apache.org
For additional commands, email: soap-user-help@xml.apache.org