[ http://issues.apache.org/jira/browse/AXIS-1935?page=all ]
Davanum Srinivas resolved AXIS-1935:
------------------------------------
Resolution: Fixed
fixed.
thanks,
dims
> .NET does not like xmlns=""
> ---------------------------
>
> Key: AXIS-1935
> URL: http://issues.apache.org/jira/browse/AXIS-1935
> Project: Axis
> Type: Bug
> Environment: Axis 1.2RC3 nightly
> Reporter: Tim K
>
> Using wrapped/literal mode, .NET doesn't seem to like this:
> <item xmlns="">
> <?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>
> <login xmlns="http://some.company.com/ws">
> <username>abc</username>
> <password>def</password>
> <options>
> <name>dummy1</name>
> <value xsi:type="xsd:string">dummy_val1</value>
> </options>
> <options>
> <name>dummy2</name>
> <value xsi:type="ns1:ArrayOfNamedValue"
> xmlns:ns1="http://some.company.com/ws">
> <item xmlns="">
> <ns1:name>dummy2-1</ns1:name>
> <ns1:value xsi:type="xsd:string">val2-1</ns1:value>
> </item>
> <item xmlns="">
> <ns1:name>dummy2-2</ns1:name>
> <ns1:value xsi:type="xsd:int">314</ns1:value>
> </item>
> </value>
> </options>
> </login>
> </soapenv:Body>
> </soapenv:Envelope>
> There's a patch for it that I applied to the CVS myself, would you be
> able to fix it? I don't think that xmlns="" is valid.
> Here's the patch that I applied (I'm not sure where it comes from)
> ----
> Modify org.apache.axis.encoding.SerializationContext.serializeActual()
> method.
> Existing:
> // -----------------
> // NOTE: I have seen doc/lit tests that use
> // the type name as the element name in multi-ref cases
> // (for example <soapenc:Array ... >)
> // In such cases the xsi:type is not passed along.
> // -----------------
> // The multiref QName is our own fake name.
> // It may be beneficial to set the name to the
> // type name, but I didn't see any improvements
> // in the interop tests.
> //if (name.equals(multirefQName) && type != null)
> // name = type;
> ser.serialize(elemQName, attributes, value, this);
> return;
> New:
> // -----------------
> // NOTE: I have seen doc/lit tests that use
> // the type name as the element name in multi-ref cases
> // (for example <soapenc:Array ... >)
> // In such cases the xsi:type is not passed along.
> // -----------------
> // The multiref QName is our own fake name.
> // It may be beneficial to set the name to the
> // type name, but I didn't see any improvements
> // in the interop tests.
> //if (name.equals(multirefQName) && type != null)
> // name = type;
> if (elemQName.getNamespaceURI().equals("")){
> elemQName = new
> QName(this.nsStack.getNamespaceURI(""),elemQNa
> me.getLocalPart());
> }
> ser.serialize(elemQName, attributes, value, this);
> return;
> ----
> According to Dims the WSDL should be using elementFormDefault="unqualified"
> but I'm not sure that makes a difference on the server, the server should no
> longer send xmlns=""
> If indeed the WSDL is not correct, then Java2WSDL should be fixed, that's
> what I'm using to generated the WSDL from the Java server side classes.
> Please see this bug for more: http://issues.apache.org/jira/browse/AXIS-1926
--
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