This is an odd problem that I'm having a hard time tracking down. I am
doing schema first development, generating Impl classes with JAXB2. I'm
using Xfire 1.2.5, Spring 2.0, and JAXB2. I have my schema defined as
such:
<xsd:element name="SyncLeave" type="ns:SyncLeavePremPay" />
<xsd:element name="SyncPremPay" type="ns:SyncLeavePremPay" />
<xsd:complexType name="SyncLeavePremPay">
<xsd:sequence>
<xsd:element name="Error" type="ns:Error" minOccurs="0"
maxOccurs="unbounded" />
<xsd:element name="InsLeavePrem" type="ns:InsLeavePrem"
minOccurs="0" maxOccurs="unbounded"></xsd:element>
</xsd:sequence>
</xsd:complexType>
My interface as such:
@WebMethod(operationName = "SyncLeave")
@WebResult( name = "SyncLeave" )
public SyncLeavePremPay syncLeave(
@WebParam(name = "SyncLeave")SyncLeavePremPay body);
@WebMethod(operationName = "SyncPremPay")
@WebResult( name = "SyncPremPay" )
public SyncLeavePremPay syncPremPay(
@WebParam(name = "SyncPremPay")SyncLeavePremPay body);
However, when I use XFire to generate my WSDL based on the interface and
my provided schema, XFire is adding duplicate elements for SyncLeave and
SyncPremPay
At the end of the schema I have provided, it seems as though XFire is
entering it's own definition for these 2 elements as seen here:
...
</xsd:complexType>
</xsd:element>
<xsd:element name="SyncLeave" type="tns:SyncLeavePremPay"/>
<xsd:element name="SyncPremPay" type="tns:SyncLeavePremPay"/>
</xsd:schema>
Keep in mind, these 2 elements are already defined further up in my schema.
Why is XFire doing this?