You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mirae-user@ws.apache.org by Javier Adorno <ja...@gmail.com> on 2007/04/26 14:55:59 UTC

Fwd: deserialization problem with MIRAE

Hi guys, I have a Web Service and I'm using MIRAE to consume it.
When I use it with a method that returns only one parameter I have no
problem but when the returned value is an object I get a parser error.
My WSDL contains the ordered structure of the types contained in the
returned object but the web service (Axis) replies unordered and I see that
the MXParse throws an exception.
It can't deserialize the object because the types are not in the same order
as it expects.
I don't have the problem with .NET and Java clients, or clients from other
implementations of J2ME.
Below is the error.
Is there a way workaround this constraint in MIRAE?

Thanks in advance.
Kind regards.

Javier Adorno

Error
"ParseError at [row,col]:[1,320]\nMessage: expected event START_ELEMENT with
name 'id' and with namespace ' http://com.abcware.yacare.preventa.srv' but
got name 'codCliente' (position:  seen ...<findByIdReturn><codCliente>...
@1:320)"

Extract from WSDL - Object definition
      <xsd:complexType name="PedEncDto">
        <xsd:annotation>
          <xsd:documentation />
        </xsd:annotation>
        <xsd:all>
          <xsd:element name="id" nillable="true" type="xsd:long">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="codCliente" nillable="true" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="razSocial" nillable="true" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="tipDocumento" nillable="true"
type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="numDocumento" nillable="true"
type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="codVendedor" nillable="true" type="xsd:string">

            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="codCondicion" nillable="true"
type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="codConcepto" nillable="true" type="xsd:string">

            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="codMoneda" nillable="true" type="xsd:string">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="codDeposito" nillable="true" type="xsd:string">

            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
          <xsd:element name="pedDet" nillable="true"
type="impl:ArrayOfPedDetDto">
            <xsd:annotation>
              <xsd:documentation />
            </xsd:annotation>
          </xsd:element>
        </xsd:all>
      </xsd:complexType>


SOAP response
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<findByIdResponse xmlns="http://com.abcware.yacare.preventa.srv">
<findByIdReturn>
    <codCliente>1</codCliente>
    <codConcepto>2</codConcepto>
    <codCondicion>3</codCondicion>
    <codDeposito>4</codDeposito>
    <codMoneda>5</codMoneda>
    <codVendedor>6</codVendedor>
    <id>1</id>
    <numDocumento>8</numDocumento>
    <pedDet xsi:nil="true"/>
    <razSocial>9</razSocial>
    <tipDocumento>10</tipDocumento>
</findByIdReturn>
</findByIdResponse>
</soapenv:Body>
</soapenv:Envelope>