Calling Axis WebService out of .net Client

Discussion in 'Java' started by Christian Wilhelm, Dec 16, 2004.

  1. 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:eek:peration name="testSoapClient">
    <wsdl:input name="testSoapClientRequest" message="tns:testSoapClientRequest"
    />
    <wsdl:eek:utput name="testSoapClientResponse"
    message="tns:testSoapClientResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="testStringArray" parameterOrder="strArray">
    <wsdl:input name="testStringArrayRequest"
    message="tns:testStringArrayRequest" />
    <wsdl:eek:utput name="testStringArrayResponse"
    message="tns:testStringArrayResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="ainvokeThirdParty" parameterOrder="targetUrl
    functionName parameter">
    <wsdl:input name="ainvokeThirdPartyRequest"
    message="tns:ainvokeThirdPartyRequest" />
    <wsdl:eek:utput name="ainvokeThirdPartyResponse"
    message="tns:ainvokeThirdPartyResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="invokeThirdParty" parameterOrder="targetUrl
    functionName systemName parameter">
    <wsdl:input name="invokeThirdPartyRequest"
    message="tns:invokeThirdPartyRequest" />
    <wsdl:eek:utput name="invokeThirdPartyResponse"
    message="tns:invokeThirdPartyResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getCustmapById" parameterOrder="custmapID">
    <wsdl:input name="getCustmapByIdRequest" message="tns:getCustmapByIdRequest"
    />
    <wsdl:eek:utput name="getCustmapByIdResponse"
    message="tns:getCustmapByIdResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getTicketsForCustmap" parameterOrder="custmapID">
    <wsdl:input name="getTicketsForCustmapRequest"
    message="tns:getTicketsForCustmapRequest" />
    <wsdl:eek:utput name="getTicketsForCustmapResponse"
    message="tns:getTicketsForCustmapResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getExampleHash">
    <wsdl:input name="getExampleHashRequest" message="tns:getExampleHashRequest"
    />
    <wsdl:eek:utput name="getExampleHashResponse"
    message="tns:getExampleHashResponse" />
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getExampleArray">
    <wsdl:input name="getExampleArrayRequest"
    message="tns:getExampleArrayRequest" />
    <wsdl:eek:utput name="getExampleArrayResponse"
    message="tns:getExampleArrayResponse" />
    </wsdl:eek:peration>
    </wsdl:portType>
    <wsdl:binding name="RemoteServicePortSoapBinding" type="tns:RemoteService">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc"
    />
    <wsdl:eek:peration name="testSoapClient">
    <soap:eek:peration 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:eek:utput name="testSoapClientResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="testStringArray">
    <soap:eek:peration 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:eek:utput name="testStringArrayResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="ainvokeThirdParty">
    <soap:eek:peration 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:eek:utput name="ainvokeThirdPartyResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="invokeThirdParty">
    <soap:eek:peration 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:eek:utput name="invokeThirdPartyResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getCustmapById">
    <soap:eek:peration 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:eek:utput name="getCustmapByIdResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getTicketsForCustmap">
    <soap:eek:peration 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:eek:utput name="getTicketsForCustmapResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getExampleHash">
    <soap:eek:peration 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:eek:utput name="getExampleHashResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    <wsdl:eek:peration name="getExampleArray">
    <soap:eek:peration 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:eek:utput name="getExampleArrayResponse">
    <soap:body use="encoded" namespace="http://beans.middleware.cat.company.de"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
    </wsdl:eek:utput>
    </wsdl:eek:peration>
    </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>
    Christian Wilhelm, Dec 16, 2004
    #1
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Joey Vendetta
    Replies:
    0
    Views:
    3,446
    Joey Vendetta
    Apr 1, 2004
  2. Replies:
    0
    Views:
    914
  3. hocho888
    Replies:
    1
    Views:
    619
  4. Cyril
    Replies:
    2
    Views:
    4,497
    Cyril
    Jun 1, 2006
  5. Filipe Marcelino
    Replies:
    5
    Views:
    1,639
    Ian Wilson
    Aug 9, 2007
Loading...

Share This Page