I've just tried this using XFire 1.2.4 and I still get the same issue. This
looks similar to the issue posted on JIRA here: 
http://www.arcknowledge.com/gmane.comp.java.xfire.devel/2006-12/msg00021.html
http://www.arcknowledge.com/gmane.comp.java.xfire.devel/2006-12/msg00021.html 
although instead of implementing the superclass method, I just inherit the
superclass methods.  I posted a bug on JIRA here:  
http://jira.codehaus.org/browse/XFIRE-852
http://jira.codehaus.org/browse/XFIRE-852 

-los


moraleslos wrote:
> 
> I'm running into an issue where duplicate properties are being generated
> in the WSDL for a subtype.  For example, I have a class called Employee
> which contains a name and id, and a subclass called Manager which adds a
> role property.  Hence they look like this:
> 
> *********************************
> public class Employee {
>    protected String name;
>    protected Long id;
> 
>    // accessors
> }
> 
> public class Manager extends Employee {
>    protected String role;
>   
>    // accessors
> }
> ********************************
> 
> 
> Now, I have a service that returns a List of Managers back, e.g.:
> 
> public List<Manager> getManagers(String query);
> 
> This service is exposed as a WS using jsr181 annotations.  I'm also using
> servicemix (which uses xfire 1.2.2 internally) .  When I deploy this on
> the server, the generated WSDL looks like this:
> 
> ******************************************
> <xsd:schema attributeFormDefault="qualified"
> elementFormDefault="qualified" targetNamespace="http://people.test.com";>
>       <xsd:complexType name="ArrayOfManager">
>       <xsd:sequence>
> <xsd:element maxOccurs="unbounded" minOccurs="0" name="Manager"
> nillable="true" type="ns3:Manager"/>
> </xsd:sequence>
> </xsd:complexType>
>       <xsd:complexType name="Manager">
>       <xsd:sequence>
> <xsd:element minOccurs="0" name="name" nillable="true" type="xsd:string"/>
> <xsd:element minOccurs="0" name="id" nillable="true" type="xsd:long"/>
> <xsd:element minOccurs="0" name="role" nillable="true" type="xsd:string"/>
> <xsd:element minOccurs="0" name="id" nillable="true" type="xsd:long"/>
> <xsd:element minOccurs="0" name="name" type="xsd:string"/>
> </xsd:sequence>
> </xsd:complexType>
> </xsd:schema>
> 
> ...
> 
> <xsd:complexType name="Employee">
> 
>       <xsd:sequence>
> <xsd:element minOccurs="0" name="name" nillable="true" type="xsd:string"/>
> <xsd:element minOccurs="0" name="id" nillable="true" type="xsd:long"/>
> </xsd:sequence>
> </xsd:complexType>
> ******************************************
> 
> Notice that for Manager's complex type there are duplicates for name and
> id-- all of the superclass's properties have been duplicated.  However,
> the Employee complex type (used in another jsr181 service) generated in
> the WSDL is correct.
> 
> Any hints on the duplicates in the WSDL?  Thanks in advance.
> 
> -los
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Xfire-generates-duplicate-properties-in-WSDL-for-subclasses-tf2940007.html#a8507039
Sent from the XFire - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe from this list please visit:

    http://xircles.codehaus.org/manage_email

Reply via email to