You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsif-user@ws.apache.org by Hugo Miguel Monteiro da Palma <hu...@telecom.pt> on 2003/12/04 11:38:48 UTC

Deserializer problem with WSIF and SOAP

I'm using WSIF with SOAP not Axis to invoke a WS that returns an object with several attributes.
I'm able to get the request through but i get an Exception when it tries to deserialize the reply:
 
0 [main] ERROR wsif  - WSIF0005E: An error occurred when invoking the method 'getAutorizacaoWlanPPP'. ('ApacheSOAP')  
Error while executing sample, received an exception from WSIF; details:
org.apache.wsif.WSIFException: SOAPException: SOAP-ENV:ClientNo Deserializer found to deserialize a &apos;:Reply&apos; using encoding style &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.; nested exception is: 
 [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to deserialize a &apos;:Reply&apos; using encoding style &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.; targetException=java.lang.IllegalArgumentException: No Deserializer found to deserialize a ':Reply' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.]
 at org.apache.wsif.providers.soap.apachesoap.WSIFOperation_ApacheSOAP.invokeRequestResponseOperation(WSIFOperation_ApacheSOAP.java:583)
 at org.apache.wsif.providers.soap.apachesoap.WSIFOperation_ApacheSOAP.executeRequestResponseOperation(WSIFOperation_ApacheSOAP.java:351)
 at org.apache.wsif.base.WSIFClientProxy.invoke(Unknown Source)
 at $Proxy0.getAutorizacaoWlanPPP(Unknown Source)
 at wsif.Client.main(Client.java:32)
Caused by: [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to deserialize a &apos;:Reply&apos; using encoding style &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.; targetException=java.lang.IllegalArgumentException: No Deserializer found to deserialize a ':Reply' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.]
 at org.apache.soap.rpc.Call.invoke(Call.java:139)
 at org.apache.wsif.providers.soap.apachesoap.WSIFOperation_ApacheSOAP.invokeRequestResponseOperation(WSIFOperation_ApacheSOAP.java:577)
 ... 4 more
 
I have the Bean with all the attributes that are returned, and have mapped the type. Basically what i need to do is say that i want wsif to use the BeanSerializer but i can't find a way to do this. This is possible if i use the SOAP implementation with mapType method of the SOAPMappingRegistry object, but with WSIF i can't access that.
How can i do this ?
Thanks.

Re: Deserializer problem with WSIF and SOAP

Posted by Aleksander Slominski <as...@cs.indiana.edu>.
Hugo Miguel Monteiro da Palma wrote:

>I'm using WSIF with SOAP not Axis to invoke a WS that returns an object with several attributes.
>I'm able to get the request through but i get an Exception when it tries to deserialize the reply:
> 
>0 [main] ERROR wsif  - WSIF0005E: An error occurred when invoking the method 'getAutorizacaoWlanPPP'. ('ApacheSOAP')  
>Error while executing sample, received an exception from WSIF; details:
>org.apache.wsif.WSIFException: SOAPException: SOAP-ENV:ClientNo Deserializer found to deserialize a &apos;:Reply&apos; using encoding style &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.; nested exception is: 
> [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to deserialize a &apos;:Reply&apos; using encoding style &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.; targetException=java.lang.IllegalArgumentException: No Deserializer found to deserialize a ':Reply' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.]
> at org.apache.wsif.providers.soap.apachesoap.WSIFOperation_ApacheSOAP.invokeRequestResponseOperation(WSIFOperation_ApacheSOAP.java:583)
> at org.apache.wsif.providers.soap.apachesoap.WSIFOperation_ApacheSOAP.executeRequestResponseOperation(WSIFOperation_ApacheSOAP.java:351)
>  
>
hi,

it seems that you are using ApacheSOAP and no Axis provide  (it should 
be org.apache.wsif.providers.soap.apacheaxis and not 
org.apache.wsif.providers.soap.apachesoap).

try to use WSIF Apache AXIS provider and then you can apply your 
mappings from AXIS.

HTH,

alek

> at org.apache.wsif.base.WSIFClientProxy.invoke(Unknown Source)
> at $Proxy0.getAutorizacaoWlanPPP(Unknown Source)
> at wsif.Client.main(Client.java:32)
>Caused by: [SOAPException: faultCode=SOAP-ENV:Client; msg=No Deserializer found to deserialize a &apos;:Reply&apos; using encoding style &apos;http://schemas.xmlsoap.org/soap/encoding/&apos;.; targetException=java.lang.IllegalArgumentException: No Deserializer found to deserialize a ':Reply' using encoding style 'http://schemas.xmlsoap.org/soap/encoding/'.]
> at org.apache.soap.rpc.Call.invoke(Call.java:139)
> at org.apache.wsif.providers.soap.apachesoap.WSIFOperation_ApacheSOAP.invokeRequestResponseOperation(WSIFOperation_ApacheSOAP.java:577)
> ... 4 more
> 
>I have the Bean with all the attributes that are returned, and have mapped the type. Basically what i need to do is say that i want wsif to use the BeanSerializer but i can't find a way to do this. This is possible if i use the SOAP implementation with mapType method of the SOAPMappingRegistry object, but with WSIF i can't access that.
>How can i do this ?
>Thanks.
>
>  
>


-- 
The best way to predict the future is to invent it - Alan Kay