By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,434 Members | 2,884 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,434 IT Pros & Developers. It's quick & easy.

Calling Java WebService from .net Client

P: n/a
Hi!

I'm trying to call a Java WebService out of a .net Client. There are two
Methods, one Method requires one Parameter of type Parameter, the other
Method requires one Parameter of type Parameter[].
I can call the first Method without Problems, the Parameter can be
deserialized by the WebService.
But if I want to call the second Method and give it an Array of Parameters,
then the following exception is thrown by the WebService:
javax.xml.rpc.JAXRPCException: org.xml.sax.SAXException: No deserializer
defined for array type {http://beans.middleware.cat.company.de}Parameter

I have appended the WSDL of the concerning WebService.
It is called using rpc-Style, see <soap:binding
transport="http://schemas.xmlsoap.org/soap/http" style="rpc" />

Both Methods can be called out of a Java Client. So my assumption is a
Problem concerning interoperability between .net and Java.

Does anyone have experience with Interoperability between the two Systems?

Best Regards,
Christian
=== This is the WSDL-File of the Service ===

<?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://beans.middleware.cat.company.de"
xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
targetNamespace="http://beans.middleware.cat.compay.de"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://beans.middleware.cat.company.de">
<s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
<s:complexType name="ArrayOf_xsd_string">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="CustmapData">
<s:sequence>
<s:element name="ID" nillable="true" type="s:int" />
<s:element name="createFrom" nillable="true" type="s:int" />
<s:element name="createStamp" nillable="true" type="s:dateTime" />
<s:element name="primaryKey" nillable="true" type="s:int" />
<s:element name="refId" nillable="true" type="s:string" />
<s:element name="refType" nillable="true" type="s:string" />
<s:element name="sectionId" nillable="true" type="s:int" />
</s:sequence>
</s:complexType>
<s:complexType name="TicketData">
<s:sequence>
<s:element name="ID" nillable="true" type="s:int" />
<s:element name="createAt" nillable="true" type="s:dateTime" />
<s:element name="createFrom" nillable="true" type="s:int" />
<s:element name="custmapId" nillable="true" type="s:int" />
<s:element name="escalationlevel" nillable="true" type="s:int" />
<s:element name="lastaccessAt" nillable="true" type="s:dateTime" />
<s:element name="lastaccessFrom" nillable="true" type="s:int" />
<s:element name="ownernow" nillable="true" type="s:int" />
<s:element name="ownerteam" nillable="true" type="s:int" />
<s:element name="primaryKey" nillable="true" type="s:int" />
<s:element name="remark" nillable="true" type="s:string" />
<s:element name="status" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfTicketData">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="tns:TicketData[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="CustmapTransferObject">
<s:complexContent mixed="false">
<s:extension base="tns:CustmapData">
<s:sequence>
<s:element name="tickets" nillable="true" type="tns:ArrayOfTicketData" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:complexType name="Parameter">
<s:sequence>
<s:element name="name" nillable="true" type="s:string" />
<s:element name="parameterValue" nillable="true" type="s:anyType" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOf_xsd_anyType">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="s:anyType[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="ArrayOfParameter">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="tns:Parameter[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="ParameterArray">
<s:sequence>
<s:element name="parameterArray" nillable="true" type="tns:ArrayOfParameter"
/>
</s:sequence>
</s:complexType>
</s:schema>
</wsdl:types>
<wsdl:message name="getExampleHashResponse">
<wsdl:part name="getExampleHashReturn" type="tns:Parameter" />
</wsdl:message>
<wsdl:message name="ainvokeThirdPartyRequest">
<wsdl:part name="targetUrl" type="s:string" />
<wsdl:part name="functionName" type="s:string" />
<wsdl:part name="parameter" type="s:anyType" />
</wsdl:message>
<wsdl:message name="testSoapClientRequest" />
<wsdl:message name="getExampleArrayRequest" />
<wsdl:message name="getCustmapByIdResponse">
<wsdl:part name="getCustmapByIdReturn" type="tns:CustmapTransferObject" />
</wsdl:message>
<wsdl:message name="getExampleHashRequest" />
<wsdl:message name="getCustmapByIdRequest">
<wsdl:part name="custmapID" type="s:int" />
</wsdl:message>
<wsdl:message name="getTicketsForCustmapRequest">
<wsdl:part name="custmapID" type="s:int" />
</wsdl:message>
<wsdl:message name="testSoapClientResponse">
<wsdl:part name="testSoapClientReturn" type="s:anyType" />
</wsdl:message>
<wsdl:message name="testStringArrayRequest">
<wsdl:part name="strArray" type="tns:ArrayOf_xsd_string" />
</wsdl:message>
<wsdl:message name="testStringArrayResponse">
<wsdl:part name="testStringArrayReturn" type="s:string" />
</wsdl:message>
<wsdl:message name="getExampleArrayResponse">
<wsdl:part name="getExampleArrayReturn" type="tns:ArrayOf_xsd_anyType" />
</wsdl:message>
<wsdl:message name="invokeThirdPartyRequest">
<wsdl:part name="targetUrl" type="s:string" />
<wsdl:part name="functionName" type="s:string" />
<wsdl:part name="systemName" type="s:string" />
<wsdl:part name="parameter" type="s:anyType" />
</wsdl:message>
<wsdl:message name="ainvokeThirdPartyResponse">
<wsdl:part name="ainvokeThirdPartyReturn" type="s:anyType" />
</wsdl:message>
<wsdl:message name="invokeThirdPartyResponse">
<wsdl:part name="invokeThirdPartyReturn" type="s:anyType" />
</wsdl:message>
<wsdl:message name="getTicketsForCustmapResponse">
<wsdl:part name="getTicketsForCustmapReturn" type="tns:ArrayOfTicketData" />
</wsdl:message>
<wsdl:portType name="RemoteService">
<wsdl:operation name="testSoapClient">
<wsdl:input name="testSoapClientRequest" message="tns:testSoapClientRequest"
/>
<wsdl:output name="testSoapClientResponse"
message="tns:testSoapClientResponse" />
</wsdl:operation>
<wsdl:operation name="testStringArray" parameterOrder="strArray">
<wsdl:input name="testStringArrayRequest"
message="tns:testStringArrayRequest" />
<wsdl:output name="testStringArrayResponse"
message="tns:testStringArrayResponse" />
</wsdl:operation>
<wsdl:operation name="ainvokeThirdParty" parameterOrder="targetUrl
functionName parameter">
<wsdl:input name="ainvokeThirdPartyRequest"
message="tns:ainvokeThirdPartyRequest" />
<wsdl:output name="ainvokeThirdPartyResponse"
message="tns:ainvokeThirdPartyResponse" />
</wsdl:operation>
<wsdl:operation name="invokeThirdParty" parameterOrder="targetUrl
functionName systemName parameter">
<wsdl:input name="invokeThirdPartyRequest"
message="tns:invokeThirdPartyRequest" />
<wsdl:output name="invokeThirdPartyResponse"
message="tns:invokeThirdPartyResponse" />
</wsdl:operation>
<wsdl:operation name="getCustmapById" parameterOrder="custmapID">
<wsdl:input name="getCustmapByIdRequest" message="tns:getCustmapByIdRequest"
/>
<wsdl:output name="getCustmapByIdResponse"
message="tns:getCustmapByIdResponse" />
</wsdl:operation>
<wsdl:operation name="getTicketsForCustmap" parameterOrder="custmapID">
<wsdl:input name="getTicketsForCustmapRequest"
message="tns:getTicketsForCustmapRequest" />
<wsdl:output name="getTicketsForCustmapResponse"
message="tns:getTicketsForCustmapResponse" />
</wsdl:operation>
<wsdl:operation name="getExampleHash">
<wsdl:input name="getExampleHashRequest" message="tns:getExampleHashRequest"
/>
<wsdl:output name="getExampleHashResponse"
message="tns:getExampleHashResponse" />
</wsdl:operation>
<wsdl:operation name="getExampleArray">
<wsdl:input name="getExampleArrayRequest"
message="tns:getExampleArrayRequest" />
<wsdl:output name="getExampleArrayResponse"
message="tns:getExampleArrayResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="RemoteServicePortSoapBinding" type="tns:RemoteService">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"
/>
<wsdl:operation name="testSoapClient">
<soap:operation soapAction="" />
<wsdl:input name="testSoapClientRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="testSoapClientResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="testStringArray">
<soap:operation soapAction="" />
<wsdl:input name="testStringArrayRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="testStringArrayResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ainvokeThirdParty">
<soap:operation soapAction="" />
<wsdl:input name="ainvokeThirdPartyRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="ainvokeThirdPartyResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="invokeThirdParty">
<soap:operation soapAction="" />
<wsdl:input name="invokeThirdPartyRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="invokeThirdPartyResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getCustmapById">
<soap:operation soapAction="" />
<wsdl:input name="getCustmapByIdRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getCustmapByIdResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getTicketsForCustmap">
<soap:operation soapAction="" />
<wsdl:input name="getTicketsForCustmapRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getTicketsForCustmapResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getExampleHash">
<soap:operation soapAction="" />
<wsdl:input name="getExampleHashRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getExampleHashResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getExampleArray">
<soap:operation soapAction="" />
<wsdl:input name="getExampleArrayRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getExampleArrayResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="RemoteService">
<wsdl:port name="RemoteServicePort"
binding="tns:RemoteServicePortSoapBinding">
<soap:address location="http://xx-xx-xxx:8080//services/RemoteService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Nov 21 '05 #1
Share this Question
Share on Google+
7 Replies


P: n/a
Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion is
what the Java clients are passing. This isn't an array, but is a type unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Calling Java WebService from .net Client
Date: Fri, 3 Dec 2004 13:34:30 +0100
Lines: 319
Message-ID: <31*************@individual.net>
X-Trace: individual.net 6wC9gvSdWYN4ay4f5RlHUwqEJQRU6B04ItzMJk0KvjTHsni4Y=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTFEED02.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s
ul.t-online.de!t-online.de!news-lei1.dfn.de!news-ber1.dfn.de!fu-berlin.de!un
i-berlin.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7789
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi!

I'm trying to call a Java WebService out of a .net Client. There are two
Methods, one Method requires one Parameter of type Parameter, the other
Method requires one Parameter of type Parameter[].
I can call the first Method without Problems, the Parameter can be
deserialized by the WebService.
But if I want to call the second Method and give it an Array of Parameters,
then the following exception is thrown by the WebService:
javax.xml.rpc.JAXRPCException: org.xml.sax.SAXException: No deserializer
defined for array type {http://beans.middleware.cat.company.de}Parameter

I have appended the WSDL of the concerning WebService.
It is called using rpc-Style, see <soap:binding
transport="http://schemas.xmlsoap.org/soap/http" style="rpc" />

Both Methods can be called out of a Java Client. So my assumption is a
Problem concerning interoperability between .net and Java.

Does anyone have experience with Interoperability between the two Systems?

Best Regards,
Christian
=== This is the WSDL-File of the Service ===

<?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://beans.middleware.cat.company.de"
xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
targetNamespace="http://beans.middleware.cat.compay.de"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://beans.middleware.cat.company.de">
<s:import namespace="http://schemas.xmlsoap.org/soap/encoding/" />
<s:complexType name="ArrayOf_xsd_string">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="s:string[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="CustmapData">
<s:sequence>
<s:element name="ID" nillable="true" type="s:int" />
<s:element name="createFrom" nillable="true" type="s:int" />
<s:element name="createStamp" nillable="true" type="s:dateTime" />
<s:element name="primaryKey" nillable="true" type="s:int" />
<s:element name="refId" nillable="true" type="s:string" />
<s:element name="refType" nillable="true" type="s:string" />
<s:element name="sectionId" nillable="true" type="s:int" />
</s:sequence>
</s:complexType>
<s:complexType name="TicketData">
<s:sequence>
<s:element name="ID" nillable="true" type="s:int" />
<s:element name="createAt" nillable="true" type="s:dateTime" />
<s:element name="createFrom" nillable="true" type="s:int" />
<s:element name="custmapId" nillable="true" type="s:int" />
<s:element name="escalationlevel" nillable="true" type="s:int" />
<s:element name="lastaccessAt" nillable="true" type="s:dateTime" />
<s:element name="lastaccessFrom" nillable="true" type="s:int" />
<s:element name="ownernow" nillable="true" type="s:int" />
<s:element name="ownerteam" nillable="true" type="s:int" />
<s:element name="primaryKey" nillable="true" type="s:int" />
<s:element name="remark" nillable="true" type="s:string" />
<s:element name="status" nillable="true" type="s:string" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOfTicketData">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="tns:TicketData[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="CustmapTransferObject">
<s:complexContent mixed="false">
<s:extension base="tns:CustmapData">
<s:sequence>
<s:element name="tickets" nillable="true" type="tns:ArrayOfTicketData" />
</s:sequence>
</s:extension>
</s:complexContent>
</s:complexType>
<s:complexType name="Parameter">
<s:sequence>
<s:element name="name" nillable="true" type="s:string" />
<s:element name="parameterValue" nillable="true" type="s:anyType" />
</s:sequence>
</s:complexType>
<s:complexType name="ArrayOf_xsd_anyType">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="s:anyType[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="ArrayOfParameter">
<s:complexContent mixed="false">
<s:restriction base="soapenc:Array">
<s:attribute wsdl:arrayType="tns:Parameter[]" ref="soapenc:arrayType" />
</s:restriction>
</s:complexContent>
</s:complexType>
<s:complexType name="ParameterArray">
<s:sequence>
<s:element name="parameterArray" nillable="true"
type="tns:ArrayOfParameter"
/>
</s:sequence>
</s:complexType>
</s:schema>
</wsdl:types>
<wsdl:message name="getExampleHashResponse">
<wsdl:part name="getExampleHashReturn" type="tns:Parameter" />
</wsdl:message>
<wsdl:message name="ainvokeThirdPartyRequest">
<wsdl:part name="targetUrl" type="s:string" />
<wsdl:part name="functionName" type="s:string" />
<wsdl:part name="parameter" type="s:anyType" />
</wsdl:message>
<wsdl:message name="testSoapClientRequest" />
<wsdl:message name="getExampleArrayRequest" />
<wsdl:message name="getCustmapByIdResponse">
<wsdl:part name="getCustmapByIdReturn" type="tns:CustmapTransferObject" />
</wsdl:message>
<wsdl:message name="getExampleHashRequest" />
<wsdl:message name="getCustmapByIdRequest">
<wsdl:part name="custmapID" type="s:int" />
</wsdl:message>
<wsdl:message name="getTicketsForCustmapRequest">
<wsdl:part name="custmapID" type="s:int" />
</wsdl:message>
<wsdl:message name="testSoapClientResponse">
<wsdl:part name="testSoapClientReturn" type="s:anyType" />
</wsdl:message>
<wsdl:message name="testStringArrayRequest">
<wsdl:part name="strArray" type="tns:ArrayOf_xsd_string" />
</wsdl:message>
<wsdl:message name="testStringArrayResponse">
<wsdl:part name="testStringArrayReturn" type="s:string" />
</wsdl:message>
<wsdl:message name="getExampleArrayResponse">
<wsdl:part name="getExampleArrayReturn" type="tns:ArrayOf_xsd_anyType" />
</wsdl:message>
<wsdl:message name="invokeThirdPartyRequest">
<wsdl:part name="targetUrl" type="s:string" />
<wsdl:part name="functionName" type="s:string" />
<wsdl:part name="systemName" type="s:string" />
<wsdl:part name="parameter" type="s:anyType" />
</wsdl:message>
<wsdl:message name="ainvokeThirdPartyResponse">
<wsdl:part name="ainvokeThirdPartyReturn" type="s:anyType" />
</wsdl:message>
<wsdl:message name="invokeThirdPartyResponse">
<wsdl:part name="invokeThirdPartyReturn" type="s:anyType" />
</wsdl:message>
<wsdl:message name="getTicketsForCustmapResponse">
<wsdl:part name="getTicketsForCustmapReturn" type="tns:ArrayOfTicketData" />
</wsdl:message>
<wsdl:portType name="RemoteService">
<wsdl:operation name="testSoapClient">
<wsdl:input name="testSoapClientRequest"
message="tns:testSoapClientRequest"
/>
<wsdl:output name="testSoapClientResponse"
message="tns:testSoapClientResponse" />
</wsdl:operation>
<wsdl:operation name="testStringArray" parameterOrder="strArray">
<wsdl:input name="testStringArrayRequest"
message="tns:testStringArrayRequest" />
<wsdl:output name="testStringArrayResponse"
message="tns:testStringArrayResponse" />
</wsdl:operation>
<wsdl:operation name="ainvokeThirdParty" parameterOrder="targetUrl
functionName parameter">
<wsdl:input name="ainvokeThirdPartyRequest"
message="tns:ainvokeThirdPartyRequest" />
<wsdl:output name="ainvokeThirdPartyResponse"
message="tns:ainvokeThirdPartyResponse" />
</wsdl:operation>
<wsdl:operation name="invokeThirdParty" parameterOrder="targetUrl
functionName systemName parameter">
<wsdl:input name="invokeThirdPartyRequest"
message="tns:invokeThirdPartyRequest" />
<wsdl:output name="invokeThirdPartyResponse"
message="tns:invokeThirdPartyResponse" />
</wsdl:operation>
<wsdl:operation name="getCustmapById" parameterOrder="custmapID">
<wsdl:input name="getCustmapByIdRequest"
message="tns:getCustmapByIdRequest"
/>
<wsdl:output name="getCustmapByIdResponse"
message="tns:getCustmapByIdResponse" />
</wsdl:operation>
<wsdl:operation name="getTicketsForCustmap" parameterOrder="custmapID">
<wsdl:input name="getTicketsForCustmapRequest"
message="tns:getTicketsForCustmapRequest" />
<wsdl:output name="getTicketsForCustmapResponse"
message="tns:getTicketsForCustmapResponse" />
</wsdl:operation>
<wsdl:operation name="getExampleHash">
<wsdl:input name="getExampleHashRequest"
message="tns:getExampleHashRequest"
/>
<wsdl:output name="getExampleHashResponse"
message="tns:getExampleHashResponse" />
</wsdl:operation>
<wsdl:operation name="getExampleArray">
<wsdl:input name="getExampleArrayRequest"
message="tns:getExampleArrayRequest" />
<wsdl:output name="getExampleArrayResponse"
message="tns:getExampleArrayResponse" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="RemoteServicePortSoapBinding" type="tns:RemoteService">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"
/>
<wsdl:operation name="testSoapClient">
<soap:operation soapAction="" />
<wsdl:input name="testSoapClientRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="testSoapClientResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="testStringArray">
<soap:operation soapAction="" />
<wsdl:input name="testStringArrayRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="testStringArrayResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="ainvokeThirdParty">
<soap:operation soapAction="" />
<wsdl:input name="ainvokeThirdPartyRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="ainvokeThirdPartyResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="invokeThirdParty">
<soap:operation soapAction="" />
<wsdl:input name="invokeThirdPartyRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="invokeThirdPartyResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getCustmapById">
<soap:operation soapAction="" />
<wsdl:input name="getCustmapByIdRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getCustmapByIdResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getTicketsForCustmap">
<soap:operation soapAction="" />
<wsdl:input name="getTicketsForCustmapRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getTicketsForCustmapResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getExampleHash">
<soap:operation soapAction="" />
<wsdl:input name="getExampleHashRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getExampleHashResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="getExampleArray">
<soap:operation soapAction="" />
<wsdl:input name="getExampleArrayRequest">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:input>
<wsdl:output name="getExampleArrayResponse">
<soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="RemoteService">
<wsdl:port name="RemoteServicePort"
binding="tns:RemoteServicePortSoapBinding">
<soap:address location="http://xx-xx-xxx:8080//services/RemoteService" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

Nov 21 '05 #2

P: n/a
Hi Dan,

thank you very much for your response!
type ArrayOfParameter rather than a Parameter array Yes, we have tried this, too. But at the end there will be a Parameter[] at
all. Our class looked like this:

public class ParameterList
{
public Parameter[] paramArray;
...
}

Doesn't work...
Second, have you compared a wire trace of the SOAP packet Yes, of course, we have. The difference between the two Requests is shown in
the following snippets (transporting a ParameterList with one Parameter in
it). Have a look at how the "ParameterList" is being transported. Can you
give me some further advice, please?

Thank you very much,
Christian

=== Request of JavaClient (works) ==============================
<?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:invokeThirdParty
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://beans.middleware.cat.company.de">
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUrl>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id0"/>
</ns1:invokeThirdParty>

<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:ParameterList"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://beans.middleware.cat.company.de">
<parameterItems xsi:type="soapenc:Array"
soapenc:arrayType="ns2:Parameter[1]">
<item href="#id1"/>
</parameterItems>
</multiRef>

<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:Parameter" xmlns:ns3="http://beans.middleware.cat.company.de"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</multiRef>

</soapenv:Body>
</soapenv:Envelope>
================================================== =====
=== Request of .net Client (doesn't work) ==========================
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://beans.middleware.cat.company.de"
xmlns:types="http://beans.middleware.cat.company.de/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:invokeThirdParty>
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUrl>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id1" />
</tns:invokeThirdParty>

<tns:ParameterList id="id1" xsi:type="tns:ParameterList">
<parameterItems href="#id2" />
</tns:ParameterList>

<soapenc:Array id="id2" soapenc:arrayType="tns:Parameter[1]">
<Item href="#id3" />
</soapenc:Array>

<tns:Parameter id="id3" xsi:type="tns:Parameter">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</tns:Parameter>

</soap:Body>
</soap:Envelope>
================================================== =====
"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:R0**************@cpmsftngxa10.phx.gbl... Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion
is
what the Java clients are passing. This isn't an array, but is a type
unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation

Nov 23 '05 #3

P: n/a
I'm reminded why I dislike soap encoding so much.

Any chance you can set these to document literal form? It gets SO much
easier.
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Mon, 6 Dec 2004 10:37:23 +0100
Lines: 122
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net WxJre0nv4n+pgo5h6BaTgQUBGnF+5NwvokWBV8glf3mLBAiFI=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTFEED01.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s
ul.t-online.de!t-online.de!npeer.de.kpn-eurorings.net!fu-berlin.de!uni-berli
n.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7885
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,

thank you very much for your response!
type ArrayOfParameter rather than a Parameter array Yes, we have tried this, too. But at the end there will be a Parameter[] at
all. Our class looked like this:

public class ParameterList
{
public Parameter[] paramArray;
...
}

Doesn't work...
Second, have you compared a wire trace of the SOAP packet Yes, of course, we have. The difference between the two Requests is shown
in
the following snippets (transporting a ParameterList with one Parameter in
it). Have a look at how the "ParameterList" is being transported. Can you
give me some further advice, please?

Thank you very much,
Christian

=== Request of JavaClient (works) ==============================
<?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:invokeThirdParty
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://beans.middleware.cat.company.de">
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id0"/>
</ns1:invokeThirdParty>

<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:ParameterList"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://beans.middleware.cat.company.de">
<parameterItems xsi:type="soapenc:Array"
soapenc:arrayType="ns2:Parameter[1]">
<item href="#id1"/>
</parameterItems>
</multiRef>

<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:Parameter" xmlns:ns3="http://beans.middleware.cat.company.de"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</multiRef>

</soapenv:Body>
</soapenv:Envelope>
================================================== =====
=== Request of .net Client (doesn't work) ==========================
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://beans.middleware.cat.company.de"
xmlns:types="http://beans.middleware.cat.company.de/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:invokeThirdParty>
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id1" />
</tns:invokeThirdParty>

<tns:ParameterList id="id1" xsi:type="tns:ParameterList">
<parameterItems href="#id2" />
</tns:ParameterList>

<soapenc:Array id="id2" soapenc:arrayType="tns:Parameter[1]">
<Item href="#id3" />
</soapenc:Array>

<tns:Parameter id="id3" xsi:type="tns:Parameter">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</tns:Parameter>

</soap:Body>
</soap:Envelope>
================================================== =====
"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:R0**************@cpmsftngxa10.phx.gbl... Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion
is
what the Java clients are passing. This isn't an array, but is a type
unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation


Nov 23 '05 #4

P: n/a
Hi Dan,
Any chance you can set these to document literal form? Do I have to set this up in my .net-Client or on the Java-WebServer?
How can I set it up?
And what is the main differenz between literal and rpc?

Thank you very much,
Christian

"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:qk**************@cpmsftngxa10.phx.gbl... I'm reminded why I dislike soap encoding so much.

Any chance you can set these to document literal form? It gets SO much
easier.
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Mon, 6 Dec 2004 10:37:23 +0100
Lines: 122
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net WxJre0nv4n+pgo5h6BaTgQUBGnF+5NwvokWBV8glf3mLBAiFI=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTFEED01.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s
ul.t-online.de!t-online.de!npeer.de.kpn-eurorings.net!fu-berlin.de!uni-berli
n.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7885
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,

thank you very much for your response!
type ArrayOfParameter rather than a Parameter array

Yes, we have tried this, too. But at the end there will be a Parameter[]
at
all. Our class looked like this:

public class ParameterList
{
public Parameter[] paramArray;
...
}

Doesn't work...
Second, have you compared a wire trace of the SOAP packet

Yes, of course, we have. The difference between the two Requests is shown
in
the following snippets (transporting a ParameterList with one Parameter in
it). Have a look at how the "ParameterList" is being transported. Can you
give me some further advice, please?

Thank you very much,
Christian

=== Request of JavaClient (works) ==============================
<?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:invokeThirdParty
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://beans.middleware.cat.company.de">
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id0"/>
</ns1:invokeThirdParty>

<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:ParameterList"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://beans.middleware.cat.company.de">
<parameterItems xsi:type="soapenc:Array"
soapenc:arrayType="ns2:Parameter[1]">
<item href="#id1"/>
</parameterItems>
</multiRef>

<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:Parameter"
xmlns:ns3="http://beans.middleware.cat.company.de"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</multiRef>

</soapenv:Body>
</soapenv:Envelope>
================================================== =====
=== Request of .net Client (doesn't work) ==========================
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://beans.middleware.cat.company.de"
xmlns:types="http://beans.middleware.cat.company.de/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:invokeThirdParty>
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id1" />
</tns:invokeThirdParty>

<tns:ParameterList id="id1" xsi:type="tns:ParameterList">
<parameterItems href="#id2" />
</tns:ParameterList>

<soapenc:Array id="id2" soapenc:arrayType="tns:Parameter[1]">
<Item href="#id3" />
</soapenc:Array>

<tns:Parameter id="id3" xsi:type="tns:Parameter">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</tns:Parameter>

</soap:Body>
</soap:Envelope>
================================================== =====
"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:R0**************@cpmsftngxa10.phx.gbl...
Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried
passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion
is
what the Java clients are passing. This isn't an array, but is a type
unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation


Nov 23 '05 #5

P: n/a
Hi Christian,

Yes, There is a HUGE difference between the two. Best practice for interop
calls for using Document Literal. From what I can see, the packet being
sent back is encoded properly by the .NET code. It is entirely possible
that the java code is looking for specific XML - which is not a requirement
in RPC encoded since only the ID/IDREF pairs need to match. What toos
where the Java side written with?

Regards

Dan
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Tue, 7 Dec 2004 09:12:36 +0100
Lines: 171
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl> <31*************@individual.net>
<qk**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net bsvx72DpLwnuiM9G2gx5zwmTMNuTCqkrEZKT5M/IzkM22CA4Y=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTNGXA03.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s
ul.t-online.de!t-online.de!newsfeed.freenet.de!fu-berlin.de!uni-berlin.de!in
dividual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7935
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,
Any chance you can set these to document literal form? Do I have to set this up in my .net-Client or on the Java-WebServer?
How can I set it up?
And what is the main differenz between literal and rpc?

Thank you very much,
Christian

"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:qk**************@cpmsftngxa10.phx.gbl... I'm reminded why I dislike soap encoding so much.

Any chance you can set these to document literal form? It gets SO much
easier.
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Mon, 6 Dec 2004 10:37:23 +0100
Lines: 122
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net WxJre0nv4n+pgo5h6BaTgQUBGnF+5NwvokWBV8glf3mLBAiFI=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTFEED01.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s ul.t-online.de!t-online.de!npeer.de.kpn-eurorings.net!fu-berlin.de!uni-berli n.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7885
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,

thank you very much for your response!
type ArrayOfParameter rather than a Parameter array Yes, we have tried this, too. But at the end there will be a Parameter[]
at
all. Our class looked like this:

public class ParameterList
{
public Parameter[] paramArray;
...
}

Doesn't work...
Second, have you compared a wire trace of the SOAP packet

Yes, of course, we have. The difference between the two Requests is shown
in
the following snippets (transporting a ParameterList with one Parameter in
it). Have a look at how the "ParameterList" is being transported. Can you
give me some further advice, please?

Thank you very much,
Christian

=== Request of JavaClient (works) ==============================
<?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:invokeThirdParty
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://beans.middleware.cat.company.de">
<targetUrl

xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id0"/>
</ns1:invokeThirdParty>

<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:ParameterList"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://beans.middleware.cat.company.de">
<parameterItems xsi:type="soapenc:Array"
soapenc:arrayType="ns2:Parameter[1]">
<item href="#id1"/>
</parameterItems>
</multiRef>

<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:Parameter"
xmlns:ns3="http://beans.middleware.cat.company.de"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</multiRef>

</soapenv:Body>
</soapenv:Envelope>
================================================== =====
=== Request of .net Client (doesn't work) ==========================
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://beans.middleware.cat.company.de"
xmlns:types="http://beans.middleware.cat.company.de/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:invokeThirdParty>
<targetUrl
xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id1" />
</tns:invokeThirdParty>

<tns:ParameterList id="id1" xsi:type="tns:ParameterList">
<parameterItems href="#id2" />
</tns:ParameterList>

<soapenc:Array id="id2" soapenc:arrayType="tns:Parameter[1]">
<Item href="#id3" />
</soapenc:Array>

<tns:Parameter id="id3" xsi:type="tns:Parameter">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</tns:Parameter>

</soap:Body>
</soap:Envelope>
================================================== =====
"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:R0**************@cpmsftngxa10.phx.gbl...
Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried
passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion
is
what the Java clients are passing. This isn't an array, but is a type
unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation



Nov 23 '05 #6

P: n/a
Hi Dan,

first at all I want to thank you for your huge help!

At the Java-Server we are using
* JBoss 4.0
* Apache AXIS 1.1
* Eclipse as IDE

How can I set my Client up to using "Document Literal"?
Is there a config File or is this set up in WSDL on the side of the server?
If it is done by WSDL, can you give me a point, how to do this?

Thank you very much again,
Regards,
Christian

"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:tS**************@cpmsftngxa10.phx.gbl...
Hi Christian,

Yes, There is a HUGE difference between the two. Best practice for
interop
calls for using Document Literal. From what I can see, the packet being
sent back is encoded properly by the .NET code. It is entirely possible
that the java code is looking for specific XML - which is not a
requirement
in RPC encoded since only the ID/IDREF pairs need to match. What toos
where the Java side written with?

Regards

Dan
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Tue, 7 Dec 2004 09:12:36 +0100
Lines: 171
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl> <31*************@individual.net>
<qk**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net bsvx72DpLwnuiM9G2gx5zwmTMNuTCqkrEZKT5M/IzkM22CA4Y=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTNGXA03.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s
ul.t-online.de!t-online.de!newsfeed.freenet.de!fu-berlin.de!uni-berlin.de!in
dividual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7935
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,
Any chance you can set these to document literal form?

Do I have to set this up in my .net-Client or on the Java-WebServer?
How can I set it up?
And what is the main differenz between literal and rpc?

Thank you very much,
Christian

"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:qk**************@cpmsftngxa10.phx.gbl...
I'm reminded why I dislike soap encoding so much.

Any chance you can set these to document literal form? It gets SO much
easier.
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Mon, 6 Dec 2004 10:37:23 +0100
Lines: 122
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net
WxJre0nv4n+pgo5h6BaTgQUBGnF+5NwvokWBV8glf3mLBAiFI=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:

cpmsftngxa10.phx.gbl!TK2MSFTFEED01.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s

ul.t-online.de!t-online.de!npeer.de.kpn-eurorings.net!fu-berlin.de!uni-berli
n.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7885
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,

thank you very much for your response!
type ArrayOfParameter rather than a Parameter array

Yes, we have tried this, too. But at the end there will be a Parameter[]
at
all. Our class looked like this:

public class ParameterList
{
public Parameter[] paramArray;
...
}

Doesn't work...
Second, have you compared a wire trace of the SOAP packet

Yes, of course, we have. The difference between the two Requests is shown
in
the following snippets (transporting a ParameterList with one Parameter
in
it). Have a look at how the "ParameterList" is being transported. Can you
give me some further advice, please?

Thank you very much,
Christian

=== Request of JavaClient (works) ==============================
<?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:invokeThirdParty
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://beans.middleware.cat.company.de">
<targetUrl

xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id0"/>
</ns1:invokeThirdParty>

<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:ParameterList"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://beans.middleware.cat.company.de">
<parameterItems xsi:type="soapenc:Array"
soapenc:arrayType="ns2:Parameter[1]">
<item href="#id1"/>
</parameterItems>
</multiRef>

<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:Parameter"
xmlns:ns3="http://beans.middleware.cat.company.de"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</multiRef>

</soapenv:Body>
</soapenv:Envelope>
================================================== =====
=== Request of .net Client (doesn't work) ==========================
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://beans.middleware.cat.company.de"
xmlns:types="http://beans.middleware.cat.company.de/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:invokeThirdParty>
<targetUrl

xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id1" />
</tns:invokeThirdParty>

<tns:ParameterList id="id1" xsi:type="tns:ParameterList">
<parameterItems href="#id2" />
</tns:ParameterList>

<soapenc:Array id="id2" soapenc:arrayType="tns:Parameter[1]">
<Item href="#id3" />
</soapenc:Array>

<tns:Parameter id="id3" xsi:type="tns:Parameter">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</tns:Parameter>

</soap:Body>
</soap:Envelope>
================================================== =====
"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:R0**************@cpmsftngxa10.phx.gbl...
Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried
passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion
is
what the Java clients are passing. This isn't an array, but is a type
unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation



Nov 23 '05 #7

P: n/a
Hi Christian,

No, you can't do this in the client. You need to make the service
implementation (and the WSDL) accept document literal requests.

Dan
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Wed, 8 Dec 2004 09:47:40 +0100
Lines: 238
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl> <31*************@individual.net>
<qk**************@cpmsftngxa10.phx.gbl> <31*************@individual.net>
<tS**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net f0u6XEJjXRKAQGpAeqSwuQ6g0izKM8NRYrv/upIfmXiZqDE/c=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTNGXA01.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s
ul.t-online.de!newsfeed01.sul.t-online.de!t-online.de!fu-berlin.de!uni-berli
n.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7979
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,

first at all I want to thank you for your huge help!

At the Java-Server we are using
* JBoss 4.0
* Apache AXIS 1.1
* Eclipse as IDE

How can I set my Client up to using "Document Literal"?
Is there a config File or is this set up in WSDL on the side of the server?
If it is done by WSDL, can you give me a point, how to do this?

Thank you very much again,
Regards,
Christian

"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:tS**************@cpmsftngxa10.phx.gbl...
Hi Christian,

Yes, There is a HUGE difference between the two. Best practice for
interop
calls for using Document Literal. From what I can see, the packet being
sent back is encoded properly by the .NET code. It is entirely possible
that the java code is looking for specific XML - which is not a
requirement
in RPC encoded since only the ID/IDREF pairs need to match. What toos
where the Java side written with?

Regards

Dan
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Tue, 7 Dec 2004 09:12:36 +0100
Lines: 171
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl> <31*************@individual.net>
<qk**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net bsvx72DpLwnuiM9G2gx5zwmTMNuTCqkrEZKT5M/IzkM22CA4Y=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:
cpmsftngxa10.phx.gbl!TK2MSFTNGXA03.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s ul.t-online.de!t-online.de!newsfeed.freenet.de!fu-berlin.de!uni-berlin.de!in dividual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7935
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,
Any chance you can set these to document literal form?

Do I have to set this up in my .net-Client or on the Java-WebServer?
How can I set it up?
And what is the main differenz between literal and rpc?

Thank you very much,
Christian

"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:qk**************@cpmsftngxa10.phx.gbl...
I'm reminded why I dislike soap encoding so much.

Any chance you can set these to document literal form? It gets SO much
easier.
--------------------
From: "Christian Wilhelm" <ch********@bigfoot.de>
Newsgroups: microsoft.public.dotnet.framework.webservices
Subject: Re: Calling Java WebService from .net Client
Date: Mon, 6 Dec 2004 10:37:23 +0100
Lines: 122
Message-ID: <31*************@individual.net>
References: <31*************@individual.net>
<R0**************@cpmsftngxa10.phx.gbl>
X-Trace: individual.net
WxJre0nv4n+pgo5h6BaTgQUBGnF+5NwvokWBV8glf3mLBAiFI=
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-RFC2646: Format=Flowed; Original
Path:

cpmsftngxa10.phx.gbl!TK2MSFTFEED01.phx.gbl!TK2MSFT NGP08.phx.gbl!newsfeed00.s

ul.t-online.de!t-online.de!npeer.de.kpn-eurorings.net!fu-berlin.de!uni-berli
n.de!individual.net!not-for-mail
Xref: cpmsftngxa10.phx.gbl
microsoft.public.dotnet.framework.webservices:7885
X-Tomcat-NG: microsoft.public.dotnet.framework.webservices

Hi Dan,

thank you very much for your response!
type ArrayOfParameter rather than a Parameter array

Yes, we have tried this, too. But at the end there will be a Parameter[]
at
all. Our class looked like this:

public class ParameterList
{
public Parameter[] paramArray;
...
}

Doesn't work...
Second, have you compared a wire trace of the SOAP packet

Yes, of course, we have. The difference between the two Requests is shown
in
the following snippets (transporting a ParameterList with one Parameter
in
it). Have a look at how the "ParameterList" is being transported. Can you
give me some further advice, please?

Thank you very much,
Christian

=== Request of JavaClient (works) ==============================
<?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:invokeThirdParty
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns1="http://beans.middleware.cat.company.de">
<targetUrl

xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id0"/>
</ns1:invokeThirdParty>

<multiRef id="id0" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns2:ParameterList"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:ns2="http://beans.middleware.cat.company.de">
<parameterItems xsi:type="soapenc:Array"
soapenc:arrayType="ns2:Parameter[1]">
<item href="#id1"/>
</parameterItems>
</multiRef>

<multiRef id="id1" soapenc:root="0"
soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
xsi:type="ns3:Parameter"
xmlns:ns3="http://beans.middleware.cat.company.de"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</multiRef>

</soapenv:Body>
</soapenv:Envelope>
================================================== =====
=== Request of .net Client (doesn't work) ==========================
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://beans.middleware.cat.company.de"
xmlns:types="http://beans.middleware.cat.company.de/encodedTypes"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Body
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<tns:invokeThirdParty>
<targetUrl

xsi:type="xsd:string">http://lxdev81.int.cinetic.de:8353/userdaten</targetUr
l>
<functionName xsi:type="xsd:string">getIdentDataById</functionName>
<systemName xsi:type="xsd:string" xsi:nil="true"/>
<parameterList href="#id1" />
</tns:invokeThirdParty>

<tns:ParameterList id="id1" xsi:type="tns:ParameterList">
<parameterItems href="#id2" />
</tns:ParameterList>

<soapenc:Array id="id2" soapenc:arrayType="tns:Parameter[1]">
<Item href="#id3" />
</soapenc:Array>

<tns:Parameter id="id3" xsi:type="tns:Parameter">
<name xsi:type="xsd:string">UserID</name>
<parameterValue xsi:type="xsd:int">500004136</parameterValue>
</tns:Parameter>

</soap:Body>
</soap:Envelope>
================================================== =====
"Dan Rogers" <da***@microsoft.com> schrieb im Newsbeitrag
news:R0**************@cpmsftngxa10.phx.gbl...
Hi Christian,

I have two thoughts. Looking quickly at this WSDL, have you tried
passing
the type ArrayOfParameter rather than a Parameter array?

Second, have you compared a wire trace of the SOAP packet to see the
difference between the two requests? I suspect that my first suggestion
is
what the Java clients are passing. This isn't an array, but is a type
unto
itself that happens to contain an array of other types.

I hope this helps

Dan Rogers
Microsoft Corporation




Nov 23 '05 #8

This discussion thread is closed

Replies have been disabled for this discussion.