cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Kulp <daniel.k...@iona.com>
Subject Re: Http Request Header problem with mtom enabled
Date Wed, 06 Dec 2006 17:23:53 GMT

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