[ http://jira.codehaus.org/browse/XFIRE-35?page=comments#action_64048 ]
Fried Hoeben commented on XFIRE-35: ----------------------------------- Does the solution describe here also ensure that a call to SampleService.getA(name) may return a B? I.e. will the server also be aware that it may have to serialize all of B's properties, not just those defined by A? > Inheritance relationship is not included into the schema definition > ------------------------------------------------------------------- > > Key: XFIRE-35 > URL: http://jira.codehaus.org/browse/XFIRE-35 > Project: XFire > Type: Bug > Components: Core > Versions: 1.0-M3 > Reporter: Arjen Poutsma > Assignee: Dan Diephouse > Attachments: InheritancePath.zip > > > Nicolas Averseng writes: > Let's take the following class structure as an example : > public interface I > { > String getName(); > void setName(String name); > } > public class A implements I > { > private String m_name; > public String getName() { > return m_name; > } > public void setName(String name) { > m_name = name; > } > } > public class B extends A > { > private String m_data; > public String getData) { > return m_data; > } > public void setData(String data) { > m_data = data; > } > } > public interface SampleService1 > { > public A getA(String name); > public B getB(String name, int i); > } > public interface SampleService2 > { > public A getA(String name); > public B getB(String name, int i); > public I getI(String name); > } > public interface SampleService3 > { > public A getA(String name); > public B getB(String name, int i); > public Collection findSomeA() throws RemoteException; } > 1- When generating the WSDL for a service with interface SampleService1, the > inheritance relationship between B and A is not included into the schema > definition. > <xsd:complexType name="B"> > <xsd:sequence> > <xsd:element name="data" nillable="true" type="xsd:string"/> > <xsd:element name="name" nillable="true" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> > <xsd:complexType name="A"> > <xsd:sequence> > <xsd:element name="name" nillable="true" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> > instead of : > <xsd:complexType name="B"> > <xsd:complexContent> > <xsd:extension base="A"> > <xsd:sequence> > <xsd:element name="data" nillable="true" type="xsd:string"/> > </xsd:sequence> > </xsd:extension> > </xsd:complexContent> > </xsd:complexType> > <xsd:complexType name="A"> > <xsd:sequence> > <xsd:element name="name" nillable="true" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
