You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Jamie Lyon (JIRA)" <ji...@apache.org> on 2007/08/22 17:24:30 UTC

[jira] Created: (AXIS2C-675) Detach node does not handle namespaces

Detach node does not handle namespaces
--------------------------------------

                 Key: AXIS2C-675
                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
             Project: Axis2-C
          Issue Type: Bug
          Components: xml/om
            Reporter: Jamie Lyon


When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


Re: (AXIS2C-675) Detach node does not handle namespaces

Posted by Dumindu Pallewela <du...@wso2.com>.
Jamie Lyon wrote:
> Yes, I think you're correct. I made the incorrect assumption that
> detaching a node detached the node entirely from the original dom tree,
> effectively making it independent.

Well in our implementation it does. Once you detach the node, neither
the detached node and it's children, nor the rest of the tree has 
references of the other (children of the detached node stays with
it). Thus, you need to do two detach operations to remove any particular
node only. In doing so if you want the namespaces declared above to
be inherited, you have to do it yourself. (However, detach could become a
bit tricky if you are detaching the node while the stax builder is still
building the document.)

> In reality I guess what I want is to
> be able to clone the node.

In this case, axiom couldn't help much. Such a function is not 
implemented in axiom as far as I can see. I agree that having this
function is useful, though.

> 
> Basically when I receive the Soap message you obviously get the whole
> body, what I want to do is after parsing the majority of it into
> relevant data, keep part of it as the original XML -- the metadata.
> Keeping the whole document around seems incredibly inefficient memory
> wise, so I assumed that disconnecting the node would be suitable, but
> when I do this, when I delete the parent some namespace information is
> lost.

It is not lost. It just stays with the parent. :)

If you do not need the original axiom tree intact, this is the best way 
to do it. That is to detach the node and adding the necessary namespaces
traversing upwards through the axiom tree. Why detach function does not
deal with the namespaces is that there are situations where you do not
need the namespaces to be preserved, but the plain node needs to be
detached.

> 
> Unfortunately axiom doesn't have the clone method that DOM specifies
> either, so I can't seem to find any solution for this problem - any
> ideas?

Even in cloning, there are many different ways one would want the node
to be cloned. For example, with/without refrences to the parent,
children; with/without namespaces inherited; in the namespace inherited
situation, should it inherit only the namespaces that are defined to
itself, or with it's children's, etc. So I guess basically what we should
provide is a basic clone function where a parameter is taken to decide if
the clone should include the children too. IIRC, this is how it is defined
in DOM. User will have to do a little coding to sort out the namespaces as
he prefers.

Regards,
Dumindu.


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


RE: (AXIS2C-675) Detach node does not handle namespaces

Posted by Jamie Lyon <jl...@it-innovation.soton.ac.uk>.
Yes, I think you're correct. I made the incorrect assumption that
detaching a node detached the node entirely from the original dom tree,
effectively making it independent. In reality I guess what I want is to
be able to clone the node.

Basically when I receive the Soap message you obviously get the whole
body, what I want to do is after parsing the majority of it into
relevant data, keep part of it as the original XML -- the metadata.
Keeping the whole document around seems incredibly inefficient memory
wise, so I assumed that disconnecting the node would be suitable, but
when I do this, when I delete the parent some namespace information is
lost.

Unfortunately axiom doesn't have the clone method that DOM specifies
either, so I can't seem to find any solution for this problem - any
ideas?

Thanks,
Jamie

> -----Original Message-----
> From: Dumindu Pallewela [mailto:dumindu@wso2.com]
> Sent: 22 August 2007 20:11
> To: Apache AXIS C Developers List
> Subject: Re: (AXIS2C-675) Detach node does not handle namespaces
> 
> Is this really a bug? I don't think that we need to handle this at
axiom
> level. May be I'm missing something here.
> 
> Jamie Lyon (JIRA) wrote:
> > Detach node does not handle namespaces
> > --------------------------------------
> >
> >                  Key: AXIS2C-675
> >                  URL:
https://issues.apache.org/jira/browse/AXIS2C-675
> >              Project: Axis2-C
> >           Issue Type: Bug
> >           Components: xml/om
> >             Reporter: Jamie Lyon
> >
> >
> > When detaching a node from a parent, if the current node or any of
it's
> children have any namespaces declared in it's parent or above, when
the
> node is detached, and the parent freed, any namespace references are
lost.
> >
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: axis-c-dev-help@ws.apache.org


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


