Apache Tomcat is an open source implementation of Java Servlets, JavaServer Pages, Java Expression Language, and Java WebSocket technology. Designed to provide users with the original Java environment to run Web applications.
The Apache Tomcat software is developed in an open and participatory environment and released under the Apache License version 2. The Apache Tomcat project is intended to be a collaboration of the best-of-breed developers from around the world. We invite you to participate in this open development project. To learn more about getting involved, click here.
Apache Tomcat software powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations. Some of these users and their stories are listed on the PoweredBy wiki page.
Apache Tomcat 9.0.21 includes fixes and other enhancements and changes.
- 57287: Add file sorting to DefaultServlet (schultz)
--no-jmxflag processing, which was called after registry initialization. (remm)
- Ensure that a default request character encoding set on a
ServletContextis used when calling
- Make a best efforts attempt to clean-up if a request fails during processing due to an
- Improve the BoM detection for static files handled by the default servlet for the rarely used UTF-32 encodings. Identified by Coverity Scan. (markt)
- Ensure that the default servlet reads the entire global XSLT file if one is defined. Identified by Coverity Scan. (markt)
- Avoid potential
NullPointerExceptionwhen generating an HTTP
Allowheader. Identified by Coverity Scan. (markt)
Context.createInstanceManager()for easier framework integration. (remm)
- Add utility
org.apache.catalina.core.FrameworkListenerto allow replicating adding a Listener to context.xml in a programmatic way. (remm)
Container.ADD_CHILD_EVENTto before the child container start, and
Container.REMOVE_CHILD_EVENTto before removal of the child from the internal child collection. (remm)
- Remove any fragment included in the target path used to obtain a
RequestDispatcher. The requested target path is logged as a warning since this is an application error. (markt)