Soap encoded array of complex type, impossible to map?

Hello,
can anyone please tell me if the XI has problems (or is unable) to read from soap-encoded arrays of a complex type.
As far as I know this is conform to SOAP 1.1
We developed this webservice for a client, who says, he cannot map this kind of array in his XI.
Would it be better to do it this way ?
<complexType name="ActivityList">
  <sequence>
    <element name="ActivityEl" maxOccurs="unbounded" type="Activity"/>
  </sequence>
</complexType>
Excerpt of the WSDL:
    <wsdl:message name="getDataForPbnrResponse">
        <wsdl:part name="getDataForPbnrReturn" type="impl:ArrayOf_tns1_Activity"/>
    </wsdl:message>
        <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://ipslsv01vm02:9080/axis/services/QEC-Service">
            <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
            <complexType name="ArrayOf_tns1_Activity">
                <complexContent>
                    <restriction base="soapenc:Array">
                        <attribute ref="soapenc:arrayType" wsdl:arrayType="tns1:Activity[]"/>
                    </restriction>
                </complexContent>
            </complexType>
            <complexType name="ArrayOf_tns1_ActivityFeedback">
                <complexContent>
                    <restriction base="soapenc:Array">
                        <attribute ref="soapenc:arrayType" wsdl:arrayType="tns1:ActivityFeedback[]"/>
                    </restriction>
                </complexContent>
            </complexType>
        </schema>
Part ot the 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>
  <ns1:getDataForPbnrResponse soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="http://ipslsv01vm02:9080/axis/services/QEC-Service">
   <getDataForPbnrReturn xsi:type="soapenc:Array" soapenc:arrayType="ns3:Activity[7]" xmlns:ns2="http://www.w3.org/2002/12/soap-encoding" xmlns:ns3="urn:BeanService" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
    <item href="#id0"/>
    <item href="#id1"/>
    <item href="#id2"/>
    <item href="#id3"/>
    <item href="#id4"/>
    <item href="#id5"/>
    <item href="#id6"/>
   </getDataForPbnrReturn>
  </ns1:getDataForPbnrResponse>
  <multiRef id="id5" soapenc:root="0" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns4:Activity" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns4="urn:BeanService">
   <FIN xsi:type="xsd:string">---</FIN>
   <VIN xsi:type="xsd:string"></VIN>
cut -
   <ursache xsi:type="xsd:string"></ursache>
  </multiRef>
</soapenv:Body>
</soapenv:Envelope>
Thanks in advance!

I am having this issue as well.
From:
http://help.sap.com/saphelp_nw04/helpdata/en/43/ce993b45cb0a85e10000000a1553f6/frameset.htm
I see that:
The WSDL document in rpc-style format must also not use any soapenc:Array types; these are often used in SOAP code in documents with this format. soapenc:Array uses the tag <xsd:any>, which the Integration Builder editors or proxy generation either ignore or do not support.
You can replace soapenc:Array types with an equivalent <sequence>; see the WS-I  example under http://www.ws-i.org/Profiles/BasicProfile-1.0-2004-04-16.html#refinement16556272.
They give an example of what to use instead.
Of course I have been given a WSDL that has a message I need to map to that uses the enc:Array.
Has anyone else had this issue?  I need to map to a SOAP message to send to an external party.  I don't know what they are willing to change to support what I can do.  I changed the WSDL to use a sequence as below just to pull it in for now.
Thanks,
Eric

