cxf-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Diesler (JIRA)" <>
Subject [jira] Commented: (CXF-1261) Handler does not see XOP message properly
Date Thu, 06 Dec 2007 12:40:43 GMT


Thomas Diesler commented on CXF-1261:

Daniel sais:

The main reason is that CXF does not make any attempt to "inline" the XOP 
attachments into the SAAJ model when reading a SOAP message.    I don't 
see anything in the specs that requires it to do so and doing so would 
be a performance and memory usage nightmare.  They ARE available in the 
soap message as attachments.  

When WRITING a soap message, if we're not streaming (aka: SAAJ handlers  
are registered), we actually turn off the XOP processing so the data 
gets in-lined.   Nothing goes on the wire in XOP form then though.  It's 
always in inline form.   That's why the other tests pass.   They have 
SAAJ handlers on the writing side.     (FYI:  the RI also does this.   
If SAAJ handlers are there, the on the wire is inlined.)    Originally, 
we didn't even turn it off  on the writing side, but I definitely can 
see the case where having it in lined is important for the WS security 
cases.   However, I'm actually leaning toward setting it up so that the 
security stuff turns it off and the default is to leave it on.   That 
would cause several more of your XOP tests to fail.

For the most part, I really hate the idea of base64 encoding a bunch of 
data when we don't need to. 

> Handler does not see XOP message properly
> -----------------------------------------
>                 Key: CXF-1261
>                 URL:
>             Project: CXF
>          Issue Type: Sub-task
>    Affects Versions: 2.0.3
>            Reporter: Thomas Diesler
> [tdiesler@tddell trunk]$ ant
>     [junit] Tests run: 7, Failures: 0, Errors: 7, Time elapsed: 9.393 sec
>     [junit] Test FAILED
>     [junit] java.lang.IllegalStateException: XOP request not properly inlined
>     [junit]     at
>     [junit]     at
>     [junit]     at org.jboss.wsf.test.GenericHandler.handleMessage(
>     [junit]     at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeHandleMessage(
>     [junit]     at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeHandlerChain(
>     [junit]     at org.apache.cxf.jaxws.handler.HandlerChainInvoker.invokeProtocolHandlers(
>     [junit]     at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessageInternal(
>     [junit]     at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(
>     [junit]     at org.apache.cxf.jaxws.handler.soap.SOAPHandlerInterceptor.handleMessage(
>     [junit]     at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(
>     [junit]     at org.apache.cxf.endpoint.ClientImpl.onMessage(
>     [junit]     at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(
>     [junit]     at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(
>     [junit]     at org.apache.cxf.transport.AbstractConduit.close(
>     [junit]     at org.apache.cxf.transport.http.HTTPConduit.close(
>     [junit]     at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(
>     [junit]     at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(
>     [junit]     at org.apache.cxf.endpoint.ClientImpl.invoke(
>     [junit]     at org.apache.cxf.endpoint.ClientImpl.invoke(
>     [junit]     at org.apache.cxf.frontend.ClientProxy.invokeSync(
>     [junit]     at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(
>     [junit]     at $Proxy22.echoDataHandler(Unknown Source)
>     [junit]     at

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

View raw message