axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Maurizio Mlt (JIRA)" <axis-...@ws.apache.org>
Subject [jira] Commented: (AXIS-2013) Deserialization of Exception fails
Date Fri, 11 Nov 2005 17:53:04 GMT
    [ http://issues.apache.org/jira/browse/AXIS-2013?page=comments#action_12357412 ] 

Maurizio Mlt commented on AXIS-2013:
------------------------------------

Hi!

I've encountered this bug also using   RPC/literal style.

I started from  the webservice MyWS Java code to generate the wsdl and then wsdl2java for
the client stubs.

I have a MyWS  operation throwing three exceptions AException, BException and CException

Server side,  MyWS operation throws B or C Exception  while  the client always tries to deserialize
AException.

I looked into the client stub class MyWSSoapBindingStub, inside  the method 
        private static void _initOperationDesc1()
where operations are defined.

The original order with which faults were added to the operation definition was:
        oper.addFault(new org.apache.axis.description.FaultDesc(.....AException...));
        oper.addFault(new org.apache.axis.description.FaultDesc(.....BException...));
        oper.addFault(new org.apache.axis.description.FaultDesc(.....CException...));

What I did was to change this order (adding Exception B or C first)  and I noticed that Axis
always tried to deserialize the FIRST added fault!
i.e. always BException or CException respectively. 

This bug made me to "downgrade" to RPC-encoded.

Hoping this could be of  some help,
Kind regards, 
Mauri


> Deserialization of Exception fails
> ----------------------------------
>
>          Key: AXIS-2013
>          URL: http://issues.apache.org/jira/browse/AXIS-2013
>      Project: Apache Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: current (nightly)
>  Environment: Linux, JDK 1.4.2_06
>     Reporter: Hans
>     Assignee: Davanum Srinivas
>     Priority: Critical
>  Attachments: calc.zip, faults2.zip, faults2_doclit.zip
>
> I have a very basic application deployed as a webservice with one operation that throws
a user-defined exception (derived from AxisFault). The client application calling this operation
has defined a type mapping that maps the operation fault to a client-side Exception class.
When the client invokes the operation and the exception is thrown, the client throws an AxisFault
instead of the client-exception class. 
> When I edit the server-config.wsdd and set the parameter 'sendMultiRefs' to false, everything
works ok: the exception thrown in the server is deserialized and the client throws the mapped
client-side exception. 

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


Mime
View raw message