You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Michael Merz (JIRA)" <ax...@ws.apache.org> on 2006/02/21 07:42:25 UTC
[jira] Commented: (AXIS-2413) .NET interop: response documents
still contain xmlns="" (inconsistent with WSDL)
[ http://issues.apache.org/jira/browse/AXIS-2413?page=comments#action_12367153 ]
Michael Merz commented on AXIS-2413:
------------------------------------
It looks like a case statement should be added to use the default namespace if the elementFormDefault is qualified and the namespace is an empty string -- instead of actually adding the "" (empty string) namespace to the element.
> .NET interop: response documents still contain xmlns="" (inconsistent with WSDL)
> --------------------------------------------------------------------------------
>
> Key: AXIS-2413
> URL: http://issues.apache.org/jira/browse/AXIS-2413
> Project: Apache Axis
> Type: Bug
> Versions: 1.2.1, 1.3
> Reporter: Michael Merz
>
> While the WSDL is generated correctly (since bug #1935 has been fixed), there is a problem with the actual XML response generated by the Axis Web Service:
> The WSDL:
> <wsdl:types>
> <schema elementFormDefault="qualified" targetNamespace="http://iconclude.com/repairsystem/types" xmlns="http://www.w3.org/2001/XMLSchema">
> <complexType name="ArrayOf_xsd_string">
> <sequence>
> <element maxOccurs="unbounded" minOccurs="0" name="item" type="xsd:string" />
> </sequence>
> </complexType>
> <complexType name="RSRepairsList">
> <sequence>
> <element name="repairs" nillable="true" type="impl:ArrayOf_xsd_string" />
> </sequence>
> </complexType>
> <element name="listReturn" type="impl:RSRepairsList" />
> ...
> An XML response document sent by that very service -- and has the wrong namespace (not compatible with the schema):
> <?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>
> <listReturn xmlns="http://iconclude.com/repairsystem/types">
> <repairs>
> <item xmlns="">/Library/drt/testcase1003/main</item>
> <item xmlns="">/Library/drt/executioncontexttest/main</item>
> <item xmlns="">/Library/drt/testcase683/Test_Data_Entry_01</item>
> <item xmlns="">/Library/drt/testcase794/testflow</item>
> </repairs>
> </listReturn>
> </soapenv:Body>
> </soapenv:Envelope>
> My use case is to generate a .NET client by pointing Microsoft's wsdl.exe to the URL of the live service. In accordance with the WSDL, wsdl.exe expects the namespace for item to be "http://iconclude.com/repairsystem/types", the same namespace as for the array. However, Axis sends the response using namespace="" for "item".
> An easy hack to get this working is to override the automatically generated client with C# attributes; however, since this means modifying generated code, it really is a hack rather than a solution.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira