[ 
http://issues.apache.org/jira/browse/AXIS-1827?page=comments#action_61474 ]
     
Konstantin Kasatkin commented on AXIS-1827:
-------------------------------------------

Of cource Jongjin, I can remove it, but I think it is not right way to fix the 
problem. It smells slightly of shamanism.

Why without declaration it doesn't cause error? And one more thing, if I remove 
this tag I will have a few silent exceptions in the debug log (see below).

I think developers team should review this issue and provide their explanation 
and a means how to get it round by right way. 

Davanum, what are your fillings about that?


------------------------------------------ CUT OF LOG -----------------------

7551 [main] DEBUG org.apache.axis.i18n.ProjectResourceBundle  - 
org.apache.axis.i18n.resource::handleGetObject(noService
10)
- Exception:
org.apache.axis.ConfigurationException: No service named AuthServiceSoap is 
available
org.apache.axis.ConfigurationException: No service named AuthServiceSoap is 
available
        at 
org.apache.axis.configuration.FileProvider.getService(FileProvider.java:233)
        at org.apache.axis.AxisEngine.getService(AxisEngine.java:311)
        at 
org.apache.axis.MessageContext.setTargetService(MessageContext.java:755)
        at org.apache.axis.client.Call.invoke(Call.java:2660)
        at org.apache.axis.client.Call.invoke(Call.java:2413)
        at org.apache.axis.client.Call.invoke(Call.java:2336)
        at org.apache.axis.client.Call.invoke(Call.java:1793)
        at 
com.estylesoft.casau.service.AuthServiceSoapStub.getParameters(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentFactory.loadCache(CASAgentFactory.java:486)
        at 
com.estylesoft.casau.client.CASAgentFactory.resetCache(CASAgentFactory.java:285)
        at 
com.estylesoft.casau.client.CASAgentFactory.initialize(CASAgentFactory.java:259)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentProxy.invoke(CASAgentProxy.java:39)
        at $Proxy0.initialize(Unknown Source)
        at Test.main(Test.java:25)

        at 
org.apache.axis.configuration.FileProvider.getService(FileProvider.java:233)
        at org.apache.axis.AxisEngine.getService(AxisEngine.java:311)
        at 
org.apache.axis.MessageContext.setTargetService(MessageContext.java:755)
        at org.apache.axis.client.Call.invoke(Call.java:2660)
        at org.apache.axis.client.Call.invoke(Call.java:2413)
        at org.apache.axis.client.Call.invoke(Call.java:2336)
        at org.apache.axis.client.Call.invoke(Call.java:1793)
        at 
com.estylesoft.casau.service.AuthServiceSoapStub.getParameters(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentFactory.loadCache(CASAgentFactory.java:486)
        at 
com.estylesoft.casau.client.CASAgentFactory.resetCache(CASAgentFactory.java:285)
        at 
com.estylesoft.casau.client.CASAgentFactory.initialize(CASAgentFactory.java:259)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentProxy.invoke(CASAgentProxy.java:39)
        at $Proxy0.initialize(Unknown Source)
        at Test.main(Test.java:25)



7561 [main] DEBUG org.apache.axis.i18n.ProjectResourceBundle  - 
org.apache.axis.i18n.resource::handleGetObject(noService
10)
- Exception:
org.apache.axis.ConfigurationException: No service named 
http://tempuri.org/GetParameters is available
org.apache.axis.ConfigurationException: No service named 
http://tempuri.org/GetParameters is available
        at 
org.apache.axis.configuration.FileProvider.getService(FileProvider.java:233)
        at org.apache.axis.AxisEngine.getService(AxisEngine.java:311)
        at 
org.apache.axis.MessageContext.setTargetService(MessageContext.java:755)
        at 
org.apache.axis.transport.http.HTTPTransport.setupMessageContextImpl(HTTPTransport.java:89)
        at 
org.apache.axis.client.Transport.setupMessageContext(Transport.java:46)
        at org.apache.axis.client.Call.invoke(Call.java:2708)
        at org.apache.axis.client.Call.invoke(Call.java:2413)
        at org.apache.axis.client.Call.invoke(Call.java:2336)
        at org.apache.axis.client.Call.invoke(Call.java:1793)
        at 
com.estylesoft.casau.service.AuthServiceSoapStub.getParameters(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentFactory.loadCache(CASAgentFactory.java:486)
        at 
com.estylesoft.casau.client.CASAgentFactory.resetCache(CASAgentFactory.java:285)
        at 
com.estylesoft.casau.client.CASAgentFactory.initialize(CASAgentFactory.java:259)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentProxy.invoke(CASAgentProxy.java:39)
        at $Proxy0.initialize(Unknown Source)
        at Test.main(Test.java:25)

        at 
org.apache.axis.configuration.FileProvider.getService(FileProvider.java:233)
        at org.apache.axis.AxisEngine.getService(AxisEngine.java:311)
        at 
org.apache.axis.MessageContext.setTargetService(MessageContext.java:755)
        at 
org.apache.axis.transport.http.HTTPTransport.setupMessageContextImpl(HTTPTransport.java:89)
        at 
org.apache.axis.client.Transport.setupMessageContext(Transport.java:46)
        at org.apache.axis.client.Call.invoke(Call.java:2708)
        at org.apache.axis.client.Call.invoke(Call.java:2413)
        at org.apache.axis.client.Call.invoke(Call.java:2336)
        at org.apache.axis.client.Call.invoke(Call.java:1793)
        at 
com.estylesoft.casau.service.AuthServiceSoapStub.getParameters(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentFactory.loadCache(CASAgentFactory.java:486)
        at 
com.estylesoft.casau.client.CASAgentFactory.resetCache(CASAgentFactory.java:285)
        at 
com.estylesoft.casau.client.CASAgentFactory.initialize(CASAgentFactory.java:259)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at 
com.estylesoft.casau.client.CASAgentProxy.invoke(CASAgentProxy.java:39)
        at $Proxy0.initialize(Unknown Source)
        at Test.main(Test.java:25)

> Unnecessary empty-valued attribute "xmlns" in Envelope parameter values
> -----------------------------------------------------------------------
>
>          Key: AXIS-1827
>          URL: http://issues.apache.org/jira/browse/AXIS-1827
>      Project: Axis
>         Type: Bug
>   Components: Serialization/Deserialization
>     Versions: 1.2
>  Environment: Windows 2000 Pro SP4 JDK 1.4.2-05
>     Reporter: Konstantin Kasatkin
>     Priority: Blocker
>  Attachments: AuthService.wsdl, example.zip
>
> There is a problem of interaction Axis WebService Client (as console 
> application) with Microsoft WebService Server (as .Net application)
> Here WEBService method description is from MS side:
> <?xml version="1.0" encoding="utf-8"?>
> <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
> xmlns:xsd="http://www.w3.org/2001/XMLSchema"; 
> xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
>   <soap:Body>
>     <SetParameterValues xmlns="http://tempuri.org/";>
>       <strUser>string</strUser>
>       <strBusinessSystem>string</strBusinessSystem>
>       <strParameter>string</strParameter>
>       <strValues>
>         <string>string</string>
>         <string>string</string>
>       </strValues>
>     </SetParameterValues>
>   </soap:Body>
> </soap:Envelope>
> Here real Axis SOAP envelope is from Java applicaton:
> <?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>
>     <SetParameterValues xmlns="http://tempuri.org/";>
>         <strUser>test</strUser>
>         <strBusinessSystem>SYS</strBusinessSystem>
>         <strParameter>100</strParameter>
>         <strValues>
>            <string xmlns="">123</string>
>            <string xmlns="">234</string>
>         </strValues>
>     </SetParameterValues>
>    </soapenv:Body>
> </soapenv:Envelope>
> As you can see in section <strValues> all of inner elements contain attribute 
> xmlns="".
> This notation does not work in MS (It is very strange, but I don't know why).
> MS ignores all such lines and returns empty collection.
> If I'm removing empty "xmlns" attributes all works fine.
> I've already found the point where you can place fix code.
> CLASS: org.apache.axis.encoding.SerializationContext
> CODE:
>                 if (!(map.getNamespaceURI().equals(Constants.NS_URI_XMLNS) && 
> map.getPrefix().equals("xmlns")) &&
>                     !(map.getNamespaceURI().equals(Constants.NS_URI_XML) && 
> map.getPrefix().equals("xml")))
> It need to be added one more check in the condition. Here modified condition
>                 if (!(map.getNamespaceURI().equals(Constants.NS_URI_XMLNS) && 
> map.getPrefix().equals("xmlns")) &&
>                     !(map.getNamespaceURI().equals(Constants.NS_URI_XML) && 
> map.getPrefix().equals("xml")) &&
>                     !map.getNamespaceURI().equals(""))
> Maybe I didn't take into account something, but after this change all have 
> worked fine.

-- 
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
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira

Reply via email to