You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cxf.apache.org by Daniel Kulp <da...@iona.com> on 2006/10/24 17:38:49 UTC

Re: Problem with interceptor chain

Jervis,

> I've come across an issue when trying to make SOAPHandlerInterceptor
> able to read SOAPMessage in the outbound direction.  Basically the
> problem is that our current outbound interceptor chain is not a flat
> chain, it looks like below:
>
> WrapperClassOutInterceptor
> LogicalHandlerInterceptor
> MessageSenderInterceptor
>     StaxOutInterceptor
>     SOAPHandlerInterceptor
>     SoapOutInterceptor
>         WrappedOutInterceptor
>         BareOutInterceptor


Out of curiosity, why couldn't the SOAPHandlerInterceptor do the same 
thing.   Make it:

 WrapperClassOutInterceptor
 LogicalHandlerInterceptor
 MessageSenderInterceptor
    StaxOutInterceptor
    SOAPHandlerInterceptor
       SoapOutInterceptor
           WrappedOutInterceptor
           BareOutInterceptor

Basically, the SOAPHandlerInterceptor would create a StAX writer that 
writes to the SAAJ model/DOM and then calls:
message.getInterceptorChain().doIntercept(message);

When that returns, the SAAJ model should be fully built up at which point 
you can call  the SAAJ handlers.  When they are done, stream the SAAJ to 
the output stream.


-- 
J. Daniel Kulp
Principal Engineer
IONA
P: 781-902-8727    C: 508-380-7194   F:781-902-8001
daniel.kulp@iona.com

Re: Problem with interceptor chain

Posted by Dan Diephouse <da...@envoisolutions.com>.
Daniel Kulp wrote:

>Jervis,
>
>  
>
>>I've come across an issue when trying to make SOAPHandlerInterceptor
>>able to read SOAPMessage in the outbound direction.  Basically the
>>problem is that our current outbound interceptor chain is not a flat
>>chain, it looks like below:
>>
>>WrapperClassOutInterceptor
>>LogicalHandlerInterceptor
>>MessageSenderInterceptor
>>    StaxOutInterceptor
>>    SOAPHandlerInterceptor
>>    SoapOutInterceptor
>>        WrappedOutInterceptor
>>        BareOutInterceptor
>>    
>>
>
>
>Out of curiosity, why couldn't the SOAPHandlerInterceptor do the same 
>thing.   Make it:
>
> WrapperClassOutInterceptor
> LogicalHandlerInterceptor
> MessageSenderInterceptor
>    StaxOutInterceptor
>    SOAPHandlerInterceptor
>       SoapOutInterceptor
>           WrappedOutInterceptor
>           BareOutInterceptor
>
>Basically, the SOAPHandlerInterceptor would create a StAX writer that 
>writes to the SAAJ model/DOM and then calls:
>message.getInterceptorChain().doIntercept(message);
>
>When that returns, the SAAJ model should be fully built up at which point 
>you can call  the SAAJ handlers.  When they are done, stream the SAAJ to 
>the output stream.
>
>
>  
>
Because what happens if there is an interceptor after the 
SOAPHandlerInterceptor which wants to use the SAAJ/DOM tree? Like 
WS-Security?

- Dan

-- 
Dan Diephouse
(616) 971-2053
Envoi Solutions LLC
http://netzooid.com