Not sure, Ronald. Let me have a look in detail. Can I please ask you to create a Jira issue nevertheless, and attach all relevant files.

Thanks in advance
Werner

Ronald R. DiFrango wrote:
All,

I think I have hit the following bug and wanted confirmation that that is in fact the case:

http://jira.codehaus.org/browse/CASTOR-2172

Here is snippet of my XSD:

<xs:complexType name="ResponseType">
        <xs:choice>
            <xs:sequence>
                <xs:element ref="ApplicationKey"/>
                <xs:element ref="ApplicationLabel"/>
                <xs:element ref="Status"/>
                <xs:element ref="Applicant" minOccurs="0"/>
                <xs:element ref="CoApplicant" minOccurs="0"/>
                <xs:element ref="ProductType" minOccurs="0"/>
                <xs:element ref="CreditLimit" minOccurs="0"/>
                <xs:element ref="APR" minOccurs="0"/>
                <xs:element ref="AccountNumber" minOccurs="0"/>
                <xs:element ref="ChaseTransactionID" minOccurs="0"/>
                <xs:element ref="CardExpirationDate" minOccurs="0"/>
                <xs:element ref="VendorStatus" minOccurs="0"/>
            </xs:sequence>
            <xs:sequence>
                <xs:element ref="Status">
                    <xs:annotation>
<xs:documentation>Carryover from Legacy (always Error for IC Web)</xs:documentation>
                    </xs:annotation>
                </xs:element>
                <xs:choice>
                    <xs:sequence>
                        <xs:element ref="Error"/>
                        <xs:element ref="ApplicationLabel" minOccurs="0"/>
                    </xs:sequence>
                    <xs:element ref="AppKey">
                        <xs:annotation>
<xs:documentation>Carryover from Legacy. Only present in a successful asynchronous response.</xs:documentation>
                        </xs:annotation>
                    </xs:element>
                </xs:choice>
            </xs:sequence>
        </xs:choice>
    </xs:complexType>

<xs:element name="CreditApplicationResponse">
        <xs:annotation>
<xs:documentation>This document will be used for returning synchronous responses from the Credit Application Gateway</xs:documentation>
        </xs:annotation>
        <xs:complexType>
            <xs:complexContent>
                <xs:extension base="ResponseType"/>
            </xs:complexContent>
        </xs:complexType>
    </xs:element>

And when I create the following XML:

<CreditApplicationResponse>
    <Status>Dummy</Status>
    <Error>
        <text>Dummy</text>
    </Error>
    <ApplicationLabel>dummy</ApplicationLabel>
</CreditApplicationResponse>

I get the following exception:

org.exolab.castor.xml.MarshalException: Element with name Status passed to type null in incorrect order; expected element with name 'ApplicationKey' or any other optional element declared prior to it.{File: [not available]; line: 3; column: 10}

Is this the same problem and if so, how do I work around it?

Thanks,

Ron


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

   http://xircles.codehaus.org/manage_email


Reply via email to