Catalina
Align error handling for
Writer
andOutputStream
. Ensure use of either once the response has been recycled triggers aNullPointerException
provided thatdiscardFacades
is configured with the default value oftrue
.68495: When restoring a saved POST request after a successful FORM authentication, ensure that neither the URI, the query string nor the protocol are corrupted when restoring the request body. (markt)
68721: Workaround a possible cause of duplicate class definitions when using
ClassFileTransformer
s and the transformation of a class also triggers the loading of the same class. (markt)The rewrite valve should not do a rewrite if the output is identical to the input. (remm)
Add a new
valveSkip
(orVS
) rule flag to the rewrite valve to allow skipping over the next valve in the Catalina pipeline. (remm)Add checking of the "age" of the running Tomcat instance since its build-date to the SecurityListener, and log a warning if the server is old. (schultz)
When using the
AsyncContext
, throw anIllegalStateException
, rather than allowing anNullPointerException
, if an attempt is made to use theAsyncContext
after it has been recycled. (markt)
Coyote
Improve the HTTP/2 stream prioritisation process. If a stream uses all of the connection windows and still has content to write, it will now be added to the backlog immediately rather than waiting until the write attempt for the remaining content. (markt)
Correct a regression in the support for user provided
SSLContext
instances that broke theorg.apache.catalina.security.TLSCertificateReloadListener
. (markt)
Jasper
Add support for specifying Java 22 (with the value
22
) as the compiler source and/or compiler target for JSP compilation. If used with an Eclipse JDT compiler version that does not support these values, a warning will be logged and the default will used. (markt)Handle the case where the JSP engine forwards a request/response to a Servlet that uses an
OutputStream
rather than aWriter
. This was triggering anIllegalStateException
on code paths where there was a subsequent attempt to obtain aWriter
. (markt)Correctly handle the case where a tag library is packaged in a JAR file and the web application is deployed as a WAR file rather than an unpacked directory. (markt)
Other
Improvements to French translations. (remm)
Improvements to Japanese translations by tak7iji. (markt)
57130: Allow digest.(sh|bat) to accept password from a file or stdin. (csutherl/schultz)
Update Checkstyle to 10.14.1. (markt)