Re: (AXIS2C-675) Detach node does not handle namespaces

Posted by Dumindu Pallewela <du...@wso2.com>.
Is this really a bug? I don't think that we need to handle this at axiom level. May be I'm missing something here.

Jamie Lyon (JIRA) wrote:
> Detach node does not handle namespaces
> --------------------------------------
> 
>                  Key: AXIS2C-675
>                  URL: https://issues.apache.org/jira/browse/AXIS2C-675
>              Project: Axis2-C
>           Issue Type: Bug
>           Components: xml/om
>             Reporter: Jamie Lyon
> 
> 
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.
> 


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


[jira] Reopened: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell reopened AXIS2C-675:
----------------------------------


This problem has been encountered again recently, and it appears to me there is a real issue in axiom_node_detach and how it is used.  Consider the case of a SOAP response message in which the server declared the namespaces at one of the outer elements.  Where a wsdl declares an element of type any, not knowing the underlying structure, the generated adb classes detach the node and its subtree and makes the tree available to the client app.  The client app may choose to retain the response structure and the returned object tree for later use.  Yet the upper levels of the om will be discarded when the SOAP response message is discarded upon the next request through the service client. And, thus, Axis will free the namespaces underneath the adb objects.  

It hardly seems fair to place the responsibility on the creator of the tree not to release the namespaces underneath the detached node, when the tree is created as the SOAP message is parsed, and the location of the xml namespace declaration in the message is determined by the other side of the exchange.  

An alternative fix is to re-declare the namespaces on the node being detached, to ensure that it and its children remain valid regardless of what happens to its former parent tree.  Re-declaring the namespaces will cause the ref counts in the namespaces to be incremented, and thus the namespace structures will be retained until both the former parent tree and the detached node tree are released.  

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment: diff.txt

I've updated the attached diff to include two additional changes.

(1) Detach is now included as one of the actions of axiom_node_free, when the node still has a parent.  All the appropriate points in Axis have been changed to take advantage of this.  This allows the free process to perform an internal detach that avoids preserving the integrity of namespace references.

(2) When a node is detached, it determines all the namespaces in its parents that may be inscope for it or its children.  The new action is then to scan the subtree to determine which of these namespaces are actually referenced in the subtree, and to redeclare only the namespaces that are actually referenced.  

Senaka, I think that (2) resolves most of your concern about increasing the size of the payloads with unused namespace declarations, at the cost of scanning the subtree during detach.  I do have a clever idea of something that could be done during attach, to further address your payload size concern without modifying all the namespace reference values.  We could promote the declared namespaces up the tree to a higher parent, detecting if the namespace has already been declared at the higher node.  This would eliminate multiple declarations when multiple detached subtrees are attached to a new tree.  I'm reluctant to implement this, though, as it would make no difference in the case with which I'm familiar of the generated adb stubs.  The adb classes serialize the pieces of the request message directly, without first collecting them into one tree via attach, so repetitive namespace declarations in multiple passed request objects would not be removed.   

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Issue Comment Edited: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12570667#action_12570667 ] 

wtmitchell3 edited comment on AXIS2C-675 at 2/20/08 4:29 AM:
---------------------------------------------------------------

I've updated the attached diff to include two additional changes.

(1) Detach is now included as one of the actions of axiom_node_free, when the node still has a parent.  All the appropriate points in Axis have been changed to take advantage of this.  This allows the free process to perform an internal detach that avoids preserving the integrity of namespace references.

(2) When a node is detached, it determines all the namespaces in its parents that may be inscope for it or its children.  The new action is then to scan the subtree to determine which of these namespaces are actually referenced in the subtree, and to redeclare only the namespaces that are actually referenced.  

