Doug Davis wrote:
Huge +1 - that's what I do too.
-Dug


Tom Jordahl <[EMAIL PROTECTED]> on 01/06/2003 05:32:48 PM

Please respond to [EMAIL PROTECTED]

To:    "'[EMAIL PROTECTED]'" <[EMAIL PROTECTED]>
cc:
Subject:    RE: DO NOT REPLY [Bug 15741]  -  TCP Monitor does not handle
       WebD AV methods in proxy mode



I tried out resend today after removing the content-length recalculation
and it

works great, including with the s/w in proxy mode and multiple hosts in
the same

TCP connection.

Wait a minute, the resend functionality needs to recalculate the
content-length again because you can edit the request before you send it.
This is how *I* use the resend button.

Please don't remove that code....
Ah hah...Herein lies a much more complex problem. The current version of TCPMon does not distinguish between multiple HTTP requests in the same connection and should be fixed.

A couple ways to approach this (in no particular order of preference and noting the ease [likelyhood ;^o] of implementation):

* leave it the way it is and note that the content-length re-calculation is broken for multiple request connections, perhaps not allowing resend if there are multiple requests in the same connection. Not HTTP/1.1 compliant. (VERY EASY)

* require hand-updating of the content-length, obviously difficult for users to use (VERY EASY)

* ensure that only one HTTP request can be edited at a time (HARD)

* try to determine where an HTTP request ends by looking for the next request method (although I would be loathe to hard-code any method names such as GET, PUT, POST, etc. as they're sure to change.) (HARD - what if an HTTP "request" is embedded in the body of a POST?)

* close the connection after the first HTTP response to ensure one request/connection. (EASY)

* when in "HTTP mode", have TCPMon separate individual requests/responses as if they were individual connections. Would prevent resending the entire request stream. (MODERATE)

* create a hierarchical structure of connections containing >= 1 request/response pair. (HARD)

What is your opinion?

The bottom two are my preferences, but they're certainly a lot to tackle and I'd want to make sure that it would meet your needs and be adopted into the main distribution and hopefully get some help from someone who understands the code more than I.

As an aside, I'd like to be considered a Contributor (see http://jakarta.apache.org/site/roles.html) and as such I need to find out who the Committer is that I should coordinate with to get changes into CVS. It might be worthwhile to have the list of Committers (or at least one) listed on the "Contacting Us" page.

Reply via email to