Similar Messages

  • Invoking WSDL with SOAP-Encoded Arrays get Errors

    Hi,
    i am invoking a web service through a partner link. This WSDL hava a SOAP-Encoded Arrays.
    <?xml version="1.0" encoding="utf-8"?>
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    name="IApWebServicesservice" targetNamespace="http://tempuri.org/"
    xmlns:tns="http://tempuri.org/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:ns1="urn:unApTypes" xmlns:ns2="urn:unApWebServicesInterface"
    xmlns:ns3="http://www.borland.com/namespaces/Types">
    <types>
    <xs:schema targetNamespace="urn:unApTypes" xmlns="urn:unApTypes">
    <xs:simpleType name="TApLanguages">
    <xs:restriction base="xs:string">
    <xs:enumeration value="alPortuguese"/>
    <xs:enumeration value="alEnglish"/>
    <xs:enumeration value="alSpanish"/>
    <xs:enumeration value="alPortuguesePT"/>
    <xs:enumeration value="alDeutsch"/>
    <xs:enumeration value="alItalian"/>
    <xs:enumeration value="alFrench"/>
    <xs:enumeration value="alRussian"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="TApFieldType">
    <xs:restriction base="xs:string">
    <xs:enumeration value="aftNotDefined"/>
    <xs:enumeration value="aftIntAutoInc"/>
    <xs:enumeration value="aftIntAuto"/>
    <xs:enumeration value="aftInteger"/>
    <xs:enumeration value="aftByteAuto"/>
    <xs:enumeration value="aftByte"/>
    <xs:enumeration value="aftWordAuto"/>
    <xs:enumeration value="aftWord"/>
    <xs:enumeration value="aftFloat"/>
    <xs:enumeration value="aftString"/>
    <xs:enumeration value="aftDate"/>
    <xs:enumeration value="aftTime"/>
    <xs:enumeration value="aftBoolean"/>
    <xs:enumeration value="aftBlob"/>
    <xs:enumeration value="aftImage"/>
    <xs:enumeration value="aftRichText"/>
    <xs:enumeration value="aftDateTime"/>
    <xs:enumeration value="aftMemo"/>
    <xs:enumeration value="aftFile"/>
    <xs:enumeration value="aftCurrency"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:schema>
    <xs:schema targetNamespace="urn:unApWebServicesInterface"
    xmlns="urn:unApWebServicesInterface">
    <xs:import namespace="http://www.borland.com/namespaces/Types"/>
    <xs:complexType name="TWSTransactionParams">
    <xs:sequence>
    <xs:element name="Fields" type="ns2:TWSTransactionHeaderFieldsArray"/>
    <xs:element name="Reserved" type="ns2:TWSTransactionParams"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSTransactionHeaderFieldsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionHeaderFields[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSTransactionHeaderFields">
    <xs:sequence>
    <xs:element name="Reserved" type="ns2:TWSTransactionHeaderFields"/>
    <xs:element name="FieldCaption" type="xs:string"/>
    <xs:element name="FieldId" type="xs:int"/>
    <xs:element name="GroupId" type="xs:int"/>
    <xs:element name="GroupCaption" type="xs:string"/>
    <xs:element name="Required" type="xs:boolean"/>
    <xs:element name="DataType" type="xs:int"/>
    <xs:element name="Mask" type="xs:string"/>
    <xs:element name="FieldLength" type="xs:int"/>
    <xs:element name="LookupName" type="xs:string"/>
    <xs:element name="PrimaryKey" type="xs:int"/>
    <xs:element name="Language" type="xs:string"/>
    <xs:element name="ReadOnly" type="xs:boolean"/>
    <xs:element name="LiteralMicroHelp" type="xs:string"/>
    <xs:element name="ExceptReadOnlyTransactions" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSTransactionExecuteParamArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionExecuteParam[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSTransactionExecuteParam">
    <xs:sequence>
    <xs:element name="Id" type="xs:int"/>
    <xs:element name="Value" type="xs:anyType"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    <xs:element name="FieldName" type="xs:string"/>
    <xs:element name="ClientFieldName" type="xs:string"/>
    <xs:element name="FieldSize" type="xs:int"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSTransactionToExecuteArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionToExecute[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSTransactionToExecute">
    <xs:sequence>
    <xs:element name="TransactionId" type="xs:int"/>
    <xs:element name="Params" type="ns2:TWSTransactionExecuteParamArray"/>
    <xs:element name="LanguageId" type="ns1:TApLanguages"/>
    <xs:element name="EditionType" type="xs:int"/>
    <xs:element name="IntegrationMode" type="xs:int"/>
    <xs:element name="Scope" type="ns3:TIntegerDynArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryParams">
    <xs:sequence>
    <xs:element name="Reserved" type="ns2:TWSQueryParams"/>
    <xs:element name="Fields" type="ns2:TWSQueryHeaderFieldsArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryHeaderFieldsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryHeaderFields[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryHeaderFields">
    <xs:sequence>
    <xs:element name="Reserved" type="ns2:TWSQueryHeaderFields"/>
    <xs:element name="FieldCaption" type="xs:string"/>
    <xs:element name="ParamType" type="xs:int"/>
    <xs:element name="ParamName" type="xs:string"/>
    <xs:element name="Mask" type="xs:string"/>
    <xs:element name="DefaultValue" type="xs:anyType"/>
    <xs:element name="Required" type="xs:boolean"/>
    <xs:element name="GroupId" type="xs:int"/>
    <xs:element name="GroupCaption" type="xs:string"/>
    <xs:element name="Hint" type="xs:string"/>
    <xs:element name="FindInList" type="xs:boolean"/>
    <xs:element name="UseValueList" type="xs:boolean"/>
    <xs:element name="ValueList" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteParamArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteParam[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteParam">
    <xs:sequence>
    <xs:element name="Value" type="xs:string"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    <xs:element name="ParamName" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteResults">
    <xs:sequence>
    <xs:element name="Fields" type="ns2:TWSQueryExecuteFieldsArray"/>
    <xs:element name="Records" type="ns2:TWSQueryExecuteRecordsArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteFieldsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteField[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteRecordsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteRecord[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteField">
    <xs:sequence>
    <xs:element name="FieldName" type="xs:string"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    <xs:element name="FieldType" type="xs:int"/>
    <xs:element name="Mask" type="xs:string"/>
    <xs:element name="Length" type="xs:int"/>
    <xs:element name="Decimals" type="xs:int"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteRecord">
    <xs:sequence>
    <xs:element name="Values" type="ns2:TWSQueryExecuteValuesArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteValuesArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteValue[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteValue">
    <xs:sequence>
    <xs:element name="Value" type="xs:string"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    <xs:schema targetNamespace="http://www.borland.com/namespaces/Types"
    xmlns="http://www.borland.com/namespaces/Types">
    <xs:import namespace="urn:unApTypes"/>
    <xs:complexType name="TIntegerDynArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType" n1:arrayType="xs:int[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    </xs:schema>
    </types>
    <message name="GetTransactions0Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="Transactions" type="xs:string"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    </message>
    <message name="GetTransactions0Response">
    <part name="Transactions" type="xs:string"/>
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="GetParameters1Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="TransactionId" type="xs:int"/>
    <part name="Params" type="ns2:TWSTransactionParams"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    <part name="EditionType" type="xs:int"/>
    </message>
    <message name="GetParameters1Response">
    <part name="Params" type="ns2:TWSTransactionParams"/>
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="ExecuteTransaction2Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="TransactionId" type="xs:int"/>
    <part name="Params" type="ns2:TWSTransactionExecuteParamArray"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    <part name="EditionType" type="xs:int"/>
    <part name="IntegrationMode" type="xs:int"/>
    <part name="Scope" type="ns3:TIntegerDynArray"/>
    <part name="KeyId" type="xs:int"/>
    </message>
    <message name="ExecuteTransaction2Response">
    <part name="Error" type="xs:string"/>
    <part name="KeyId" type="xs:int"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="ExecuteTransactions3Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="Lote" type="xs:int"/>
    <part name="Error" type="xs:string"/>
    <part name="Transactions" type="ns2:TWSTransactionToExecuteArray"/>
    </message>
    <message name="ExecuteTransactions3Response">
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="GetQueryParameters4Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="QueryId" type="xs:int"/>
    <part name="Params" type="ns2:TWSQueryParams"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    </message>
    <message name="GetQueryParameters4Response">
    <part name="Params" type="ns2:TWSQueryParams"/>
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="QueryExecute5Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="QueryId" type="xs:int"/>
    <part name="Params" type="ns2:TWSQueryExecuteParamArray"/>
    <part name="Error" type="xs:string"/>
    <part name="Results" type="ns2:TWSQueryExecuteResults"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    </message>
    <message name="QueryExecute5Response">
    <part name="Error" type="xs:string"/>
    <part name="Results" type="ns2:TWSQueryExecuteResults"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <portType name="IApWebServices">
    <operation name="GetTransactions">
    <input message="tns:GetTransactions0Request"/>
    <output message="tns:GetTransactions0Response"/>
    </operation>
    <operation name="GetParameters">
    <input message="tns:GetParameters1Request"/>
    <output message="tns:GetParameters1Response"/>
    </operation>
    <operation name="ExecuteTransaction">
    <input message="tns:ExecuteTransaction2Request"/>
    <output message="tns:ExecuteTransaction2Response"/>
    </operation>
    <operation name="ExecuteTransactions">
    <input message="tns:ExecuteTransactions3Request"/>
    <output message="tns:ExecuteTransactions3Response"/>
    </operation>
    <operation name="GetQueryParameters">
    <input message="tns:GetQueryParameters4Request"/>
    <output message="tns:GetQueryParameters4Response"/>
    </operation>
    <operation name="QueryExecute">
    <input message="tns:QueryExecute5Request"/>
    <output message="tns:QueryExecute5Response"/>
    </operation>
    </portType>
    <binding name="IApWebServicesbinding" type="tns:IApWebServices">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="GetTransactions">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#GetTransactions"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="GetParameters">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#GetParameters"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="ExecuteTransaction">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#ExecuteTransaction"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="ExecuteTransactions">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#ExecuteTransactions"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="GetQueryParameters">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#GetQueryParameters"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="QueryExecute">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#QueryExecute"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    </binding>
    <service name="IApWebServicesservice">
    <port name="IApWebServicesPort" binding="tns:IApWebServicesbinding">
    <soap:address location="http://200.189.164.78:7002/soap/IApWebServices"/>
    </port>
    </service>
    </definitions>
    When I try to send a message to this WebService I can´t sending type TWSTransactionParams.
    Here is my code:
    <assign name="TEST">
    <bpelx:append>
    <bpelx:from expression="'******'"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="UserName"/>
    </bpelx:append>
    <bpelx:append>
    <bpelx:from expression="'*****'"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="Pass"/>
    </bpelx:append>
    <bpelx:append>
    <bpelx:from expression="'29902'"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="TransactionId"/>
    </bpelx:append>
    <bpelx:append>
    <bpelx:from expression="'alPortuguese'"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="LanguageId"/>
    </bpelx:append>
    <bpelx:append>
    <bpelx:from expression="0"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="EditionType"/>
    </bpelx:append>
    <bpelx:append>
    <bpelx:from expression="0"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="IntegrationMode"/>
    </bpelx:append>
    <bpelx:append>
    <bpelx:from expression="0"/>
    <bpelx:to variable="EnviarWebserviceApData_InputVariable"
    part="KeyId"/>
    </bpelx:append>
    </assign>
    But, I don´t know how I have to pass the Array. I found this documetation on oracle website
    \http://download.oracle.com/docs/cd/E15523_01/integration.1111/e10224/bp_manipdoc.htm#sthref550
    But i can´t construct the XML message more manually.
    Any help in this regard is highly appreciated.

    Yes, you are rigth. I read this documentation to.
    I can do a workaroud and the process BPEL can understand. I will place my WSDL below and what i changed:
    WSDL:
    <?xml version="1.0" encoding="utf-8"?>
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    name="IApWebServicesservice" targetNamespace="http://tempuri.org/"
    xmlns:tns="http://tempuri.org/"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:ns1="urn:unApTypes" xmlns:ns2="urn:unApWebServicesInterface"
    xmlns:ns3="http://www.borland.com/namespaces/Types">
    <types>
    <xs:schema targetNamespace="urn:unApTypes" xmlns="urn:unApTypes">
    <xs:simpleType name="TApLanguages">
    <xs:restriction base="xs:string">
    <xs:enumeration value="alPortuguese"/>
    <xs:enumeration value="alEnglish"/>
    <xs:enumeration value="alSpanish"/>
    <xs:enumeration value="alPortuguesePT"/>
    <xs:enumeration value="alDeutsch"/>
    <xs:enumeration value="alItalian"/>
    <xs:enumeration value="alFrench"/>
    <xs:enumeration value="alRussian"/>
    </xs:restriction>
    </xs:simpleType>
    <xs:simpleType name="TApFieldType">
    <xs:restriction base="xs:string">
    <xs:enumeration value="aftNotDefined"/>
    <xs:enumeration value="aftIntAutoInc"/>
    <xs:enumeration value="aftIntAuto"/>
    <xs:enumeration value="aftInteger"/>
    <xs:enumeration value="aftByteAuto"/>
    <xs:enumeration value="aftByte"/>
    <xs:enumeration value="aftWordAuto"/>
    <xs:enumeration value="aftWord"/>
    <xs:enumeration value="aftFloat"/>
    <xs:enumeration value="aftString"/>
    <xs:enumeration value="aftDate"/>
    <xs:enumeration value="aftTime"/>
    <xs:enumeration value="aftBoolean"/>
    <xs:enumeration value="aftBlob"/>
    <xs:enumeration value="aftImage"/>
    <xs:enumeration value="aftRichText"/>
    <xs:enumeration value="aftDateTime"/>
    <xs:enumeration value="aftMemo"/>
    <xs:enumeration value="aftFile"/>
    <xs:enumeration value="aftCurrency"/>
    </xs:restriction>
    </xs:simpleType>
    </xs:schema>
    <xs:schema targetNamespace="urn:unApWebServicesInterface"
    xmlns="urn:unApWebServicesInterface">
    <xs:import namespace="http://www.borland.com/namespaces/Types"/>
    <xs:complexType name="TWSTransactionParams">
    <xs:sequence>
    <xs:element name="Fields" type="ns2:TWSTransactionHeaderFieldsArray"/>
    <xs:element name="Reserved" type="ns2:TWSTransactionParams"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSTransactionHeaderFieldsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionHeaderFields[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSTransactionHeaderFields">
    <xs:sequence>
    <xs:element name="Reserved" type="ns2:TWSTransactionHeaderFields"/>
    <xs:element name="FieldCaption" type="xs:string"/>
    <xs:element name="FieldId" type="xs:int"/>
    <xs:element name="GroupId" type="xs:int"/>
    <xs:element name="GroupCaption" type="xs:string"/>
    <xs:element name="Required" type="xs:boolean"/>
    <xs:element name="DataType" type="xs:int"/>
    <xs:element name="Mask" type="xs:string"/>
    <xs:element name="FieldLength" type="xs:int"/>
    <xs:element name="LookupName" type="xs:string"/>
    <xs:element name="PrimaryKey" type="xs:int"/>
    <xs:element name="Language" type="xs:string"/>
    <xs:element name="ReadOnly" type="xs:boolean"/>
    <xs:element name="LiteralMicroHelp" type="xs:string"/>
    <xs:element name="ExceptReadOnlyTransactions" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSTransactionExecuteParamArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionExecuteParam[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSTransactionExecuteParam">
    <xs:sequence>
    <xs:element name="Id" type="xs:int"/>
    <xs:element name="Value" type="xs:anyType"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    <xs:element name="FieldName" type="xs:string"/>
    <xs:element name="ClientFieldName" type="xs:string"/>
    <xs:element name="FieldSize" type="xs:int"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSTransactionToExecuteArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionToExecute[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSTransactionToExecute">
    <xs:sequence>
    <xs:element name="TransactionId" type="xs:int"/>
    <xs:element name="Params" type="ns2:TWSTransactionExecuteParamArray"/>
    <xs:element name="LanguageId" type="ns1:TApLanguages"/>
    <xs:element name="EditionType" type="xs:int"/>
    <xs:element name="IntegrationMode" type="xs:int"/>
    <xs:element name="Scope" type="ns3:TIntegerDynArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryParams">
    <xs:sequence>
    <xs:element name="Reserved" type="ns2:TWSQueryParams"/>
    <xs:element name="Fields" type="ns2:TWSQueryHeaderFieldsArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryHeaderFieldsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryHeaderFields[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryHeaderFields">
    <xs:sequence>
    <xs:element name="Reserved" type="ns2:TWSQueryHeaderFields"/>
    <xs:element name="FieldCaption" type="xs:string"/>
    <xs:element name="ParamType" type="xs:int"/>
    <xs:element name="ParamName" type="xs:string"/>
    <xs:element name="Mask" type="xs:string"/>
    <xs:element name="DefaultValue" type="xs:anyType"/>
    <xs:element name="Required" type="xs:boolean"/>
    <xs:element name="GroupId" type="xs:int"/>
    <xs:element name="GroupCaption" type="xs:string"/>
    <xs:element name="Hint" type="xs:string"/>
    <xs:element name="FindInList" type="xs:boolean"/>
    <xs:element name="UseValueList" type="xs:boolean"/>
    <xs:element name="ValueList" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteParamArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteParam[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteParam">
    <xs:sequence>
    <xs:element name="Value" type="xs:string"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    <xs:element name="ParamName" type="xs:string"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteResults">
    <xs:sequence>
    <xs:element name="Fields" type="ns2:TWSQueryExecuteFieldsArray"/>
    <xs:element name="Records" type="ns2:TWSQueryExecuteRecordsArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteFieldsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteField[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteRecordsArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteRecord[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteField">
    <xs:sequence>
    <xs:element name="FieldName" type="xs:string"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    <xs:element name="FieldType" type="xs:int"/>
    <xs:element name="Mask" type="xs:string"/>
    <xs:element name="Length" type="xs:int"/>
    <xs:element name="Decimals" type="xs:int"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteRecord">
    <xs:sequence>
    <xs:element name="Values" type="ns2:TWSQueryExecuteValuesArray"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteValuesArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSQueryExecuteValue[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    <xs:complexType name="TWSQueryExecuteValue">
    <xs:sequence>
    <xs:element name="Value" type="xs:string"/>
    <xs:element name="Reserved" type="ns1:TApFieldType"/>
    </xs:sequence>
    </xs:complexType>
    </xs:schema>
    <xs:schema targetNamespace="http://www.borland.com/namespaces/Types"
    xmlns="http://www.borland.com/namespaces/Types">
    <xs:import namespace="urn:unApTypes"/>
    <xs:complexType name="TIntegerDynArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType" n1:arrayType="xs:int[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    </xs:schema>
    </types>
    <message name="GetTransactions0Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="Transactions" type="xs:string"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    </message>
    <message name="GetTransactions0Response">
    <part name="Transactions" type="xs:string"/>
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="GetParameters1Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="TransactionId" type="xs:int"/>
    <part name="Params" type="ns2:TWSTransactionParams"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    <part name="EditionType" type="xs:int"/>
    </message>
    <message name="GetParameters1Response">
    <part name="Params" type="ns2:TWSTransactionParams"/>
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="ExecuteTransaction2Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="TransactionId" type="xs:int"/>
    <part name="Params" type="ns2:TWSTransactionExecuteParamArray"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    <part name="EditionType" type="xs:int"/>
    <part name="IntegrationMode" type="xs:int"/>
    <part name="Scope" type="ns3:TIntegerDynArray"/>
    <part name="KeyId" type="xs:int"/>
    </message>
    <message name="ExecuteTransaction2Response">
    <part name="Error" type="xs:string"/>
    <part name="KeyId" type="xs:int"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="ExecuteTransactions3Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="Lote" type="xs:int"/>
    <part name="Error" type="xs:string"/>
    <part name="Transactions" type="ns2:TWSTransactionToExecuteArray"/>
    </message>
    <message name="ExecuteTransactions3Response">
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="GetQueryParameters4Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="QueryId" type="xs:int"/>
    <part name="Params" type="ns2:TWSQueryParams"/>
    <part name="Error" type="xs:string"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    </message>
    <message name="GetQueryParameters4Response">
    <part name="Params" type="ns2:TWSQueryParams"/>
    <part name="Error" type="xs:string"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <message name="QueryExecute5Request">
    <part name="UserName" type="xs:string"/>
    <part name="Pass" type="xs:string"/>
    <part name="QueryId" type="xs:int"/>
    <part name="Params" type="ns2:TWSQueryExecuteParamArray"/>
    <part name="Error" type="xs:string"/>
    <part name="Results" type="ns2:TWSQueryExecuteResults"/>
    <part name="LanguageId" type="ns1:TApLanguages"/>
    </message>
    <message name="QueryExecute5Response">
    <part name="Error" type="xs:string"/>
    <part name="Results" type="ns2:TWSQueryExecuteResults"/>
    <part name="return" type="xs:boolean"/>
    </message>
    <portType name="IApWebServices">
    <operation name="GetTransactions">
    <input message="tns:GetTransactions0Request"/>
    <output message="tns:GetTransactions0Response"/>
    </operation>
    <operation name="GetParameters">
    <input message="tns:GetParameters1Request"/>
    <output message="tns:GetParameters1Response"/>
    </operation>
    <operation name="ExecuteTransaction">
    <input message="tns:ExecuteTransaction2Request"/>
    <output message="tns:ExecuteTransaction2Response"/>
    </operation>
    <operation name="ExecuteTransactions">
    <input message="tns:ExecuteTransactions3Request"/>
    <output message="tns:ExecuteTransactions3Response"/>
    </operation>
    <operation name="GetQueryParameters">
    <input message="tns:GetQueryParameters4Request"/>
    <output message="tns:GetQueryParameters4Response"/>
    </operation>
    <operation name="QueryExecute">
    <input message="tns:QueryExecute5Request"/>
    <output message="tns:QueryExecute5Response"/>
    </operation>
    </portType>
    <binding name="IApWebServicesbinding" type="tns:IApWebServices">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="GetTransactions">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#GetTransactions"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="GetParameters">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#GetParameters"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="ExecuteTransaction">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#ExecuteTransaction"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="ExecuteTransactions">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#ExecuteTransactions"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="GetQueryParameters">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#GetQueryParameters"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    <operation name="QueryExecute">
    <soap:operation soapAction="urn:unApWebServicesInterface-IApWebServices#QueryExecute"
    style="rpc"/>
    <input>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </input>
    <output>
    <soap:body use="encoded"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
    namespace="urn:unApWebServicesInterface-IApWebServices"/>
    </output>
    </operation>
    </binding>
    <service name="IApWebServicesservice">
    <port name="IApWebServicesPort" binding="tns:IApWebServicesbinding">
    <soap:address location="http://200.189.164.78:7002/soap/IApWebServices"/>
    </port>
    </service>
    </definitions>
    I changed this
    Original:
    <xs:complexType name="TWSTransactionExecuteParamArray">
    <xs:complexContent>
    <xs:restriction base="soapenc:Array">
    <xs:sequence/>
    <xs:attribute ref="soapenc:arrayType"
    n1:arrayType="ns2:TWSTransactionExecuteParam[]"
    xmlns:n1="http://schemas.xmlsoap.org/wsdl/"/>
    </xs:restriction>
    </xs:complexContent>
    </xs:complexType>
    Changed:
    <xs:complexType name="TWSTransactionExecuteParamArray">
    <xs:sequence>
    <xs:element type = "ns2:TWSTransactionExecuteParam" name = "TWSTransactionExecuteParam" minOccurs="0" maxOccurs="unbounded" nillable="true"/>
    </xs:sequence>
    </xs:complexType>
    In this way, I can invoking the WebServise with soapenc:arrayType.
    Thaks for anwsering.

  • After 10.1.3.3 migration, Invalid  soap/encoding/:Array' problem

    HI ,
    I have a BPEL process calling a external web service (which takes String as input and returns String[] as output). It is working fine with 10,1,2. When i tried to migrate to 10,1.3 (install 10.1.3.1 and upgrade that to 10.1.3.3 using the patch)project i got following error while compiling bpel module using Jdeveloper 10.1.3.3 (10.1.2 bpel is migrated to 10.1.3.3) .bpel is calling external webservice having <attribute ref="soapenc:arrayType" wsdl:arrayType="xsd:string[]" />
    Loading Graphics File...
    Done Loading.
    Validating Process...
    Done validating.
    Can not build schema 'http://schemas.xmlsoap.org/soap/encoding/' located at 'http://schemas.xmlsoap.org/soap/encoding/'
    Invalid reference: 'http://schemas.xmlsoap.org/soap/encoding/:Array'
    oracle.tip.tools.ide.common.xsdgrammar.SchemaGrammarException: Can not build schema 'http://schemas.xmlsoap.org/soap/encoding/' located at 'http://schemas.xmlsoap.org/soap/encoding/'
    Invalid reference: 'http://schemas.xmlsoap.org/soap/encoding/:Array'
    at oracle.tip.tools.ide.common.xsdgrammar.SchemaGrammarProvider.buildSchemas(SchemaGrammarProvider.java:202)
    at oracle.tip.tools.ide.common.xsdgrammar.GrammarInfo.getGrammars(GrammarInfo.java:859)
    at oracle.tip.tools.ide.common.xsdgrammar.GrammarInfo.createGrammarInfo(GrammarInfo.java:802)
    at oracle.tip.tools.ide.common.xsdgrammar.GrammarInfo.<init>(GrammarInfo.java:281)
    at oracle.tip.tools.ide.common.bpeldesigner.SchemaResolvedObj.buildResolvedDocument(SchemaResolvedObj.java:242)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.ExplorerTreeUtil.populateMessagePartItem(ExplorerTreeUtil.java:208)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.ExplorerTreeUtil.populateMessageParts(ExplorerTreeUtil.java:135)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.ExplorerTreeUtil.populateMessage(ExplorerTreeUtil.java:98)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.ExplorerTreeUtil.buildOperationNode(ExplorerTreeUtil.java:80)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.PLExplorerTreeNode.populateOperations(PLExplorerTreeNode.java:175)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.PLExplorerTreeNode.populateRoles(PLExplorerTreeNode.java:158)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.PLExplorerTreeNode.getChildNodes(PLExplorerTreeNode.java:80)
    at oracle.tip.tools.ide.pm.bpelgraph.editors.ExplorerTree$TreeExpansionHandler$1.run(ExplorerTree.java:6255)
    I don't know what exact the difference between the processing of ArrayType in 10.1.2 and 10.1.3
    can someone help me how to resolve this
    Regards
    ravi

    Hi Didier,
    I did some more experimenting and I think the problem is somewhere in skins.
    I downloaded "mycompany" and "limerone" skin from WebCenter page.
    Now the problem appears only if I use mycompany or limerone skin and only with firefox2.0.
    In JDeveloper visual editor after deleting oracle-desktop-10_1_3_X_0-en-ie-6-windows-s.css problem is solved and also with IE I have no problem. Also no problem if I use "oracle" skin with firefox2.0.
    please try it (new skins + FF) and you will see...
    thanks,
    Branislav

  • URGENT: Problem sending array of complex type data to webservice.

    Hi,
    I am writing an application in WebDynpo which needs to call External web service. This service has many complex data types. The function which I am trying to access needs some Complex data type array. When i checked the SOAP request i found that the namespace for the array type is getting blank values. Because of which SOAP response is giving exception.
    The SOAP request is as below. For the <maker> which is an array ,the xmlns:tns='' is generated.
    <mapImageOptions xsi:type='tns:MapImageOptions' xmlns:tns='http://www.themindelectric.com/package/com.esri.is.services.glue.v2.mapimage/'>
    <dataSource xsi:type='xs:string'>GDT.Streets.US</dataSource>
    <mapImageSize xsi:type='tns:MapImageSize'><width xsi:type='xs:int'>380</width><height xsi:type='xs:int'>500</height></mapImageSize>
    <mapImageFormat xsi:type='xs:string'>gif</mapImageFormat>
    <backgroundColor xsi:type='xs:string'>255,255,255</backgroundColor>
    <outputCoordSys xsi:type='tns:CoordinateSystem' xmlns:tns='http://www.themindelectric.com/package/com.esri.is.services.common.v2.geom/'>
    <projection xsi:type='xs:string'>4269</projection>
    <datumTransformation xsi:type='xs:string'>dx</datumTransformation>
    </outputCoordSys>
    <drawScaleBar xsi:type='xs:boolean'>false</drawScaleBar>
    <scaleBarPixelLocation xsi:nil='true' xsi:type='tns:PixelCoord'></scaleBarPixelLocation>
    <returnLegend xsi:type='xs:boolean'>false</returnLegend>
    <markers ns2:arrayType='tns:MarkerDescription[1]' xmlns:tns='' xmlns:ns2='http://schemas.xmlsoap.org/soap/encoding/'>
    <item xsi:type='tns:MarkerDescription'><name xsi:type='xs:string'></name>
    <iconDataSource xsi:type='xs:string'></iconDataSource><color xsi:type='xs:string'></color>
    <label xsi:type='xs:string'></label>
    <labelDescription xsi:nil='true' xsi:type='tns:LabelDescription'>
    </labelDescription><location xsi:type='tns:Point' xmlns:tns='http://www.themindelectric.com/package/com.esri.is.services.common.v2.geom/'>
    <x xsi:type='xs:double'>33.67</x><y xsi:type='xs:double'>39.44</y>
    <coordinateSystem xsi:type='tns:CoordinateSystem'>
    <projection xsi:type='xs:string'>4269</projection>
    <datumTransformation xsi:type='xs:string'>dx</datumTransformation>
    </coordinateSystem></location></item>
    </markers><lines xsi:nil='true'>
    </lines><polygons xsi:nil='true'></polygons><circles xsi:nil='true'></circles><displayLayers xsi:nil='true'></displayLayers>
    </mapImageOptions>
    Another problem:
    If the webservice is having overloaded methods , it is generating error for the second overloaded method.The stub file itself contains statment as follow:
    Response = new();
    can anyone guide me on this?
    Thanks,
    Mital.

    I am having this issue as well.
    From:
    http://help.sap.com/saphelp_nw04/helpdata/en/43/ce993b45cb0a85e10000000a1553f6/frameset.htm
    I see that:
    The WSDL document in rpc-style format must also not use any soapenc:Array types; these are often used in SOAP code in documents with this format. soapenc:Array uses the tag <xsd:any>, which the Integration Builder editors or proxy generation either ignore or do not support.
    You can replace soapenc:Array types with an equivalent <sequence>; see the WS-I  example under http://www.ws-i.org/Profiles/BasicProfile-1.0-2004-04-16.html#refinement16556272.
    They give an example of what to use instead.
    Of course I have been given a WSDL that has a message I need to map to that uses the enc:Array.
    Has anyone else had this issue?  I need to map to a SOAP message to send to an external party.  I don't know what they are willing to change to support what I can do.  I changed the WSDL to use a sequence as below just to pull it in for now.
    Thanks,
    Eric

  • Bpel process returning array of complex type

    Hi, I have created a BPEL process which is returning a array of Officer class objects, I used following xsd for that.
    <?xml version="1.0" encoding="UTF-8"?>
    <schema attributeFormDefault="unqualified"
         elementFormDefault="qualified"
         targetNamespace="http://xmlns.oracle.com/RegistrationUpload_jws/RegistrationUpload/OfficerList"
         xmlns="http://www.w3.org/2001/XMLSchema">
         <element name="process">
              <complexType>
                   <sequence>
                        <element name="jobAssignmentType" type="string"/>
    <element name="officerLevelNum" type="string"/>
    <element name="applicationType" type="string"/>
    <element name="functionId" type="string"/>
    <element name="app_id_val">
    <complexType>
    <sequence>
    <element name="key" type="string"/>
    <element name="value" type="string"/>
    </sequence>
    </complexType>
    </element>
    <element name="dcConservationFlag" type="string"/>
                   </sequence>
              </complexType>
         </element>
         <element name="processResponse">
              <complexType>
                   <sequence>
    <element name="Officer" maxOccurs="unbounded" minOccurs="1">
    <complexType>
    <sequence>
    <element name="mainOfficer" type="string"/>
    <element name="mainOfficerID" type="string"/>
    <element name="coveringOfficer" type="string"/>
    <element name="coveringOfficerId" type="string"/>
    <element name="defaultOfficer" type="string"/>
    <element name="defaultOfficerId" type="string"/>
    <element name="matrixId" type="string"/>
    </sequence>
    </complexType>
    </element>
                   </sequence>
              </complexType>
         </element>
    </schema>*
    we can check the processResponse Element is output variable.
    please tell me how can i set values in this element and return (lets I have 4 value objects for officer class)
    I am using following code and its giving me null pointer exception. in my early program I can get the variable in the same way.
    try
    for(int i=1; i<4; i++)
    setVariableData("outputVariable","payload","/client:processResponse/client:Officer[1]/client:mainOfficer","abhi",true);
    catch(Exception e)
    System.out.println("error occured");
    I am using Hard code value "1" for above example, I have tried with dynamic value of "i" also.
    thanks
    Edited by: abhishek on Apr 27, 2011 2:33 AM
    Edited by: abhishek on Apr 27, 2011 2:34 AM

    Hi,
    My requirement is to retrieve those task which satisfying some input criteria. and that input criteria are in payload attribute of task.
    we can use ITaskQueryService API, for retrieving task list, but I am not able to see any function through which I can find my task based on payload attribute,
    Lets take a example
    I created a task with atribute functionID="ABC" (payload attribute). now i want to query the task list which have functionID attribute value "ABC".
    for this I have found some flex fields are there, but even not sure what flex fields are.
    still trying for the same.

  • BPEL PM supports Complex Type?

    In my BPEL process flow, I am trying to invoke a web service operation with Response message an array of Complex Type. When I tried to look the output of the operation from the debug mode of the BPEL Console, I got a message "Error:internal bug (#321) object:id0 not found in object store".
    The operation is defined as
    <wsdl:operation name="getEffects">
    <wsdlsoap:operation soapAction="" />
    <wsdl:input name="getEffectsRequest">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:IBCDS" use="encoded" />
    </wsdl:input>
    <wsdl:output name="getEffectsResponse">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:IBCDS" use="encoded" />
    </wsdl:output>
    </wsdl:operation>
    the Complex Types are defined as
    <complexType name="Effect">
    <sequence>
    <element name="ID" nillable="true" type="xsd:string" />
    <element name="classification" nillable="true" type="xsd:string" />
    <element name="coe" type="xsd:byte" />
    <element name="com" type="xsd:byte" />
    <element name="country" nillable="true" type="xsd:string" />
    <element name="dateMod" nillable="true" type="xsd:dateTime" />
    <element name="deClassDate" nillable="true" type="xsd:dateTime" />
    <element name="def" type="xsd:byte" />
    <element name="description" nillable="true" type="xsd:string" />
    <element name="det" type="xsd:byte" />
    <element name="infl" type="xsd:byte" />
    <element name="name" nillable="true" type="xsd:string" />
    <element name="reliability" type="xsd:double" />
    <element name="tra" type="xsd:byte" />
    </sequence>
    </complexType>
    <complexType name="ArrayOfEffect">
    <complexContent>
    <restriction base="soapenc:Array">
    <attribute ref="soapenc:arrayType" wsdl:arrayType="impl:Effect[]" />
    </restriction>
    </complexContent>
    </complexType>
    and the input/output for the operation are define as
    <wsdl:message name="getEffectsRequest" />
    <wsdl:message name="getEffectsResponse">
    <wsdl:part name="getEffectsReturn" type="impl:ArrayOfEffect" />
    </wsdl:message>
    My project involves lots of Complex Type data, I like to know if the current BPEL PM support the Complex Type that I just described?

    Hi June,
    BPEL PM Supports complex type return. I am not why you see this error in debugger. can you enable the bpel domain debug (under BPEL Console-->Manage Domain-->Logging) and send us the debug log? Is it possible to send your process (including wsdl + xsd) to our support email at [email protected]?

  • RPC/SOAP-Encoded Web Service with Workshop

    Is there anyway to create a RPC/SOAP-Encoded Web Service with Workshop ? There is an "encoding" attribute in the autotype ant task but no corresponding properties in Workshop.

    Hi,
    Thanks for the reference.
    I have checked both in the wsdl and the Soap message,
    rpc property effectively means rpc/encoded. Now that
    would say that RPC/Literal is not supported ?
    Here are what the messages looks like with rpc and
    document properties
    Thanks all for making this clear.
    document wlw property = Document/Literal
    <SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <ns:getEmployeeResponse xmlns:ns="http://www.openuri.org/">
    <ns:getEmployeeResult xmlns:ns="http://www.openuri.org/">
    <ns:Address xmlns:ns="http://www.openuri.org/">
    <ns:City xmlns:ns="http://www.openuri.org/">Luxembourg</ns:City>
    <ns:Country xmlns:ns="http://www.openuri.org/">LU</ns:Country>
    <ns:Number xmlns:ns="http://www.openuri.org/">2</ns:Number>
    <ns:PostCode xmlns:ns="http://www.openuri.org/">1000</ns:PostCode>
    <ns:Street xmlns:ns="http://www.openuri.org/">Bld. Royal</ns:Street>
    </ns:Address>
    <ns:Age xmlns:ns="http://www.openuri.org/">20</ns:Age>
    <ns:Name xmlns:ns="http://www.openuri.org/">Dupont</ns:Name>
    <ns:FirstNames xmlns:ns="http://www.openuri.org/">
    <ns:String xmlns:ns="http://www.openuri.org/">Jean</ns:String>
    <ns:String xmlns:ns="http://www.openuri.org/">Jacques</ns:String>
    </ns:FirstNames>
    </ns:getEmployeeResult>
    </ns:getEmployeeResponse>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    rpc wlw property = RPC/Soap-Encoded
    <SOAP-ENV:Envelope xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <ns:getEmployeeResponse xmlns:ns="http://www.openuri.org/">
    <getEmployeeResult xmlns:s="http://www.openuri.org/encodedTypes" xsi:type="s:Employee">
    <Address xsi:type="s:Address">
    <City xsi:type="xsd:string">Luxembourg</City>
    <Country xsi:type="xsd:string">LU</Country>
    <Number xsi:type="xsd:int">2</Number>
    <PostCode xsi:type="xsd:string">1000</PostCode>
    <Street xsi:type="xsd:string">Bld. Royal</Street>
    </Address>
    <Age xsi:type="xsd:int">20</Age>
    <Name xsi:type="xsd:string">Dupont</Name>
    <FirstNames SOAP-ENC:arrayType="xsd:string[2]" xsi:type="SOAP-ENC:Array">
    <String xsi:type="xsd:string">Jean</String>
    <String xsi:type="xsd:string">Jacques</String>
    </FirstNames>
    </getEmployeeResult>
    </ns:getEmployeeResponse>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Message was edited by phcollignon at Aug 27, 2004 2:54 AM

  • Using the Soap Encoding schema within an XSD

    Hi,
    I am trying to create some XSDs based on the types from the auto-generated WSDLs in JDeveloper. However, I find that while the Array type works fine in the WSDL, I cannot seem to get it validate correctly in my XML schemas, possibly due to some namespace error.
    The current code in the XSD is given as:
    <xsd:schema
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
    <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
    <xsd:import namespace="http://schemas.xmlsoap.org/wsdl/"/>
    <xsd:complexType name="VesselQueryResult">
    <xsd:all>
    <xsd:element name="vesselNames" type="ArrayOfjava_lang_String"/>
    </xsd:all>
    </xsd:complexType>
    <xsd:complexType name="ArrayOfjava_lang_String">
    <xsd:complexContent>
    <xsd:restriction base="SOAP-ENC:Array">
    <xsd:attribute ref="SOAP-ENC:arrayType" wsdl:arrayType="xsd:string[]"/>
    </xsd:restriction>
    </xsd:complexContent>
    </xsd:complexType>
    When I tried to add this XSD using as a user schema, however, below validation error is being displayed:
    Error: Line 0, Column 0: Invalid reference: 'http://schemas.xmlsoap.org/soap/encoding/:Array'
    I tried to qualify the SOAP-ENC namespace with the schemaLocation, but another error was displayed:
    <xsd:import namespace="http://schemas.xmlsoap.org/soap/encoding/"
    schemaLocation="http://schemas.xmlsoap.org/soap/encoding/"/>
    oracle.xml.parser.schema.XSDException: Server returned HTTP response code: 407 for URL: http://schemas.xmlsoap.org/soap/encoding/
    I am wondering how JDeveloper supports the SOAP-ENC schema for use in XSDs. Do I need to add the Soap Encoding schema as a user schema, or is there a way I might reference it similar to the way that auto-generated WSDLs seem to deal with it? Any information regarding this would be greatly appreciated.
    Thank you and regards.

    I deleted the two lines of coding below:
    utl_http.set_proxy('www-proxy', NULL);
    utl_http.set_persistent_conn_support(TRUE);
    and then I set the utl_http.set_persistent_conn_support() to False to get that error message. Seems like the website in question doesnt have the webservice anymore because the error has to do with the parsing of the WSDL file.... which probrably doesnt exist.
    Im just trying to get a working example of using a third party webservice to return a value to be displayed in the database.... know of any good examples? The ones im using seem to be pretty out dated... the barnes and nobles example just times out....

  • How to get the array of Complex when call a webserivce method it's return an array of user define data struct?

    When call a webservice opreation, it returns an array of complex type, sure, the calling is successed,  but i don't know how to get the return values,
    I have tried use Pendingcall.response & Pendingcall.getOutPutValues() in Pendingcall.onResult event function...
    Waiting....

    Flash Lite doesn't fully support webservices, so you will find it difficult to use the full api set.
    I suggest that you use SWX (swxformat.org) or simply HTTP requests for transactions.
    We have a tutorial on use with ColdFusion here:
    http://vimeo.com/6829083
    Mark

  • Using XSLT "adapter" for invoking a WS with SOAP-ENC array type param.

    Hello,
    I had to write a BPEL process that calls inside it a web service which has as an input an array parameter and as an output, also an array. I already know that BPEL has limitations regarding using the SOAP-ENC Array type. I tried to rewrite the web service in order to use a literal encoding of the array parameters (using "maxOccurs" attribute), but unfortunately, the OC4J container 9.0.4 that I have to use doesn't allow this. It only allows the SOAP-ENC types for array types.
    I started to write, inside the BPEL process, some "adapters" XSLT transformations before and after the invoking of the web service that uses SOAP-ENC array. The XSLT transformation before the web service invoking will translate the input array parameter defined with no SOAP encoding types (based on "maxOccurs" attribute) into a SOAP-ENC type, as it is expected by the web service. The XSLT transformation after the web service invoking will translate the returned array SOAP-ENC type into a data type defined with no SOAP encoding types (based on "maxOccurs" attribute).
    The approach is pretty hairy, from the XSLT point of view and it introduces a supplementary delay due to the XSLT processing needed, but it works. The only think is that when I build the service, I obtain the following error message:
    [bpelc] [Error] GCDBWebservice?WSDL:30:42: src-resolve.4.2: Error resolving component 'SOAP-ENC:Array'. It was detected that 'SOAP-ENC:Array' is in namespace 'http://schemas.xmlsoap.org/soap/encoding/', but components from this namespace are not referenceable from schema ...
    But in spite of this, the process is built and deployed successfully and I was able to run it from the BPEL console.
    Do you think that this approach could hide some other future problems that I can't see in this moment?
    Thanks,
    Marinel

    Please help me for this.
    I am new to Webservices and SOAP.
    I am facing problem when i am calling a "add" method in the .net webservices with the following code but it gives correct result when i'm calling the "HelloWorld" method present in the webservice.
    I think it will happening because, when i'm going to pass any parameter to the "add method , it does not process it.It will return me 0.
    Please help me in this.
    The code is:
    import java.io.*;
    import java.util.*;
    import java.net.*;
    import org.w3c.dom.*;
    import org.apache.soap.util.xml.*;
    import org.apache.soap.*;
    import org.apache.soap.encoding.*;
    import org.apache.soap.encoding.soapenc.*;
    import org.apache.soap.encoding.literalxml.*;
    import org.apache.soap.rpc.*;
    import org.apache.soap.transport.http.SOAPHTTPConnection;
    import org.apache.soap.transport.*;
    import org.apache.soap.messaging.*;
    import org.apache.xerces.parsers.*;
    import org.apache.xerces.dom.DocumentImpl;
    public class testClient {
    public static void main(String[] args) throws Exception {
    URL url = new URL ("http://Eurotele-it3/webService1/Service1.asmx");
    //Map the Types.
    SOAPMappingRegistry smr = new SOAPMappingRegistry ();
    StringDeserializer sd = new StringDeserializer ();
    smr.mapTypes(Constants.NS_URI_SOAP_ENC,new QName("http://Eurotele-it3/WebService1/Service1","addResult"),Integer.class,null,sd);
    // create the transport and set parameters
    SOAPHTTPConnection st = new SOAPHTTPConnection();
    // build the call.
    Call call = new Call();
    call.setSOAPTransport(st);
    call.setSOAPMappingRegistry(smr);
    call.setTargetObjectURI ("http://Eurotele-it3/WebService1/Service1/add");
    call.setMethodName("add");
    //call.setEncodingStyleURI("http://schemas.xmlsoap.org/soap/encoding/");
    call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
    Vector params = new Vector();
    params.addElement(new Parameter("x",Integer.class,"10",null));
    params.addElement(new Parameter("y",Integer.class,"20",null));
    call.setParams(params);
    Response resp = null;
    try {
    resp = call.invoke (url,"http://Eurotele-it3/WebService1/Service1/add");
    catch (SOAPException e) {
    System.err.println("Caught SOAPException (" + e.getFaultCode () + "): " +e.getMessage ());
    return;
    // check response
    if (resp != null && !resp.generatedFault()) {
    Parameter ret =resp.getReturnValue();
    Object value =ret.getValue();
    System.out.println ("Answer--> " +value );
    else {
    Fault fault = resp.getFault ();
    System.err.println ("Generated fault: ");
    System.out.println (" Fault Code = " + fault.getFaultCode());
    System.out.println (" Fault String = " + fault.getFaultString());
    This is the complete WSDL format:
    <?xml version="1.0" encoding="utf-8" ?>
    - <wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://Eurotele-it3/WebService1/Service1" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="http://Eurotele-it3/WebService1/Service1" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
    - <wsdl:types>
    - <s:schema elementFormDefault="qualified" targetNamespace="http://Eurotele-it3/WebService1/Service1">
    - <s:element name="HelloWorld">
    <s:complexType />
    </s:element>
    - <s:element name="HelloWorldResponse">
    - <s:complexType>
    - <s:sequence>
    <s:element minOccurs="1" maxOccurs="1" name="HelloWorldResult" type="s:int" />
    </s:sequence>
    </s:complexType>
    </s:element>
    - <s:element name="add">
    - <s:complexType>
    - <s:sequence>
    <s:element minOccurs="1" maxOccurs="1" name="x" type="s:int" />
    <s:element minOccurs="1" maxOccurs="1" name="y" type="s:int" />
    </s:sequence>
    </s:complexType>
    </s:element>
    - <s:element name="addResponse">
    - <s:complexType>
    - <s:sequence>
    <s:element minOccurs="1" maxOccurs="1" name="addResult" type="s:int" />
    </s:sequence>
    </s:complexType>
    </s:element>
    </s:schema>
    </wsdl:types>
    - <wsdl:message name="HelloWorldSoapIn">
    <wsdl:part name="parameters" element="tns:HelloWorld" />
    </wsdl:message>
    - <wsdl:message name="HelloWorldSoapOut">
    <wsdl:part name="parameters" element="tns:HelloWorldResponse" />
    </wsdl:message>
    - <wsdl:message name="addSoapIn">
    <wsdl:part name="parameters" element="tns:add" />
    </wsdl:message>
    - <wsdl:message name="addSoapOut">
    <wsdl:part name="parameters" element="tns:addResponse" />
    </wsdl:message>
    - <wsdl:portType name="Service1Soap">
    - <wsdl:operation name="HelloWorld">
    <wsdl:input message="tns:HelloWorldSoapIn" />
    <wsdl:output message="tns:HelloWorldSoapOut" />
    </wsdl:operation>
    - <wsdl:operation name="add">
    <wsdl:input message="tns:addSoapIn" />
    <wsdl:output message="tns:addSoapOut" />
    </wsdl:operation>
    </wsdl:portType>
    - <wsdl:binding name="Service1Soap" type="tns:Service1Soap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    - <wsdl:operation name="HelloWorld">
    <soap:operation soapAction="http://Eurotele-it3/WebService1/Service1/HelloWorld" style="document" />
    - <wsdl:input>
    <soap:body use="literal" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" />
    </wsdl:output>
    </wsdl:operation>
    - <wsdl:operation name="add">
    <soap:operation soapAction="http://Eurotele-it3/WebService1/Service1/add" style="document" />
    - <wsdl:input>
    <soap:body use="literal" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" />
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    - <wsdl:service name="Service1">
    <documentation xmlns="http://schemas.xmlsoap.org/wsdl/" />
    - <wsdl:port name="Service1Soap" binding="tns:Service1Soap">
    <soap:address location="http://eurotele-it3/webService1/Service1.asmx" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>

  • Complex types with single array type element, marshaling exception

    For our JAXRPC web service, we have a complex type, as follows:
    <xs:complexType name = "SomeFault">
    <xs:sequence>
    <xs:element name = "errorMessages" type="some:ErrorMessageWSType" minOccurs="0" maxOccurs="unbounded" />
    </xs:sequence>
    </xs:complexType>
    <xs:simpleType name = "ErrorMessageWSType">
    <xs:restriction base = "xs:NMTOKEN">
    <xs:enumeration value = "INVALID_1"/>
    <xs:enumeration value = "INVALID_2"/>
    <xs:enumeration value = "INVALID_3"/>
    </xs:restriction>
    </xs:simpleType>
    We are running into Marshaling exceptions on the server side when the response/fault complex type has a single array type field.
    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[]
    If I change SomeFault, by adding another element, the error goes away.
    <xs:complexType name = "SomeFault">
    <xs:sequence>
    <xs:element name = "errorMessages" type="some:ErrorMessageWSType" maxOccurs="unbounded" />
    <xs:element name = "dummyString" type="xsd:string" minOccurs="0" />
    </xs:sequence>
    </xs:complexType>
    Am I doing something wrong during the wsdlc code generation or is this a known issue?
    <wsdlc srcWsdl="${wsdl.dir}/${wsdl.file.name}"
    destJwsDir="${gen.src.dir}/gen-src-jar"
    destImplDir="${main.src.dir}"
    packageName="${package.prefix}" type="JAXRPC">

    Any luck with this? I am running into the same error. Apparently, this is not an issue with Java binding, but when invoking remote EJBs, we run into this. I am running 10.1.3.1 and the error is:
    <fault>
    <bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
    <part name="summary">
    <summary>
    com.collaxa.cube.ws.wsif.providers.ejb.WSIFOperation_EJB@e26dbf : Could not invoke 'getIdentityInfo'; nested exception is:
         org.collaxa.thirdparty.apache.wsif.WSIFException: Class 'ca.bc.gov.pssg.c3.webservices.identitymanagement.Identity' is not compatible; nested exception is:
         oracle.xml.parser.v2.XMLDOMException: cannot add a node belonging to a different document
    </summary>
    </part>
    <part name="detail">
    <detail>
    org.collaxa.thirdparty.apache.wsif.WSIFException: Class 'ca.bc.gov.pssg.c3.webservices.identitymanagement.Identity' is not compatible; nested exception is:
         oracle.xml.parser.v2.XMLDOMException: cannot add a node belonging to a different document
    </detail>
    </part>
    </bindingFault>
    </fault

  • Complex types arrays in webservices using custom codec

    In WLS8.1, I use the arrays serializing classes generated by the "servicegen" task,
    for the arrays of a complex type, and I register to the TypeMapping registry
    the complex type specifying as serializer/deserializer the custom codec that I
    developed. (The custom codec extends the AbstractCodec class)
    The problem occurs when I try to execute a service that has like return type an
    array of my complex type. In fact the response envelope is incorrectly built,
    containing before the tag result(that includes at his turn, the serialized array)
    once again the array serialized.
    So at the parsing time of the envelope, the following error occurs:
    … But was not able to find a Part that is registered with this Message which corresponds
    to this SOAPElement. The name of the element should be one of these[simpleTypeBDTs]
    at weblogic.webservice.core.DefaultMessage.toJava(DefaultMessage.java:445)
    at weblogic.webservice.core.handler.InvokeHandler.handleRequest(InvokeHandler.java:74)
    at weblogic.webservice.core.HandlerChainImpl.handleRequest(HandlerChainImpl.java:125)
    at weblogic.webservice.core.DefaultOperation.process(DefaultOperation.java:513)
    at weblogic.webservice.server.Dispatcher.process(Dispatcher.java:150)
    at weblogic.webservice.server.Dispatcher.doDispatch(Dispatcher.java:125)
    at weblogic.webservice.server.Dispatcher.dispatch(Dispatcher.java:74)
    at weblogic.webservice.server.WebServiceManager.dispatch(WebServiceManager.java:98)
    at weblogic.webservice.server.servlet.WebServiceServlet.serverSideInvoke(WebServiceServlet.java:274)
    at weblogic.webservice.server.servlet.ServletBase.doPost(ServletBase.java:393)
    at weblogic.webservice.server.servlet.WebServiceServlet.doPost(WebServiceServlet.java:244)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6291)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
    java.rmi.RemoteException: SOAP Fault:javax.xml.rpc.soap.SOAPFaultException: Exception
    during processing: javax.xml.soap.SOAPException: Found SOAPElement
    that seems to be normally because the encountered tag is not the result tag like
    expected, but the starting tag of the first element of the resulted array.
    It’s the correct way, the way I used? For my complex type is imperative to use
    a custom codec, because my complex types are the nested complex types.

    I opened a case to bea support, (case 426018 ) but I didn't obtain the solution
    till now.
    If you can access the case at the support.bea.com site, it contains a simple
    test case explaining my problem.
    regards,
    mihaela
    "manoj cheenath" <[email protected]> wrote:
    In fact the response envelope is incorrectly built,
    containing before the tag result(that includes at his turn, the serializedarray)
    once again the array serialized.I suspect this is due to a bug in 8.1 and it is fixed since. Please
    contact support for a patch.
    For my complex type is imperative to use
    a custom codec, because my complex types are the nested complex types.WLS can handle nested complex types. You need not write
    custome codec to handle this case.
    Regards,
    -manoj
    http://manojc.com
    "miki tirnacop" <[email protected]> wrote in message
    news:[email protected]...
    In WLS8.1, I use the arrays serializing classes generated by the"servicegen" task,
    for the arrays of a complex type, and I register to the TypeMappingregistry
    the complex type specifying as serializer/deserializer the custom codecthat I
    developed. (The custom codec extends the AbstractCodec class)
    The problem occurs when I try to execute a service that has like returntype an
    array of my complex type. In fact the response envelope is incorrectlybuilt,
    containing before the tag result(that includes at his turn, the serializedarray)
    once again the array serialized.
    So at the parsing time of the envelope, the following error occurs:
    . But was not able to find a Part that is registered with this Messagewhich corresponds
    to this SOAPElement. The name of the element should be one ofthese[simpleTypeBDTs]
    atweblogic.webservice.core.DefaultMessage.toJava(DefaultMessage.java:445)
    atweblogic.webservice.core.handler.InvokeHandler.handleRequest(InvokeHandler.j
    ava:74)
    atweblogic.webservice.core.HandlerChainImpl.handleRequest(HandlerChainImpl.jav
    a:125)
    atweblogic.webservice.core.DefaultOperation.process(DefaultOperation.java:513)
    at weblogic.webservice.server.Dispatcher.process(Dispatcher.java:150)
    atweblogic.webservice.server.Dispatcher.doDispatch(Dispatcher.java:125)
    at weblogic.webservice.server.Dispatcher.dispatch(Dispatcher.java:74)
    atweblogic.webservice.server.WebServiceManager.dispatch(WebServiceManager.java
    :98)
    atweblogic.webservice.server.servlet.WebServiceServlet.serverSideInvoke(WebSer
    viceServlet.java:274)
    atweblogic.webservice.server.servlet.ServletBase.doPost(ServletBase.java:393)
    atweblogic.webservice.server.servlet.WebServiceServlet.doPost(WebServiceServle
    t.java:244)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    atweblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(Servle
    tStubImpl.java:1053)
    atweblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :387)
    atweblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
    :305)
    atweblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(W
    ebAppServletContext.java:6291)
    atweblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubjec
    t.java:317)
    atweblogic.security.service.SecurityManager.runAs(SecurityManager.java:97)
    java.rmi.RemoteException: SOAPFault:javax.xml.rpc.soap.SOAPFaultException: Exception
    during processing: javax.xml.soap.SOAPException: Found SOAPElement
    that seems to be normally because the encountered tag is not the resulttag like
    expected, but the starting tag of the first element of the resultedarray.
    It's the correct way, the way I used? For my complex type is imperativeto
    use
    a custom codec, because my complex types are the nested complex types.

  • Complex Types Array in webservices

    How can i invoke the generated Codec for one of my complex type array to serialize and get the xml data..
    I am supposed to store the object info in database as xml. I cannot use regular xml encoding schemas due to limitations.
    Thanks in Advance
    Venkat

    There are no public API for using the generated codec. Check out
    if XMLBeans will be of any help:
    http://xml.apache.org/xmlbeans/
    Regards,
    -manoj
    http://manojc.com
    "Venkat Addanki" <[email protected]> wrote in message
    news:40d71639$1@mktnews1...
    How can i invoke the generated Codec for one of my complex type array toserialize and get the xml data..
    >
    I am supposed to store the object info in database as xml. I cannot useregular xml encoding schemas due to limitations.
    >
    Thanks in Advance
    Venkat

  • BPEL - not generating correct SOAP packet for complex types

    Hi,
    Below is a snippet from wsdl, correct SOAP request and reply packet (generated using a SOAP test tool) and finally BPEL generated SOAP request and error response (captured using TCP packet monitor)
    The problem is with element 'XActivationPackageArray', which is getting enclosed
    by itself again from Oracle BPEL PM.
    ------------------------W S D L S T A R T----------------------------------------------------
    <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" .......>
         <types>
              <schema>
                   <complexType name="XActivationPackageArray">
                        <sequence>
                             <element name="XActivationPackage" type="tns2:XActivationPackage" maxOccurs="unbounded"/>
                        </sequence>
                   </complexType>
                   <element name="XActivationPackageArray" type="tns2:XActivationPackageArray"/>
                   <complexType name="XActivationPackage">
                        <sequence>
                             <element name="activationPackage" nillable="true" type="xsd:string"/>
                        </sequence>
                   </complexType>
                   <complexType name="XActivationResponse">
                        <sequence>
                             <element name="unitId" nillable="true" type="xsd:string"/>
                             <element name="serviceId" nillable="true" type="xsd:string"/>
                        </sequence>
                   </complexType>
                   <element name="XActivationResponse" type="tns2:XActivationResponse"/>
              </schema>
         </types>
         <message name="activateServiceRequest">
              <part name="userId" type="xsd:string"/>
              <part name="companyCd" type="xsd:string"/>
              <part name="customerCd" type="xsd:string"/>
              <part name="stockAccountId" type="xsd:string"/>
              <part name="orderNumber" type="xsd:string"/>
              <part name="serviceType" type="xsd:string"/>
              <part name="location" type="xsd:string"/>
              <part name="unitId" type="xsd:string"/>
              <part name="serviceIdPool" type="xsd:string"/>
              <part name="serviceId" type="xsd:string"/>
              <part name="XActivationPackageArray" element="tns2:XActivationPackageArray"/>
         </message>
         <message name="activateServiceResponse">
              <part name="XActivationResponse" element="tns2:XActivationResponse"/>
         </message>
    </definitions>
    ------------------------W S D L E N D----------------------------------------------------
    ------------------------Correct SOAP packet ----------------------------------------------------
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:sf2pwrapper.ws.sf2.p1.com">
    <soapenv:Body>
    <urn:activateService>
    <userId>XYZ</userId>
    <companyCd>999</companyCd>
    <customerCd>ABCDE</customerCd>
    <stockAccountId>FGHIJ</stockAccountId>
    <orderNumber>888999</orderNumber>
    <serviceType>AA</serviceType>
    <location>A</location>
    <unitId/>
    <serviceIdPool>XXX</serviceIdPool>
    <serviceId/>
    <XActivationPackageArray>
                   <XActivationPackage>
                        <activationPackage>MMGG</activationPackage>
                   </XActivationPackage>
    </XActivationPackageArray>
    </urn:activateService>
    </soapenv:Body>
    </soapenv:Envelope>
    ------------------------Correct reply ----------------------------------------------------
    <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>
    <activateServiceResponse xmlns="urn:sf2pwrapper.ws.sf2.p1.com">
    <ns1:XActivationResponse xmlns:ns1="urn:model.sf2pwrapper.ws.sf2.p1.com">
    <unitId xmlns="">0642342</unitId>
    <serviceId xmlns="">83753710</serviceId>
    </ns1:XActivationResponse>
    </activateServiceResponse>
    </soapenv:Body>
    </soapenv:Envelope>
    ------------------------BPEL generated SOAP packet--------------------------------------------------
    <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>
    <ns1:activateService soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="urn:sf2pwrapper.ws.sf2.p1.com">
    <userId xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">XYZ</userId>
    <companyCd xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">999</companyCd>
    <customerCd xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">ABCDE</customerCd>
    <stockAccountId xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">FGHIJ</stockAccountId>
    <orderNumber xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">888999</orderNumber>
    <serviceType xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">AA</serviceType>
    <location xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">A</location>
    <unitId xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string"></unitId>
    <serviceIdPool xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string">XXX</serviceIdPool>
    <serviceId xmlns:def="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="def:string"></serviceId>
    <XActivationPackageArray>
    <XActivationPackageArray xmlns="urn:model.sf2pwrapper.ws.sf2.p1.com">
    <XActivationPackage xmlns="">
    <activationPackage>MMGG</activationPackage>
    </XActivationPackage>
    </XActivationPackageArray>
    </XActivationPackageArray>
    </ns1:activateService>
    </soapenv:Body>
    </soapenv:Envelope>
    ------------------------BPEL error--------------------------------------------------
    <?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>
    <soapenv:Fault>
    <faultcode>soapenv:Server.userException</faultcode>
    <faultstring>org.xml.sax.SAXException: Invalid element in com.p1.sf2.ws.sf2pwrapper.model.XActivationPackage - XActivationPackage</faultstring>
    <detail>
    <ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">c7g7mrs</ns1:hostname>
    </detail>
    </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>

    t

  • Returning complex types with arrays (Java / EJB via WSIF)

    Hi all,
    I'm writing some WSIF bindings for existing EJBs, and I've struck a bit of a problem. Basically I've got complex types that contain arrays, and while instances of these types can be passed to the EJBs, return variables typed similarly cause the following fault:
    org.collaxa.thirdparty.apache.wsif.WSIFException: com.collaxa.cube.ws.wsif.providers.ejb.WSIFOperation_EJB@1a372e0 : Could not invoke 'concatString'; nested exception is:
         org.collaxa.thirdparty.apache.wsif.WSIFException: Class 'ejbinterfacetest.StringReturnArray' is not compatible; nested exception is:
         oracle.xml.parser.v2.XMLDOMException: cannot add a node belonging to a different document
         at com.collaxa.cube.ws.wsif.providers.ejb.WSIFOperation_EJB.executeRequestResponseOperation(WSIFOperation_EJB.java:1305)
         at com.collaxa.cube.ws.WSIFInvocationHandler.invoke(WSIFInvocationHandler.java:431)
         at com.collaxa.cube.ws.WSInvocationManager.invoke2(WSInvocationManager.java:416)
    The Java class StringReturnArray is a serializable JavaBean with one property, a String[] called strings. The corresponding complexType (that works when used as a method parameter type) is stringReturnArrayType:
    <complexType name="stringArrayType">
    <sequence>
    <element name="str" type="string" maxOccurs="unbounded" />
    </sequence>
    </complexType>
    <complexType name="stringReturnArrayType">
    <sequence>
    <element name="strings" type="tns:stringArrayType" />
    </sequence>
    </complexType>
    and I've type mapped in the binding with
    <format:typeMap typeName="typens:stringReturnArrayType" formatType="ejbinterfacetest.StringReturnArray" />
    Anyone know why this would be? Is there any way I can get more information out of BPEL or OC4J regarding the fault? (I've already turned the BPEL domain logging to All)
    Cheers,
    Chris.

    Any luck with this? I am running into the same error. Apparently, this is not an issue with Java binding, but when invoking remote EJBs, we run into this. I am running 10.1.3.1 and the error is:
    <fault>
    <bindingFault xmlns="http://schemas.oracle.com/bpel/extension">
    <part name="summary">
    <summary>
    com.collaxa.cube.ws.wsif.providers.ejb.WSIFOperation_EJB@e26dbf : Could not invoke 'getIdentityInfo'; nested exception is:
         org.collaxa.thirdparty.apache.wsif.WSIFException: Class 'ca.bc.gov.pssg.c3.webservices.identitymanagement.Identity' is not compatible; nested exception is:
         oracle.xml.parser.v2.XMLDOMException: cannot add a node belonging to a different document
    </summary>
    </part>
    <part name="detail">
    <detail>
    org.collaxa.thirdparty.apache.wsif.WSIFException: Class 'ca.bc.gov.pssg.c3.webservices.identitymanagement.Identity' is not compatible; nested exception is:
         oracle.xml.parser.v2.XMLDOMException: cannot add a node belonging to a different document
    </detail>
    </part>
    </bindingFault>
    </fault

Maybe you are looking for

  • "Ipod cannot be synched, required file not found" What do I do?!?!?!

    I get this message, and then whan I try to restore my ipod, it says it cant be restored, error 1418.

  • Should I go with 1TB HDD or 256 GB SSD?

    I'm going to buy a Mac Mini (Intel Core i7 quad-core; not i5 dual-core) and use the Intensity Shuttle for Thunderbolt to record gameplay footage on to the Mini in uncompressed format. I know uncompressed files are huge and will eat up disk space, but

  • Printing with color management

    This question was posted in response to the following article: http://help.adobe.com/en_US/illustrator/cs/using/WSfd1234e1c4b69f30d2a5051004d659b1c-7ff6a .html

  • Focus rectangle around jCheckBox

    Hi all, I have a JCheckBox with no label text with it. Usually when the JCheckBox has focus, theres a dotted focus rectangle around the label text, so in this case there never is. Since theres a few checkboxes in the same panel, it gets very confusin

  • IC Elim entity

    While defining Entities , do  we need to have the few entities specifically created to post the elimination entries? What is the need to have these elimination entities created in Entity? For example I have C001,C002,C003,C004 but also there is a eli