On Wed, 2007-10-17 at 17:27 +0100, Paul Fremantle wrote:
> 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
> 

Hi Paul

That does not look good. 

I'll _try_ to come up with a fix for the bug, but it'll require some
poking around with the Synapse and Axis2 code.

Oleg

> 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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to