Senaka, I think that (2) resolves most of your concern about increasing the size of the payloads with unused namespace declarations, at the cost of scanning the subtree during detach.  I do have a clever idea of something that could be done during attach, to further address your payload size concern without modifying all the namespace reference values.  We could promote the declared namespaces up the tree to a higher parent, detecting if the namespace has already been declared at the higher node.  This would eliminate multiple declarations when multiple detached subtrees are attached to a new tree.  I'm reluctant to implement this, though, as it would make no difference in the case with which I'm familiar of the generated adb stubs.  The adb classes serialize the pieces of the request message directly, without first collecting them into one tree via attach, so repetitive namespace declarations in multiple passed request objects would not be removed.   

This diff is relative to the head.  I will be working on the discussed axiom_node_copy method separately so it can be on a branch.

      was (Author: wtmitchell3):
    I've updated the attached diff to include two additional changes.

(1) Detach is now included as one of the actions of axiom_node_free, when the node still has a parent.  All the appropriate points in Axis have been changed to take advantage of this.  This allows the free process to perform an internal detach that avoids preserving the integrity of namespace references.

(2) When a node is detached, it determines all the namespaces in its parents that may be inscope for it or its children.  The new action is then to scan the subtree to determine which of these namespaces are actually referenced in the subtree, and to redeclare only the namespaces that are actually referenced.  

Senaka, I think that (2) resolves most of your concern about increasing the size of the payloads with unused namespace declarations, at the cost of scanning the subtree during detach.  I do have a clever idea of something that could be done during attach, to further address your payload size concern without modifying all the namespace reference values.  We could promote the declared namespaces up the tree to a higher parent, detecting if the namespace has already been declared at the higher node.  This would eliminate multiple declarations when multiple detached subtrees are attached to a new tree.  I'm reluctant to implement this, though, as it would make no difference in the case with which I'm familiar of the generated adb stubs.  The adb classes serialize the pieces of the request message directly, without first collecting them into one tree via attach, so repetitive namespace declarations in multiple passed request objects would not be removed.   
  
> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment: diff.txt

While working on the routine to copy a node tree, I found it needed the same worker routines as did axiom_node_detach to manage namespaces declared in a parent of the subtree being copied/detached.  As well, looking at these routines they knew a lot more about the internals of elements than they had to do with the node structure.  So, this third version moves the worker routines into om_element.c where they fit a little better.

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment: diff.txt

The attached diff.txt implements a change to attach all the namespaces in scope on an element node being detached to the element, so that the detached node and all its children will still have valid namespace references even if the former parent tree is freed.  

