cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Li, Tao \(Tom\)" <Tao...@iona.com>
Subject RE: Http Request Header problem with mtom enabled
Date Thu, 07 Dec 2006 07:55:35 GMT

I just add a SoapActionInterceptor and let it executed 
before AttachmentOutInterceptor.
Thanks for all of your help.


> -----Original Message-----
> From: Daniel Kulp [mailto:daniel.kulp@iona.com]
> Sent: 2006?12?6? 9:24
> To: cxf-dev@incubator.apache.org
> Subject: Re: Http Request Header problem with mtom enabled
> 
> 
> 
> Couldn't the SOAP binding add a "SoapActionInterceptor" in 
> the "logical" phase 
> of the interceptor chain  (or someplace else very early) 
> which only purpose 
> is to add the appropriate SOAPAction header?   It would be a 
> very small 
> interceptor to write.
> 
> Dan
> 
> 
> On Wednesday 06 December 2006 11:26, Dan Diephouse wrote:
> > The whole point of the refactoring though was to not create a cached
> > stream. The cached stream imposes a significant performance 
> penalty. I'm ok
> > with creating an OutputStream that writes the prolog on the 
> first write()
> > though. That retains the benefits and allows us to delay 
> resolution of the
> > soapaction.
> >
> > - Dan
> >
> > On 12/6/06, Li, Tao (Tom) <Tao.Li@iona.com> wrote:
> > > I think the soap action should be set at SoapOutInterceptor, and
> > > retrieved at SoapInPostInterceptor.
> > > To keep our core module not polluted with Soap, it's 
> better that we
> > > let AttachmentOutInterceptor create a cached stream to support the
> > > inner sub chain interceptors changing request headers..
> > >
> > > > -----Original Message-----
> > > > From: Dan Diephouse [mailto:dan@envoisolutions.com]
> > > > Sent: 2006?12?5? 19:33
> > > > To: cxf-dev@incubator.apache.org
> > > > Subject: Re: Http Request Header problem with mtom enabled
> > > >
> > > >
> > > > Hmm good point. There are one of two solutions. One, set the
> > > > SOAPAction
> > > > header earlier. Two, create a wrapped output stream (which is
> > > > easy enough):
> > > >
> > > > new OutputStream() {
> > > >   public void write() {
> > > >     // on the first write, serialize the prolog:
> > > >     attachmentSerializer.serializeProlog();
> > > >   }
> > > > }
> > > >
> > > > Or something like that. :-)
> > > >
> > > > Where are you trying to set the SOAPAction?
> > > >
> > > > - Dan
> > > >
> > > > On 12/5/06, Li, Tao (Tom) <Tao.Li@iona.com> wrote:
> > > > > Hi Dan.D,
> > > > >
> > > > > Currently the AttachmentOutInterceptor will flush the
> > > >
> > > > header part of mime
> > > >
> > > > > stream to server before the binding & databinding
> > > >
> > > > processing, it caused a
> > > >
> > > > > problem that during binding (soap) & databinding
> > > >
> > > > processing, the request
> > > >
> > > > > header can't be added because the stream has already 
> been flushed.
> > > > > So soap binding cant' add SOAPAction header when mtom is
> > > >
> > > > enabled. I think
> > > >
> > > > > we still needs to do caching in mtom enabled case.
> > > > >
> > > > > I will add a comment on jira 283 for this.
> > > > >
> > > > > Regards
> > > > > Tom Li
> > > > > Software Engineer
> > > > >
> > > > > IONA Asia Pacific Software Development Center
> > > > > 2/F, Unit A, Information Center
> > > > > Zhongguancun Software Park Haidian District,
> > > > > Beijing, P.R.China (100094)
> > > > >
> > > > > Tel: +86-10-82825151 - 519
> > > > > Fax: +86-10-82825210
> > > > > Email: tom.li@iona.com
> > > >
> > > > --
> > > > Dan Diephouse
> > > > Envoi Solutions
> > > > http://envoisolutions.com | http://netzooid.com/blog
> 
> -- 
> J. Daniel Kulp
> Principal Engineer
> IONA
> P: 781-902-8727    C: 508-380-7194
> daniel.kulp@iona.com
> 

Mime
View raw message