[
https://issues.apache.org/jira/browse/AXIOM-24?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andreas Veithen updated AXIOM-24:
---------------------------------
Component/s: LLOM
DOOM
Assignee: Andreas Veithen
> OMDocument#serializeAndConsume doesn't consume the document
> -----------------------------------------------------------
>
> Key: AXIOM-24
> URL: https://issues.apache.org/jira/browse/AXIOM-24
> Project: Axiom
> Issue Type: Bug
> Components: DOOM, LLOM
> Affects Versions: 1.2.8
> Reporter: Andreas Veithen
> Assignee: Andreas Veithen
> Priority: Minor
> Fix For: 1.2.11
>
>
> OMDocument#serializeAndConsume doesn't consume the document but instead fully
> builds it.
> This is caused by the following piece of code:
> while (children.hasNext()) {
> OMNodeEx omNode = (OMNodeEx) children.next();
> omNode.internalSerializeAndConsume(writer);
> }
> As described in WSCOMMONS-346, the call to Iterator#next() actually builds
> the returned node, so that the call to internalSerializeAndConsume has the
> same effect as serialization with caching enabled. This means that the code
> fully builds the document.
> Note that the code actually doesn't make sense because once a child (in
> particular the document element) has been consumed, it is not possible to
> retrieve the next sibling. This means that even if WSCOMMONS-346 is solved,
> the code still wouldn't behave as expected. Worse, it would trigger an
> exception.
--
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: [email protected]
For additional commands, e-mail: [email protected]