Catalina
Ensure all URL patterns provided via web.xml are %nn decoded
consistently using the encoding of the web.xml file where specified and
UTF-8 where no explicit encoding is specified. (markt)
Allow a comma separated list of class names for the
org.apache.tomcat.util.digester.PROPERTY_SOURCEsystem property. (remm)
64149: Avoid NPE when using the access log valve without
a pattern. (remm)
64226: Reset timezone after parsing a date since the date
format is reused. Test case submitted by Gary Thomas. (remm)
64247: Using a wildcard for jarsToSkipshould not override a possibly presentjarsToScan. Based on code submitted by Iridias. (remm)
Refactor DefaultServlet to avoid using an internal Range structure that
is duplicated from the parsing result. (remm)
Remove
org.apache.catalina.connector.CoyoteAdapter.ALLOW_BACKSLASHsystem property, replaced by theallowBackslashattribute on the Connector. (remm)
Remove
org.apache.catalina.connector.Response.ENFORCE_ENCODING_IN_GET_WRITERsystem property, replaced by theenforceEncodingInGetWriterattribute on the Connector. (remm)
Remove
org.apache.catalina.session.StandardSession.ACTIVITY_CHECKsystem property, replaced by thesessionActivityCheckattribute on the Manager. (remm)
Remove
org.apache.catalina.session.StandardSession.LAST_ACCESS_AT_STARTsystem property, replaced by thesessionLastAccessAtStartattribute on the Manager. (remm)
Remove
org.apache.catalina.core.StandardHostValve.ACCESS_SESSIONsystem property, replaced by thealwaysAccessSessionattribute on the Context. (remm)
Remove
org.apache.catalina.core.ApplicationContext.GET_RESOURCE_REQUIRE_SLASHsystem property, replaced by thecontextGetResourceRequiresSlashattribute on the Context. (remm)
Remove
org.apache.catalina.core.ApplicationDispatcher.WRAP_SAME_OBJECTsystem property, replaced by thedispatcherWrapsSameObjectattribute on the Context. (remm)
64265: Fix ETag comparison performed by the default servlet.
The default servley always uses weak comparison. (markt)
Remove
org.apache.catalina.authenticator.Constants.SSO_SESSION_COOKIE_NAMEsystem property, replaced by thecookieNameattribute on the SSO valve. (remm)
Add support for default values when using ${...}property replacement in configuration files. Based on a pull request provided by Bernd Bohmann. (markt)
Coyote
When closing a NIO channel, avoid canceling keys as a workaround for
deadlocks when running on Java 11. Excessive internal NIO
synchronization on channel close is resolved starting with this
Java version. (remm)
When configuring an HTTP Connector, ensure that the encoding specified
for URIEncodingis a superset of US-ASCII as required by RFC7230. (markt)
Avoid always retrieving the NIO poller selection key when processing
to reduce sync. (remm)
64240: Ensure that HTTP/0.9 requests that contain additional
data on the request line after the URI are treated consistently. Such
requests will now always be treated as HTTP/1.1. (markt)
Expose the HTTP/2 connection ID and stream ID to applications via the
request attributes org.apache.coyote.connectionIDandorg.apache.coyote.streamIDrespectively. (markt)
Replace the system property
org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASHwith the Connector attributeencodedSolidusHandlingthat adds an additional option to pass the%2fsequence through to the application without decoding it in addition to rejecting such sequences and decoding such sequences. (markt)
Expose the associated HttpServletRequestto theCookieProcessorwhen generating a cookie header so the header can be tailored based on the properties of the request, such as the user agent, if required. Based on a patch by Lazar Kirchev. (markt)
Jasper
Update to the Eclipse JDT compiler 4.15. (markt)
Add support for specifying Java 14 (with the value 14) and Java 15 (with the value15) as the compiler source and/or compiler target for JSP compilation. If used with an ECJ version that does not support these values, a warning will be logged and the latest supported version will used. (markt)
Remove Jasper configuration using system properties and replace them
by a new set of JSP Servlet init parameters. (remm)
Web applications
Correct the documentation web application to remove references to the
org.apache.catalina.STRICT_SERVLET_COMPLIANCEsystem property changing the default for theURIEncodingattribute of the Connector. (markt)
Correct the documentation web application to remove references to the
org.apache.tomcat.util.buf.UDecoder.ALLOW_ENCODED_SLASHsystem property changing how the sequence%5cis interpretted in a URI. (markt)
Tribes
Remove support for the deprecated system property
org.apache.catalina.tribes.dns_lookups. The default value offalsewill now always be used. (markt)
Other
Improve the quality and expand the coverage of the French translations
provided with Apache Tomcat. Contribution provided by Tom Bens. (remm)
Expand the coverage of the Chinese translations provided with Apache
Tomcat. Contribution provided by Lee Yazhou. (markt)
64270: Set the documented default umask of 0027when using jsvc viadaemon.shand allow the umask used to be configured via theUMASKenvironment variable as it is when usingcatalina.sh. (markt)
Update the OWB module to Apache OpenWebBeans 2.0.16. (remm)
Update the CXF module to Apache CXF 3.3.6. (remm)
Remove the LOGGING_CONFIGenvironment variable and replace it with theCATALINA_LOGGING_CONFIGenvironment variable to avoid clashes with other components that useLOGGING_CONFIG. (markt)
