Re: List of jigsaw proxy problems - bug fix ?

Yael Stav writes:
 > To all jigsaw fans,
 > 
 > In a previous message I sent to the mailing list, I mentioned a problem
 > in using jigsaw as a proxy (client side):
 > Requesting specific URL's results in a "Document contains no data" from
 > the browser.
 > 
 > I think we eventually figured out what the problem was:
 > When the HTTP response is HTTP/1.1 and has no Content-Length Jigsaw is
 > supposed to wait for the server (who owns that resource) to close the
 > connection.
 > The problem is that Jigsaw closes the connection by itself instead.
 > Notice that w3c.www.protocol.http.Reply calls in that case (no
 > content-length, no
 > "chunked" input stream but still HTTP/1.1) the notifyFailure() method.
 > of  HttpBasicConnection.java:
 > 
 > public synchronized void notifyFailure(InputStream in) {
 > 
 >    markIdle(true);
 > }
 > 
 > The call to markIdle(true) will close the socket, free all data
 > structures of the connection,
 > and delete the connection from the server. I think it should ONLY delete
 > it from the
 > server (for it cannot be reused).
 > Hence:
 > 
 >     public synchronized void notifyFailure(InputStream in) {
 > 
 >         ((HttpBasicServer) server).deleteConnection(this);
 >     }
 > 
 > This code change does fixes the problem, still I'd like to have some
 > confirmation about it, since I would not like to damage anything else.

The real problem - as I understand it - is that a 1.1 reply MUST have
either a content length or a transfer of chunk encoding. That's why
Jigsaw takes the "appropriate" action to close the connection (since
it doesn't respect the 1.1 specification).

If I am correct that's a bug in the server emitting that reply.

Anselm.

Received on Wednesday, 27 August 1997 05:13:09 UTC