Inheritance on method parameters not working
--------------------------------------------

                 Key: AXIS2-4818
                 URL: https://issues.apache.org/jira/browse/AXIS2-4818
             Project: Axis2
          Issue Type: Bug
    Affects Versions: 1.4
         Environment: Ubuntu Jaunty 9.04, JDK 1.6u21, Tomcat 6.0
            Reporter: Chetan Saundankar
            Priority: Blocker


I have a test web service with following methods & classes,

Method
------------
public String addPerson(Person p) {
if(p instanceof Employee) {
return "Employee"; 
}
return "Person";
}
Note: Method is annotated with @WebMethod, @WebParam annotations, so is web 
service with @WebService.

Classes
-------------

Class Person {
private String name;

// getters and setters
}

Class Employee extends Person{
private int employeeNo;

// getters and setters
}

Observations
-------------------
In spite of client sending the serialized Employee object the web service is 
always taking it as a Person object. I have checked the soap packet on client 
with firebug tool, employee number is present in the payload. I also check soap 
MESSAGE on server & their I dont see employee number attribute.

Question
--------------
Is this an expected behavior? I hope it is not.
Is there any way I can make this work without having write custom SOAP decoders?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to