Note that there are some explanatory texts on larger screens.

plurals
  1. POComplex type with single array element throws marshalling exception
    text
    copied!<p>We have JAX-RPC style web service, with a complex type defined as follows:</p> <pre><code>&lt;xs:complexType name = "SomeFault"&gt; &lt;xs:sequence&gt; &lt;xs:element name = "errorMessages" type="some:ErrorMessageWSType" minOccurs="0" maxOccurs="unbounded" /&gt; &lt;/xs:sequence&gt; &lt;/xs:complexType&gt; &lt;xs:simpleType name = "ErrorMessageWSType"&gt; &lt;xs:restriction base = "xs:NMTOKEN"&gt; &lt;xs:enumeration value = "INVALID_1"/&gt; &lt;xs:enumeration value = "INVALID_2"/&gt; &lt;xs:enumeration value = "INVALID_3"/&gt; &lt;/xs:restriction&gt; &lt;/xs:simpleType&gt; </code></pre> <p>We are running into Marshaling exception on the server side when the response/fault complex type has a single array type field.</p> <blockquote> <p>weblogic.wsee.codec.CodecException: Failed to encode com.bea.xml.XmlException: failed to find a suitable binding type for use in marshalling object "[Lnamespace.type.ErrorMessageWSType;@693767e9". using schema type: t=SomeFault@http://namespace/SOME/v1 java type:namespace.type.ErrorMessageWSType[]</p> </blockquote> <p>If we change SomeFault, by adding another element to the complex type the error goes away.</p> <pre><code>&lt;xs:complexType name = "SomeFault"&gt; &lt;xs:sequence&gt; &lt;xs:element name = "errorMessages" type="some:ErrorMessageWSType" maxOccurs="unbounded" /&gt; &lt;xs:element name = "dummyString" type="xsd:string" minOccurs="0" /&gt; &lt;/xs:sequence&gt; &lt;/xs:complexType&gt; </code></pre> <p>Are we doing something wrong during the wsdlc code generation or is this a known issue?</p> <p></p> <p>A similar question is already posted at <a href="https://forums.oracle.com/forums/thread.jspa?messageID=4462906" rel="nofollow">https://forums.oracle.com/forums/thread.jspa?messageID=4462906</a>, but without any response, any pointers would be great.</p> <p>Thanks.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload