Oleg

I have a scenario where if I call via SOAP POST it works fine. When I call
by HTTP GET I get this

2007-10-17 17:27:01,718 [10.62.75.83-pzfdell] [HttpServerWorker-1] ERROR
ServerHandler Unexpected HT
TP protocol error : Transfer-encoding header already present
org.apache.http.ProtocolException: Transfer-encoding header already present
        at org.apache.http.protocol.ResponseContent.process(
ResponseContent.java:67)
        at org.apache.http.protocol.BasicHttpProcessor.process(
BasicHttpProcessor.java:304)
        at org.apache.synapse.transport.nhttp.ServerHandler.commitResponse(
ServerHandler.java:220)
        at
org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse
(HttpCoreNIOSender.
java:350)
        at org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(
HttpCoreNIOSender.java:215)
        at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
        at org.apache.synapse.core.axis2.Axis2Sender.sendBack(
Axis2Sender.java:104)
        at org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send(
Axis2SynapseEnvironment.java:1
96)

So, I don't think its just the Fault case :(

Paul

On 10/17/07, Paul Fremantle <[EMAIL PROTECTED]> wrote:
>
> If I can get the success case working I'll be happy for now. Its just I
> thought I had that case and that was failing too :(
>
> Let me dig around a bit. However, I think we need to get this fixed and
> solid before 1.1 . I think there's also a problem with the logic, which is
> that the assumption is that if there are no parameters then I don't want to
> invoke the service - I just want to see the service HTML. However, I don't
> agree with that - I think there are lots of cases where I want no parameters
> to equate to an empty body. It may be that the same problem exists in the
> standard Axis2 HTTP tran as well.
>
> Paul
>
> On 10/17/07, Oleg Kalnichevski <[EMAIL PROTECTED]> wrote:
> >
> > On Wed, 2007-10-17 at 16:01 +0100, Paul Fremantle wrote:
> > > Oleg
> > >
> > > Do you think the problem will still happen on the non-fault case.
> > >
> > > Paul
> > >
> >
> > No, I do not think so. Only fault responses appear affected. I can try
> > to come up with a fix for the bug if the issue is pressing.
> >
> > Cheers
> >
> > Oleg
> >
> >
> > > On 10/17/07, Oleg Kalnichevski <[EMAIL PROTECTED]> wrote:
> > >         On Tue, 2007-10-16 at 19:36 +0100, Paul Fremantle wrote:
> > >         > Using the QA build that was posted a couple of days ago, I
> > >         deployed
> > >         > sample 100 and typed
> > >         >
> > >         http://localhost:8080/soap/StockQuoteProxy/getQuote?symbol=IBM
> > >         into my
> > >         > browser.
> > >         >
> > >
> > >         Asankha, Paul
> > >
> > >         This is what I think is the cause of the problem:
> > >
> > >         The ServerWorker class uses the following code to process HTTP
> > >         GET
> > >         requests
> > >
> > >         ==================
> > >         try {
> > >           serverHandler.commitResponse (conn, response);
> > >           HTTPTransportUtils.processHTTPGetRequest(
> > >             msgContext, os,
> > >             (request.getFirstHeader(SOAPACTION) != null ?
> > >             request.getFirstHeader (SOAPACTION).getValue() : null),
> > >             request.getRequestLine().getUri(),
> > >             cfgCtx,
> > >             parameters);
> > >         } catch (AxisFault axisFault) {
> > >           handleException("Error processing GET request for: " +
> > >           request.getRequestLine().getUri(), axisFault);
> > >         }
> > >         ==================
> > >
> > >         (1) ServerWorker submits 200 response head prior to calling
> > >         HTTPTransportUtils.processHTTPGetRequest
> > >         (2) AxisFault gets thrown somewhere inside
> > >         #processHTTPGetRequest
> > >         (3) The #handleException method is called to handle the fault
> > >         (4) At some point AxisEngine#sendFault(faultContext) gets
> > >         invoked
> > >         (5) AxisEngine attempts to submit an 500 response head
> > >         (6) Things get nasty
> > >
> > >         I do not know Axis2 well enough to be able to fix the problem
> > >         myself
> > >         easily, but I could dig in deeper into the Axis2 code if need
> > >         be.
> > >
> > >         Apparently the bit of code above needs some work.
> > >
> > >         The NIO HTTP transport in Axis2 proper is very likely to be
> > >         affected as
> > >         well.
> > >
> > >         Cheers
> > >
> > >         Oleg
> > >
> > >
> > >         > 2007-10-16 19:33:59,609 [10.0.0.3-pzfdell]
> > >         [HttpClientWorker-1] ERROR
> > >         > ServerHand
> > >         > ler Unexpected HTTP protocol error : Transfer-encoding
> > >         header already
> > >         > present
> > >         > org.apache.http.ProtocolException : Transfer-encoding header
> > >         already
> > >         > present
> > >         >         at
> > >         >
> > >         org.apache.http.protocol.ResponseContent.process(
> > ResponseContent.java
> > >         > :67)
> > >         >         at
> > >         >
> > >         org.apache.http.protocol.BasicHttpProcessor.process
> > (BasicHttpProcesso
> > >         > r.java:304)
> > >         >         at
> > >         >
> > >
> > org.apache.synapse.transport.nhttp.ServerHandler.commitResponse(Serve
> > >         > rHandler.java:220)
> > >         >         at
> > >         >
> > >
> > org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRespons
> > >         > e(HttpCoreNIOSender.java :350)
> > >         >         at
> > >         >
> > >         org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke
> > (HttpCoreN
> > >         > IOSender.java :215)
> > >         >         at
> > >         > org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
> > >         >         at
> > >         org.apache.synapse.core.axis2.Axis2Sender.sendBack
> > >         > (Axis2Sender.java:1
> > >         > 04)
> > >         >
> > >         >
> > >         > On 10/16/07, Asankha C. Perera <[EMAIL PROTECTED]> wrote:
> > >         >         Paul
> > >         >
> > >         >         Can you re-create this with the sample #100 etc?
> > >         Please send
> > >         >         me details to reproduce.. AFAIK we do not have a
> > >         test case for
> > >         >         GET access... I will try this out and see what may
> > >         be wrong..
> > >         >         I believe you are not doing a load test
> > >         >
> > >         >         asankha
> > >         >
> > >         >
> > >         >         Paul Fremantle wrote:
> > >         >         > I'm trying to use GET on a proxy service hosted in
> > >         Synapse.
> > >         >         > I'm getting this error:
> > >         >         >
> > >         >         > 2007-10-16 15:53:12,421 [10.0.0.3-pzfdell] [I/O
> > >         dispatcher
> > >         >         > 7]  INFO PipeImpl Usi
> > >         >         > ng simulated buffered Pipes for event-driven to
> > >         stream IO
> > >         >         > bridging
> > >         >         > 2007-10-16 15:53:12,906 [ 10.0.0.3-pzfdell]
> > >         >         > [HttpServerWorker-1] ERROR ServerHand
> > >         >         > ler Unexpected HTTP protocol error :
> > >         Transfer-encoding
> > >         >         > header already present
> > >         >         > org.apache.http.ProtocolException:
> > >         Transfer-encoding header
> > >         >         > already present
> > >         >         >         at
> > >         >         >
> > >         org.apache.http.protocol.ResponseContent.process(
> > ResponseContent.java
> > >         >         > :67)
> > >         >         >         at
> > >         >         >
> > >         org.apache.http.protocol.BasicHttpProcessor.process
> > (BasicHttpProcesso
> > >         >         > r.java:304)
> > >         >         >         at
> > >         >         >
> > >
> > org.apache.synapse.transport.nhttp.ServerHandler.commitResponse (Serve
> > >         >         > rHandler.java:220)
> > >         >         >         at
> > >         >         >
> > >
> > org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncRespons
> > >         >         > e(HttpCoreNIOSender.java:352)
> > >         >         >         at
> > >         >         >
> > >         
> > > org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke(HttpCoreN
> >
> > >         >         > IOSender.java:215)
> > >         >         >         at
> > >         >         >
> > >         org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
> > >         >         >         at
> > >         >         >
> > >         org.apache.synapse.core.axis2.Axis2Sender.sendBack(
> > Axis2Sender.java:1
> > >         >         > 04)
> > >         >         >         at
> > >         >         >
> > >         org.apache.synapse.core.axis2.Axis2SynapseEnvironment.send
> > >         >         > (Axis2Synap
> > >         >         > seEnvironment.java:170)
> > >         >         >
> > >         >         > I managed to get past this one by commenting out:
> > >         >         >             if
> > >         >         > (httpVersion.greaterEquals(HttpVersion.HTTP_1_1))
> > >         {
> > >         >         >                 //entity.setChunked(true);
> > >         >         >             }
> > >         >         > line 127 ServerHandler.java
> > >         >         >
> > >         >         > then I get this one:
> > >         >         >
> > >         >         > 2007-10-16 16:01:45,125 [10.0.0.3-pzfdell]
> > >         >         > [HttpServerWorker-1] ERROR ServerHandler
> > >         Unexpected HTTP
> > >         >         > protocol error : Response already submitted
> > >         >         > org.apache.http.HttpException : Response already
> > >         submitted
> > >         >         >         at
> > >         >         >
> > >
> > org.apache.http.impl.nio.DefaultNHttpServerConnection.submitResponse(DefaultNHttpServerCo
> > >         >         > nnection.java:201)
> > >         >         >         at
> > >         >         >
> > >
> > org.apache.synapse.transport.nhttp.LoggingNHttpServerConnection.submitResponse(LoggingNHt
> > >         >         > tpServerConnection.java:54)
> > >         >         >         at
> > >         >         >
> > >
> > org.apache.synapse.transport.nhttp.ServerHandler.commitResponse (
> > ServerHandler.java:221)
> > >         >         >         at
> > >         >         >
> > >
> > org.apache.synapse.transport.nhttp.HttpCoreNIOSender.sendAsyncResponse(HttpCoreNIOSender.
> > >         >         > java:352)
> > >         >         >         at
> > >         >         >
> > >         org.apache.synapse.transport.nhttp.HttpCoreNIOSender.invoke
> > >         (HttpCoreNIOSender.java:215)
> > >         >         >         at
> > >         >         >
> > >         org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:396)
> > >         >         >         at
> > >         >         > org.apache.synapse.core.axis2.Axis2Sender.sendBack
> > >         (Axis2Sender.java:104)
> > >         >         >
> > >         >         > Help!!??
> > >         >         >
> > >         >         > Paul
> > >         >         >
> > >         >         > --
> > >         >         > Paul Fremantle
> > >         >         > Co-Founder and VP of Technical Sales, WSO2
> > >         >         > OASIS WS-RX TC Co-chair
> > >         >         >
> > >         >         > blog: http://pzf.fremantle.org
> > >         >         > [EMAIL PROTECTED]
> > >         >         >
> > >         >         > "Oxygenating the Web Service Platform",
> > >         www.wso2.com
> > >         >
> > >         >
> > >         >
> > >         > --
> > >         > Paul Fremantle
> > >         > Co-Founder and VP of Technical Sales, WSO2
> > >         > OASIS WS-RX TC Co-chair
> > >         >
> > >         > blog: http://pzf.fremantle.org
> > >         > [EMAIL PROTECTED]
> > >         >
> > >         > "Oxygenating the Web Service Platform", www.wso2.com
> > >
> > >
> > >
> > ---------------------------------------------------------------------
> > >         To unsubscribe, e-mail: [EMAIL PROTECTED]
> > >         For additional commands, e-mail:
> > >         [EMAIL PROTECTED]
> > >
> > >
> > >
> > >
> > > --
> > > Paul Fremantle
> > > Co-Founder and VP of Technical Sales, WSO2
> > > OASIS WS-RX TC Co-chair
> > >
> > > blog: http://pzf.fremantle.org
> > > [EMAIL PROTECTED]
> > >
> > > "Oxygenating the Web Service Platform", www.wso2.com
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
> --
> Paul Fremantle
> Co-Founder and VP of Technical Sales, WSO2
> OASIS WS-RX TC Co-chair
>
> blog: http://pzf.fremantle.org
> [EMAIL PROTECTED]
>
> "Oxygenating the Web Service Platform", www.wso2.com
>



-- 
Paul Fremantle
Co-Founder and VP of Technical Sales, WSO2
OASIS WS-RX TC Co-chair

blog: http://pzf.fremantle.org
[EMAIL PROTECTED]

"Oxygenating the Web Service Platform", www.wso2.com

Reply via email to