[ 
https://issues.apache.org/jira/browse/AXIS2-4603?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12800971#action_12800971
 ] 

Andreas Veithen commented on AXIS2-4603:
----------------------------------------

If you plug an XOPEncodingStreamReader in between the XMLStreamReader you get 
from Axiom and JAXB's unmarshaller (and remove the call to setInlineMTOM), you 
should be able to get this for free without any changes to Axiom. You can then 
use XOPEncodingStreamReader#getDataHandler to get the DataHandlers for the 
xop:Include elements produced by the encoder. In addition this is also more 
robust since it is designed to work correctly regardless of the origin of the 
StAX stream (cached from parser, non-cached from parser, Axiom tree created 
programmatically).

> JAX-WS: JAXB Unmarshal code no longer has direct access to the required 
> XMLStreamReader
> ---------------------------------------------------------------------------------------
>
>                 Key: AXIS2-4603
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4603
>             Project: Axis2
>          Issue Type: Bug
>          Components: jaxws
>            Reporter: Rich Scheuerle
>            Assignee: Rich Scheuerle
>   Original Estimate: 120h
>  Remaining Estimate: 120h
>
> Background:
> The JAX-WS programming model uses JAX-B objects as the representation of user 
> business data.
> The JAX-WS runtime in Axis2 is responsibile for building the JAXBContext and 
> marshaling and umarshaling the JAX-B objects.
> The marshaling and unmarshaling includes marshaling and unmarshaling MTOM 
> data.
> When unmarshaling JAXB, the streaming, non-cached parser (original 
> XMLStreamReader) or cached XMLStreamReader (OMStaXWrapper) is used
> as the input XMLStreamReader for the JAXB unmarshal code.
> Problem:
> The Axiom implementation has been changed such that the non-cached parser is 
> now wrapped by one or more other axiom wrappers or delegates.
> Failure to the access the original steaming parser has resulted in poorer 
> performance in some cases when unmarshaling
> WSCommons-518 now exposes additional methods to access the original 
> non-cached parser.

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

Reply via email to