I don't think your problem is related to those namespace, it's
probably more to do with the way arrays are encoded (using
soapenc:Array).  You might want to try a document/literal approach
instead (style=DOCUMENT or WRAPPED in Java2Wsdl).

Regards,
Jan


On 6/2/05, Dave <[EMAIL PROTECTED]> wrote:
> Hi -
> 
> We have some methods which return arrays of complex types. Some of
> them work fine, but others (although working fine for our test clients
> using axis stubs) seem to have problems for people using .net to
> integrate with our web services.
> 
> I noticed that the methods causing problems are defined a bit
> differently in the wsdl. For example, if we have a java class MyWidget
> and a method in the service interface like:
> 
> public MyWidget[] getMyWidgets()
> 
> then the response type is defined as:
> 
> <wsdl:message name="getMyWidgetsResponse">
> <wsdl:part name="getMyWidgetsReturn" type="impl:ArrayOfMyWidgets"/>
> </wsdl:message>
> 
> The array type gets defined like this:
> 
>    <complexType name="ArrayOfMyWidgets">
>     <complexContent>
>      <restriction base="soapenc:Array">
>       <attribute ref="soapenc:arrayType" wsdl:arrayType="impl:MyWidget[]"/>
>      </restriction>
>     </complexContent>
>    </complexType>
> 
> Other similar methods which don't have the problem are a bit different
> in the .wsdl, in that the return part has a type of
> intf:ArrayOfMyWidgets instead of impl:ArrayOfMyWidgets.
> 
> <wsdl:message name="getMyGoodWidgetsResponse">
> <wsdl:part name="getMyGoodWidgetsReturn" type="int:ArrayOfMyGoodWidgets"/>
> </wsdl:message>
> 
> As far as I can tell the working and non-working methods are basically
> identical -- both have return types that are arrays of objects defined
> by us, and both are converted to web services using the same java2wsdl
> arguments.
> 
> The error message for the people trying to use .net to integrate with
> us looks like this: "Custom tool error: Unable to import
> WebService/Schema. Unable to import
> binding 'MyServiceSoapBinding' from namespace
> 'urn:my_namespace'. Unable to import operation
> 'getMyWidgets'. The datatype 'Array' is missing."
> 
> I have no proof that the impl vs. intf difference is causing the
> problem, but it seems like the most likely candidate. Can anyone
> enlighten me about when java2wsdl uses intf: vs. impl: in defining a
> response type?
> 
> Thanks!
>

Reply via email to