[ 
https://issues.apache.org/jira/browse/AXIOM-96?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andreas Veithen updated AXIOM-96:
---------------------------------

    Fix Version/s:     (was: 1.2.11)
                   1.2.9

> StreamingOMSerializer expands OMSourcedElement nodes
> ----------------------------------------------------
>
>                 Key: AXIOM-96
>                 URL: https://issues.apache.org/jira/browse/AXIOM-96
>             Project: Axiom
>          Issue Type: Bug
>            Reporter: Rich Scheuerle
>            Assignee: Rich Scheuerle
>             Fix For: 1.2.9
>
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Background:
> An OM tree may have one or more OMSourcedElement nodes in the tree.  An 
> OMSourcedElement represents an OMElement but contains its content in an 
> alternative form (String, bytes, JAXB object etc.)
> The OMSourcedElement nodes allow OM to represent a message with a much 
> flatter tree. 
> Problem:
> If an OM tree containing OMSourcedElements is serialized with the 
> StreamingOMSerializer, the OMSourcedElements are inadvertently expanded.  
> This extra processing is slow and unnecessary.   
> Solution:
> The StreamingOMSerializer uses an OMNavigator to walk the incoming 
> XMLStreamReader events.   When the OMNavigator encounters a OMSourcedElement, 
> it expands the OMSourcedElement so that it can generated the XMLStreamReader 
> events for the content.
> The solution is to add a property to the OMNavigator to allow it to tree 
> OMSourcedElements as leaf objects.   In such cases, the StreamingOMSerializer 
> can gain access to the OMDataSource and write it out directly.   This 
> increases performance because it eliminates the expansion of the tree.
> I am working on a series of validation tests and a code solution.

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

Reply via email to