Beyond the obvious change to detach to preserve the namespace, it required cleaning up several places in om_element that would allow an attribute to be attached without the namespace structure it pointed to being declared at the element or one of its parents.  The former code seemed to accept that the namespace uri or prefix was declared somewhere, without requiring that the very same structure be used.  Testing also revealed another anomaly.  Now that guththila behaves like libxml and parses xml:id attributes, with this change the xml: namespace would be preserved in the detached node.  When that structure was subsequently serialized and passed to a remote system not using Axis, in particular a system using the Microsoft xml parser, this unnecessary but allowed xml namespace declaration is diagnosed as an error.  So we should just not emit it on output.  

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment:     (was: diff.txt)

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Closed: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Dushshantha Chandradasa (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Dushshantha Chandradasa closed AXIS2C-675.
------------------------------------------

    Resolution: Invalid

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Commented: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Senaka Fernando (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12545843 ] 

Senaka Fernando commented on AXIS2C-675:
----------------------------------------

This is how we free the om element. ({axis2/c installation home}/axiom/src/om/om_element.c)

 647 AXIS2_EXTERN void AXIS2_CALL
 648 axiom_element_free(
 649     axiom_element_t * om_element,
 650     const axutil_env_t * env)
 651 {
 652     AXIS2_ENV_CHECK(env, AXIS2_FAILURE);
 653     if (!om_element)
 654     {
 655         return;
 656     }
 657 
 658     if (om_element->localname)
 659     {
 660         axutil_string_free(om_element->localname, env);
 661     }
 662     if (om_element->ns)
 663     {
 664         /* it is the responsibility of the element where the namespace is declared to free it */
 665     }
 666     if (om_element->attributes)
 667     {
 668         axutil_hash_index_t *hi;
 669         void *val = NULL;
 670 
 671         for (hi = axutil_hash_first(om_element->attributes, env); hi;
 672              hi = axutil_hash_next(env, hi))
 673         {
 674                 axutil_hash_this(hi, NULL, NULL, &val);
 675 
 676             if (val)
 677             {
 678                 axiom_attribute_free((axiom_attribute_t *) val, env);
 679             }
 680         }
 681         axutil_hash_free(om_element->attributes, env);
 682     }
 683 
 684     if (om_element->namespaces)
 685     {
 686         axutil_hash_index_t *hi;
 687         void *val = NULL;
 688         for (hi = axutil_hash_first(om_element->namespaces, env); hi;
 689              hi = axutil_hash_next(env, hi))
 690         {
 691             axutil_hash_this(hi, NULL, NULL, &val);
 692             if (val)
 693             {
 694                 axiom_namespace_free((axiom_namespace_t *) val, env);
 695             }
 696         }
 697         axutil_hash_free(om_element->namespaces, env);
 698     }
 699     if (om_element->qname)
 700     {
 701         axutil_qname_free(om_element->qname, env);
 702     }
 703     if (om_element->children_iter)
 704     {
 705         axiom_children_iterator_free(om_element->children_iter, env);
 706     }
 707     if (om_element->child_ele_iter)
 708     {
 709         AXIOM_CHILD_ELEMENT_ITERATOR_FREE(om_element->child_ele_iter, env);
 710     }
 711     if (om_element->children_qname_iter)
 712     {
 713         axiom_children_qname_iterator_free(om_element->children_qname_iter,
 714                                            env);
 715     }
 716     if (om_element->text_value)
 717     {
 718         AXIS2_FREE(env->allocator, om_element->text_value);
 719     }
 720     AXIS2_FREE(env->allocator, om_element);
 721 
 722     return;
 723 }

As in lines 662-665, it is the responsibility of the person who declare the namespace to free it. Therefore, if you create it in the parent and free it there, it is lost. Please note that we don't duplicate references or keep counts, as, it seems not required, according to the present logic.

I don't think that there would be a bug unless we try to do some thing un-expected.

Regards,
Senaka

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment: diff.txt

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Assigned: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell reassigned AXIS2C-675:
------------------------------------

    Assignee: Bill Mitchell

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment: diff.txt

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment:     (was: diff.txt)

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment:     (was: diff.txt)

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Commented: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Dinesh Premalal (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12571325#action_12571325 ] 

Dinesh Premalal commented on AXIS2C-675:
----------------------------------------

Bill, I applied the patch and tested in the svn head, for me It didn't give any problem. Ill commit it to the svn head.

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Resolved: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell resolved AXIS2C-675.
----------------------------------

       Resolution: Fixed
    Fix Version/s: 1.3.0

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>             Fix For: 1.3.0
>
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Commented: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Senaka Fernando (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12570666#action_12570666 ] 

Senaka Fernando commented on AXIS2C-675:
----------------------------------------

Hi Bill,

Are you working on the axiom test branch for this issue? If not, please attach a diff to this issue so that we could do some testing too.

Regards,
Senaka

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>         Attachments: diff.txt
>
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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


[jira] Updated: (AXIS2C-675) Detach node does not handle namespaces

Posted by "Bill Mitchell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/AXIS2C-675?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bill Mitchell updated AXIS2C-675:
---------------------------------

    Attachment:     (was: diff.txt)

> Detach node does not handle namespaces
> --------------------------------------
>
>                 Key: AXIS2C-675
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-675
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: xml/om
>            Reporter: Jamie Lyon
>            Assignee: Bill Mitchell
>
> When detaching a node from a parent, if the current node or any of it's children have any namespaces declared in it's parent or above, when the node is detached, and the parent freed, any namespace references are lost.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


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