You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by be...@smals-mvm.be on 2004/01/22 16:50:04 UTC

interoperability problem .NET - Axis 1.1

hi,

Could anyone point me to a solution for the following problem:

A .NET client (C#) returns the following exception while calling an Axis
web service:
     An unhandled exception of type 'System.InvalidOperationException'
occurred in System.Web.Services.dll
     Additional information: Cannot find type for
urn:RIPWS:ArrayOf_tns2_EmployeeInfo.

The first part of the SOAP response (see below) shows that the element
'employees' is nil and of type ArrayOf_tns2_EmployeeInfo.
However, the .NET client proxy is unaware of this type. It only knows the
type EmployeeInfo[].

There's no problem when the element is not nil (see second part of SOAP
response).


*** WSDL snippet ***

<complexType name="Activity">
     <sequence>
          <element name="employees" nillable="true" type
="impl:ArrayOf_tns2_EmployeeInfo" />
          <element name="employerInfo" nillable="true" type
="tns1:EmployerInfo" />
     </sequence>
</complexType>

<complexType name="ArrayOf_tns2_EmployeeInfo">
     <complexContent>
          <restriction base="soapenc:Array">
               <attribute ref="soapenc:arrayType" wsdl:arrayType
="tns1:EmployeeInfo[]" />
          </restriction>
     </complexContent>
</complexType>

*** SOAP response ***

<multiRef id="id4" soapenc:root="0" soapenv:encodingStyle="
http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns12:Activity"
xmlns:ns12=http://businessobjects.webservice.abc.be" xmlns:soapenc="
http://schemas.xmlsoap.org/soap/encoding/">
     <employees xsi:type="ns13:ArrayOf_tns2_EmployeeInfo" xsi:nil="true"
xmlns:ns13="urn:RIPWS"/>
     <employerInfo href="#id19"/>
</multiRef>

<multiRef id="id5" soapenc:root="0" soapenv:encodingStyle="
http://schemas.xmlsoap.org/soap/encoding/" xsi:type="ns14:Activity"
xmlns:ns14="http://businessobjects.webservice.abc.be" xmlns:soapenc="
http://schemas.xmlsoap.org/soap/encoding/">
     <employees xsi:type="soapenc:Array" soapenc:arrayType
="ns14:EmployeeInfo[1]" xmlns:ns15="urn:RIPWS">
          <item href="#id20"/>
     </employees>
     <employerInfo href="#id21"/>
</multiRef>