You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by "C Corvin (JIRA)" <ji...@apache.org> on 2006/10/05 13:26:22 UTC

[jira] Created: (WSCOMMONS-105) Unprefixed namespaces serializing as xmlns:xmlns in AXIOM DOM implementation

Unprefixed namespaces serializing as xmlns:xmlns in AXIOM DOM implementation
----------------------------------------------------------------------------

                 Key: WSCOMMONS-105
                 URL: http://issues.apache.org/jira/browse/WSCOMMONS-105
             Project: WS-Commons
          Issue Type: Bug
          Components: AXIOM
         Environment: Windows XP, JRE 1.4.2, AXIOM1.1.1
            Reporter: C Corvin
            Priority: Minor


When transforming an AXIOM DOM document and outputting to another DOM format, an attribute with prefix 'xmlns' and NCName 'xmlns' (creating a QName representation 'xmlns:xmlns') is created.  For example my input:-
<soapenv:Body...>
   <element xmlns="http://example.com/..."> </element>
</soapenv:Body>

is seraialized to:-
<soapenv:Body...>
   <element xmlns:xmlns="http://example.com/..."> </element>
</soapenv:Body>

This appears to be caused by the following two steps:-
1. In org.apache.axiom.om.impl.dom.ElementImpl - getAttributes(), when setting the default attributes at line 1309 an attribute is created with name xmlns and an OMNamespace added with prefix xmlns
2. In org.apache.axiom.om.impl.dom.AttrImpl - getName(), since OMNamespace is not null, the code OMConstants.XMLNS_NS_PREFIX + ":" + this.attrName generates the incorrect output.

I have patched my version of org.apache.axiom.om.impl.dom.AttrImpl with the following code:-
    public String getName() {
        return (this.namespace == null) ? this.attrName
                : (OMConstants.XMLNS_NS_PREFIX.equals(this.attrName) ? this.attrName : OMConstants.XMLNS_NS_PREFIX + ":" + this.attrName);
    }

That seemed to me to be the right thing to do.

I am not sure if anything needs to be done with getQName().  I don't have enough knowledge of the whole chain to know.

-- 
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

        

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: commons-dev-help@ws.apache.org


[jira] Assigned: (WSCOMMONS-105) Unprefixed namespaces serializing as xmlns:xmlns in AXIOM DOM implementation

Posted by "Ruchith Udayanga Fernando (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/WSCOMMONS-105?page=all ]

Ruchith Udayanga Fernando reassigned WSCOMMONS-105:
---------------------------------------------------

    Assignee: Ruchith Udayanga Fernando

> Unprefixed namespaces serializing as xmlns:xmlns in AXIOM DOM implementation
> ----------------------------------------------------------------------------
>
>                 Key: WSCOMMONS-105
>                 URL: http://issues.apache.org/jira/browse/WSCOMMONS-105
>             Project: WS-Commons
>          Issue Type: Bug
>          Components: AXIOM
>         Environment: Windows XP, JRE 1.4.2, AXIOM1.1.1
>            Reporter: C Corvin
>         Assigned To: Ruchith Udayanga Fernando
>            Priority: Minor
>
> When transforming an AXIOM DOM document and outputting to another DOM format, an attribute with prefix 'xmlns' and NCName 'xmlns' (creating a QName representation 'xmlns:xmlns') is created.  For example my input:-
> <soapenv:Body...>
>    <element xmlns="http://example.com/..."> </element>
> </soapenv:Body>
> is seraialized to:-
> <soapenv:Body...>
>    <element xmlns:xmlns="http://example.com/..."> </element>
> </soapenv:Body>
> This appears to be caused by the following two steps:-
> 1. In org.apache.axiom.om.impl.dom.ElementImpl - getAttributes(), when setting the default attributes at line 1309 an attribute is created with name xmlns and an OMNamespace added with prefix xmlns
> 2. In org.apache.axiom.om.impl.dom.AttrImpl - getName(), since OMNamespace is not null, the code OMConstants.XMLNS_NS_PREFIX + ":" + this.attrName generates the incorrect output.
> I have patched my version of org.apache.axiom.om.impl.dom.AttrImpl with the following code:-
>     public String getName() {
>         return (this.namespace == null) ? this.attrName
>                 : (OMConstants.XMLNS_NS_PREFIX.equals(this.attrName) ? this.attrName : OMConstants.XMLNS_NS_PREFIX + ":" + this.attrName);
>     }
> That seemed to me to be the right thing to do.
> I am not sure if anything needs to be done with getQName().  I don't have enough knowledge of the whole chain to know.

-- 
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

        

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: commons-dev-help@ws.apache.org


[jira] Resolved: (WSCOMMONS-105) Unprefixed namespaces serializing as xmlns:xmlns in AXIOM DOM implementation

Posted by "Ruchith Udayanga Fernando (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/WSCOMMONS-105?page=all ]

Ruchith Udayanga Fernando resolved WSCOMMONS-105.
-------------------------------------------------

    Resolution: Fixed

Fixed in SVN revision : 453309 - Applied the proposed patch.

Thanks,
Ruchith

> Unprefixed namespaces serializing as xmlns:xmlns in AXIOM DOM implementation
> ----------------------------------------------------------------------------
>
>                 Key: WSCOMMONS-105
>                 URL: http://issues.apache.org/jira/browse/WSCOMMONS-105
>             Project: WS-Commons
>          Issue Type: Bug
>          Components: AXIOM
>         Environment: Windows XP, JRE 1.4.2, AXIOM1.1.1
>            Reporter: C Corvin
>         Assigned To: Ruchith Udayanga Fernando
>            Priority: Minor
>
> When transforming an AXIOM DOM document and outputting to another DOM format, an attribute with prefix 'xmlns' and NCName 'xmlns' (creating a QName representation 'xmlns:xmlns') is created.  For example my input:-
> <soapenv:Body...>
>    <element xmlns="http://example.com/..."> </element>
> </soapenv:Body>
> is seraialized to:-
> <soapenv:Body...>
>    <element xmlns:xmlns="http://example.com/..."> </element>
> </soapenv:Body>
> This appears to be caused by the following two steps:-
> 1. In org.apache.axiom.om.impl.dom.ElementImpl - getAttributes(), when setting the default attributes at line 1309 an attribute is created with name xmlns and an OMNamespace added with prefix xmlns
> 2. In org.apache.axiom.om.impl.dom.AttrImpl - getName(), since OMNamespace is not null, the code OMConstants.XMLNS_NS_PREFIX + ":" + this.attrName generates the incorrect output.
> I have patched my version of org.apache.axiom.om.impl.dom.AttrImpl with the following code:-
>     public String getName() {
>         return (this.namespace == null) ? this.attrName
>                 : (OMConstants.XMLNS_NS_PREFIX.equals(this.attrName) ? this.attrName : OMConstants.XMLNS_NS_PREFIX + ":" + this.attrName);
>     }
> That seemed to me to be the right thing to do.
> I am not sure if anything needs to be done with getQName().  I don't have enough knowledge of the whole chain to know.

-- 
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

        

---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: commons-dev-help@ws.apache.org