Content

Apache Tomcat

The Apache Tomcat® software is an open source implementation of the Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies. The Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket specifications are developed under the Java Community Process.

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, Tomcat, Apache, the Apache feather, and the Apache Tomcat project logo are trademarks of the Apache Software Foundation.

2020-12-21 Tomcat Native 1.2.26 Released

The Apache Tomcat Project is proud to announce the release of version 1.2.26 of Tomcat Native. The notable changes since 1.2.25 include:

  • Windows binaries built using 1.1.1i
  • Expose support for Unix domain sockets (bug 64942)

Download | ChangeLog for 1.2.26

2020-12-08 Tomcat 9.0.41 Released

The Apache Tomcat Project is proud to announce the release of version 9.0.41 of Apache Tomcat. The notable changes compared to 9.0.40 include:

  • Align the behaviour of ServletContext.getRealPath(String path) with the recent clarification from the Servlet specification project. If the path parameter does not start with / then Tomcat processes the call as if / is appended to the beginning of the provided path.
  • Fix a potential file descriptor leak when WebSocket connections are attempted and fail. Patch provided by Maurizio Adami.
  • Ensure that the LoadBalancerDrainingValve uses the correct setting for the secure attribute for any session cookies it creates. Based on a pull request by Andreas Kurth.

Full details of these changes, and all the other changes, are available in the Tomcat 9 changelog.

Download

2020-12-08 Tomcat 8.5.61 Released

The Apache Tomcat Project is proud to announce the release of version 8.5.61 of Apache Tomcat. Apache Tomcat 8.5.x replaces 8.0.x and includes new features pulled forward from Tomcat 9.0.x. The minimum Java version and implemented specification versions remain unchanged. The notable changes compared to 8.5.60 include:

  • Align the behaviour of ServletContext.getRealPath(String path) with the recent clarification from the Servlet specification project. If the path parameter does not start with / then Tomcat processes the call as if / is appended to the beginning of the provided path.
  • Fix a potential file descriptor leak when WebSocket connections are attempted and fail. Patch provided by Maurizio Adami.
  • Ensure that the LoadBalancerDrainingValve uses the correct setting for the secure attribute for any session cookies it creates. Based on a pull request by Andreas Kurth.

Full details of these changes, and all the other changes, are available in the Tomcat 8.5 changelog.

Download

beta, 2020-12-08 Tomcat 10.0.0 Released

The Apache Tomcat Project is proud to announce the release of version 10.0.0 (beta) of Apache Tomcat. This release is a beta release and is targeted at Jakarta EE 9.

Users of Tomcat 10 onwards should be aware that, as a result of the move from Java EE to Jakarta EE as part of the transfer of Java EE to the Eclipse Foundation, the primary package for all implemented APIs has changed from javax.* to jakarta.*. This will almost certainly require code changes to enable applications to migrate from Tomcat 9 and earlier to Tomcat 10 and later. A migration tool is under development to aid this process.

The notable changes in this release are:

  • The Jakarta EE specifications are now final. Tomcat passes the TCKs apart from a number of expected failures that don't impact specification compliance.
  • The APR/Native AJP and HTTP connectors have been deprecated. Tomcat Native will continue to be used to support OpenSSL use with NIO and NIO2.
  • Align the behaviour of ServletContext.getRealPath(String path) with the recent clarification from the Servlet specification project. If the path parameter does not start with / then Tomcat processes the call as if / is appended to the beginning of the provided path.

Full details of these changes, and all the other changes, are available in the Tomcat 10 (beta) changelog.

Download

2020-11-23 Tomcat 7.0.107 Released

The Apache Tomcat Project is proud to announce the release of version 7.0.107 of Apache Tomcat. This release contains a number of bug fixes and improvements compared to version 7.0.106.

  • Ensure that none of the methods on a ServletContext instance always fail when running under a SecurityManager. Pull request provided by Kyle Stiemann.

Full details of these changes, and all the other changes, are available in the Tomcat 7 changelog.

Note: End of life date for Apache Tomcat 7.0.x is announced. Read more...

Download

2020-03-06 Tomcat Connectors 1.2.48 Released

The Apache Tomcat Project is proud to announce the release of version 1.2.48 of Apache Tomcat Connectors. This version fixes a number of bugs found in previous releases.

Download | ChangeLog for 1.2.48

2015-03-17 Apache Standard Taglib 1.2.5 Released

The Apache Tomcat Project is proud to announce the release of version 1.2.5 of the Standard Taglib. This tag library provides Apache's implementation of the JSTL 1.2 specification.

Version 1.2.5 is a minor bug fix release reverting a change made in 1.2.1 where <c:import> modified the HTTP method during POST operations, and fixing an issues that resulted in an AccessControlException during startup unless permission was granted to read the accessExternalEntity property.

Please see the Taglibs section for more details.

Download | Changes

2013-11-11 Tomcat Maven Plugin 2.2 Released

The Apache Tomcat team is pleased to announce the release of Tomcat Maven Plugin 2.2. Changelog available here.

The Apache Tomcat Maven Plugin provides goals to manipulate WAR projects within the Apache Tomcat servlet container.

The binaries are available from Maven repositories. You should specify the version in your project's plugin configuration:

<plugin>
  <groupId>org.apache.tomcat.maven</groupId>
  <artifactId>tomcat7-maven-plugin</artifactId>
  <version>2.2</version>
</plugin>

or

<plugin>
  <groupId>org.apache.tomcat.maven</groupId>
  <artifactId>tomcat6-maven-plugin</artifactId>
  <version>2.2</version>
</plugin>

Old news