Allow for WRAPPED style code generation for "wrapper elements" with
xsd:extension of a wrapper-compatible type
--------------------------------------------------------------------------------------------------------------
Key: CXF-2193
URL: https://issues.apache.org/jira/browse/CXF-2193
Project: CXF
Issue Type: Improvement
Components: Tooling
Affects Versions: 2.1.2
Reporter: Eric Sirianni
JAX-WS Spec:
2.3.1.2 Wrapper Style
A WSDL operation qualifies for wrapper style mapping only if the following
criteria are met:
(i) The operation's input and output messages (if present) each contain only
a single part
(ii) The input message part refers to a global element declaration whose
localname is equal to the operation name
(iii) The output message part refers to a global element declaration
(iv) The elements referred to by the input and output message parts
(henceforth referred to as wrapper
elements) are both complex types defined using the xsd:sequence
compositor
(v) The wrapper elements only contain child elements, they must not contain
other structures such as
wildcards (element or attribute), xsd:choice, substitution groups
(element references are not per-
mitted) or attributes; furthermore, they must not be nillable.
CXF wsdl2java does not encode the following as
SOAPBinding.ParameterStyle.WRAPPED:
<xsd:complexType name="BaseRequestType">
<xsd:sequence>
<xsd:element name="foo" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="MyMethod">
<xsd:complexType>
<xsd:complexContent>
<xsd:extension base="tns:BaseRequestType">
<xsd:sequence>
<xsd:element name="bar" type="xsd:string"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:element>
...
According to the JAX-WS spec, I don't understand why CXF cannot generate
WRAPPED style code for this construct -- namely xsd:extension of a type that is
already "Wrapped-compliant".
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.