The Apache Tomcat® community consists of those who use Apache Tomcat, help answer questions on discussions lists, contribute documentation and patches, and those who develop and maintain the code for Apache Tomcat. Almost all those who assist on a day to day basis resolving bug reports do this for a wide variety of reasons, and almost all of them do this on their own time.

Many bugs reported end up not being a bug in the Apache Tomcat code, but are due to misconfiguration, problems caused by installed applications, the operating system, etc.

Before reporting a bug please make every effort to resolve the problem yourself.

If you need help, ask on the users mailing list.

The remainder of this document points you toward resources you can use to resolve the problem you are having.

Bugzilla is not a support forum

Bugzilla is a tool to track bug reports and feature requests. It is used to organize work on Apache Tomcat projects, so that such issues are not forgotten and to document how they were resolved.

Bugzilla is not a place to ask questions on how to configure your own system, or how to interpret some error message or behaviour that you do not understand. If you have questions, please ask on the users mailing list.

When you have gathered enough information to diagnose your problem, and it is indeed a bug that can be fixed in Apache Tomcat, feel free to create or reopen your Bugzilla issue for it. You can find a link to your discussion in the mailing list archives and include it in your bug report.

Here are some resources you can use to help you resolve the problem you are having before reporting a bug.

Problem troubleshooting

  • Documentation – Review the documentation for the version of Apache Tomcat that you are using. The problem that you are facing may already be addressed in the docs. Note, that documentation is searchable.
  • Logs – The logs which Apache Tomcat generates can be a valuable resource when trying to diagnose a problem. Please review them. You may want to enable debug output in your Apache Tomcat configuration so that you have more information to help diagnose the problem. You may want to configure an Access Log (a valve) to log what requests reached Tomcat and what was Tomcat's response to them.
  • Wiki – Search the Wiki. That is unofficial documentation to which everyone can contribute.
  • FAQ's – Search the Tomcat Frequently Asked Questions that is part of the Wiki.

Apache Tomcat discussion lists

It is very likely you are not the first to run into a problem. Others may have already found a solution. The mailing list archives may contain discussions which will help you resolve the problem.

See the mailing lists page for the further information on the lists.

See also the Find help page.

Known issues

Please search the bug database to see if the bug you are seeing has already been reported. Please look at the changelog page for the bugs that have already been fixed. The changelogs for not-yet-released versions of Tomcat are also available. More details are below.

Recent version

Try to reproduce your problem with the latest released version of Apache Tomcat.

Please make sure the problem is a bug in Apache Tomcat and not a bug in your web application.

Note, that security-related issues should not be reported through Bugzilla.

How to write a bug report

Please provide as much information as possible. It is very hard to fix a bug if the person looking into the problem cannot reproduce it. See also Bug Writing Guidelines.

Bug submission starts here. You have to include the following information in your bug report:

  • Product. Here is a list of supported products:

    • Tomcat 11 – Tomcat 11.1.x and tomcat.apache.org web site
    • Tomcat 10 – Tomcat 10.1.x
    • Tomcat 9 – Tomcat 9.0.x
    • Tomcat Connectors – Integration of Tomcat with other Web servers. The mod_jk module for Apache HTTPD and other web servers.
    • Tomcat Native – HTTP and AJP connectors for Tomcat using native code and linked with Apache APR and OpenSSL libraries
    • Tomcat Modules – Additional Tomcat components, such as jdbc-pool
    • Taglibs – Apache Taglibs subproject
  • Version – Apache Tomcat version.

    Please not only select it from the list, but also mention it in your text. The bug description can be updated, so it is important to mention the version in the text as well.

  • Component – The component which has the bug.

    If you do not know, just guess.

  • Platform and OS – Hardware platform and operating system Tomcat is running on.

  • Severity – This is normal for usual bug reports and enhancement for enhancement requests.

    If you tend to mark it as critical, you are probably doing it wrong. It is likely that the issue is already known and fixed, or it is not an issue at all.

  • Configuration details

    Please mention these in your text:

    • Java version – Vendor and version of your Java Runtime Environment used to run Tomcat.
    • If Tomcat is used behind Apache HTTPD or other web server – its version and how it is configured.
    • Tomcat Connector that is being used. There are several implementations of Connectors in Tomcat. Which one is being used is shown in the logs during Tomcat startup.
  • Attachments

    Attach configuration files and Tomcat log files if they would help to track down the bug.

  • Reproducer

    Please describe how to reproduce your problem on a clean Tomcat installation. If you can please provide a simple sample web application that demonstrates the issue.

How to submit patches and enhancement requests

Enhancement requests for Tomcat are submitted using the same procedure as bug reports, but in the Severity field you will select the value "enhancement".

For components available via GitHub you may provide a proposed patch as a pull request. Alternatively, you can attach your proposed patch to a Bugzilla issue. When providing a patch, please mention to which version of the source code it applies. Any patches are welcome, but we prefer the ones that use the Unified Diff format. Those can be generated using diff -u command or svn diff or git diff command.

To patch and build Apache Tomcat see the following references:

To prepare a documentation patch:

Read section on building the documentation in BUILDING.txt file in the source distribution. Usually the documentation for a version of Tomcat is located in webapps/docs/ directory in the source code and can be built with ant build-docs command.

To build documentation it should be sufficient to have a Java runtime and a copy of Apache Ant. Compiling Tomcat code should be unnecessary.

Generic references:

Security Issues

Security-related bugs are of special concern. If you have a verified security bug to report please neither post it to public email lists nor submit a bug report. See Security Reports page on how to report them.