>
> >> <snip/>
>
> A quick review of all Filters that are running tells me that there are a
> few that can set response headers, but mostly are not in this particular
> case. The list of headers coming back in the response are:
>
> HTTP/1.1 200
> Via: HTTP/1.1 1
> Transfer-Encoding: chunked
> Date: Wed, 18 Jun 2025 15:12:58 GMT
>
> Notably, I'm not getting a response output stream or writer anywhere
> before the "Hello World" is printed, and the header sizes are so small
> that they should also not be triggering a response flush before then.
>
> Before writing the Hello World, I checked to see if the response has
> been committed using HttpServletResponse.isCommitted() and the return
> value is /false/ O_O.
>
> I checked *after* the write and the response still says it is not committed.
>
> I was even able to call response.reset() after the write and then
> re-write the response to "Goodbye, World". No exceptions, etc.
>
> Is there something else I should be checking?

The 'Via' header suggests that the response might be a proxy server
between you and Tomcat.

https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Via

Do you control the network between you and the server?  I remember how
in old times some mobile operators used to insert ads into HTTP
traffic. Or there might be some antivirus / anti-ads software running
as a proxy on your own computer (Those usually intercept well-known
port numbers, such as 80, 8080).

1. You may configure the access log to log values of specific headers
- to make sure that those are actually sent by your Tomcat.
(Content-Length, Transfer-Encoding).

2. Try remote debugging?

Best regards,
Konstantin Kolinko

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to