General
Catalina
Refactor recycle facade system property into a new connector attribute named
discardFacades
and enable it by default. (remm)Update to Jakarta Servlet 5.0, Jakarta Server Pages 3.0. Jakarta Expression Language 4.0, Jakarta WebSocket 2.0, Jakarta Authentication 2.0 and Jakarta Annotations 2.0. (markt)
Remove GenericPrincipal.getPassword. The credentials should remain managed by the realm. (remm)
Add connection pooling to JNDI realm. (remm)
Use
<request-character-encoding>
and<response-character-encoding>
inconf/web.xml
to set the default request and response character encodings to UTF-8. (markt)Store config compatibility with HostWebXmlCacheCleaner listener. (remm)
Modify the
RewriteValve
to useServletRequest.getServerName()
to populate theHTTP_HOST
variable rather than extracting it from theHost
header as this allows HTTP/2 to be supported. (markt)Switch Tomcat embedded to loading MIME type mappings from a property file generated from the default
web.xml
so the MIME type mappings are consistent regardless of how Tomcat is started. (markt)Missing store config attributes for Resources elements. (remm)
Coyote
Update endpoint cache sizes defaults. (remm)
Remove unused NIO blocking selector. (remm)
When using an AJP Connector, convert Java Servlet specific request attributes to the Jakarta Servlet equivalent. (markt)
When reporting / logging invalid HTTP headers encode any non-printing characters using the 0xNN form. (markt)
Remove duplication of HTTP/1.1 configuration on the HTTP/2 UpgradeProtocol element. Configuration from the main Connector element will now be used. (remm)
When the NIO or APR/native connectors were configured with
useAsyncIO="true"
and a zero length read or write was performed, the read/write would time out rather than return immediately. (markt)
Jasper
Parameterize JSP version and API class names in localization messages to allow simpler re-use between major versions. (markt)
Ensure that TLD files listed in the
jsp-config
section ofweb.xml
that are registered in theuriTldResourcePathMap
with the URI specified inweb.xml
are also registered with the URI in the TLD file if it is different. Patch provided by Markus Lottmann. (markt)
Cluster
Fix cloud environment lookup order and add a dedicated
DNS_MEMBERSHIP_SERVICE_NAME
environment for use with the DNS membership provider. Submitted by Bernd Bohmann. (remm)
Other
53620: JULI now only creates logging files when there is a log entry to write. Based on a patch by Karol Bucek. (markt)
Update implementated specification version information in a few places where it has not been updated for Jakarta EE 9. (markt)
Expand the coverage of the French translations provided with Apache Tomcat. (remm)
Expand the coverage of the Chinese translations provided with Apache Tomcat. Contribution provided by BoltzmannWxd. (markt)