I'm trying to switch for JBoss-WS to XFire and running into some
differences into the produced wsdl files with regards to String
arrays.  Here is the JSR-181 annotation:

@WebParam(name = "input") String[] input

and for JBoss, it produces this is the wsdl:

<element maxOccurs="unbounded" minOccurs="0" name="input"
nillable="true" type="string"/>

yet XFire produces this.

<xsd:element maxOccurs="1" minOccurs="1" name="input" nillable="true"
type="tns:ArrayOfString"/>

<xsd:complexType name="ArrayOfString">
<xsd:sequence>
<xsd:element maxOccurs="unbounded" minOccurs="0" name="string"
nillable="true" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>

The WSDL's are obviously different.  JBoss expects:
<input>apple</input>
<input>orange</input>
<input>banana</input>

XFire expects:
<input>
 <string>apple</string>
 <string>orange</string>
 <string>banana</string>
</input>

I was expecting them to be identical so I don't have to change the
clients anytime I change the JSR181 library implementation.  Any idea
what is wrong or if one library is doing it wrong?  I'm using wrapped
document literal:

@SOAPBinding (style = SOAPBinding.Style.DOCUMENT,
                        use = SOAPBinding.Use.LITERAL,
                        parameterStyle = SOAPBinding.ParameterStyle.WRAPPED)

thanks,
Cameron

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

   http://xircles.codehaus.org/manage_email

Reply via email to