Tomcat 8 Support

 
  1. Does Tomcat 8 Support Java 11
  2. Download Tomcat 8 For Windows
  3. Tomcat 8 Support Software
  1. Apache Tomcat 8.0.x is approaching its end of life. The team has announced in approximately one year it will no longer offer support. This means releases from the 8.0.x branch are highly unlikely.
  2. Tomcat 8.0 is only available for Virtual Servers running CentOS 6 or CentOS 7. If you are on a CentOS 5 (Webmin) or CentOS 4 (VPS) plan and need Tomcat 8.0, you will need to migrate to a CentOS 6 (ISPmanager) plan. Contact eApps Sales for more information. Tomcat 8 is designed to run on Java SE 7 and above. There is no support for Java SE 6 in.
  3. Can't start Tomcat 8.5.11 or 8.5.4 with P2P Hazelcast tomcat session manager. Works on Tomcat 8.0.41. Tomcat fails to start with errors: 25-Jan-2017 16:43:24.664 SEVERE localhost-startStop-1 org.apache.tomcat.util.digester.Digester.sta.

You may also need to specify -jvm server if the JVM defaults to using a server VM rather than a client VM. This has been observed on OSX. Jsvc has other useful parameters, such as -user which causes it to switch to another user after the daemon initialization is complete. This allows, for example, running Tomcat as a non privileged user while still being able to use privileged ports.

Back to home
  • Step by step guide
  • Deploying your application
  • Advanced configuration

Tomcat is an application server to run Java applications.

With our Tomcat Service, you get a Tomcat 8 or 9 installation that can be managed directly by the www-data user. This means more flexibility in the configuration of the instances, without having to keep them up-to-date yourself.

You can skip this section if you migrated from a Tomcat 6 managed solution, as we have done all that for you already.

In this section, we will guide you through the (rather short) process of setting up your own Tomcat instance with a reverse proxy.

Requirements

  • Ubuntu 16.04 Xenial (tomcat8) or 18.04 Bionic (tomcat9)
  • Tomcat 8 or 9 configured by us on your server (contact us to install it: [email protected])
  • nine-manage-vhosts installed on the server

Creating a Tomcat instance

We will use the tomcat8-instance-create or tomcat9-instance-create tool (official tomcat8 documentation) or (official tomcat9 documentation) to create our Tomcat instances. A few parameters should be provided:

Tomcat 8 Support

HTTP port (defaults to 8080)
Control port (defaults to 8005)

The following command will create a tomcat instance in the folder ~/test-server.ch on port 8081 with control port 8006:

Remarks

Tomcat
  1. When creating multiple tomcat instances, you need to ensure that the HTTP port and the control port are unique.

Making Tomcat accessible to the outside world with a reverse-proxy

Tomcat listens on localhost by default. It is common practice to place a reverse-proxy in front of Tomcat. We will use nine-manage-vhosts to create that reverse-proxy.

The following command will create a vhost named test-server.ch that will forward all of its traffic to the Tomcat instance on port 8081:

Remarks

  1. We assume in the Tomcat template that all of the Tomcat instances are located under /home/www-data/<domain-name>.

  2. To make use of a Let’s Encrypt certificate and https you can set the template proxy_letsencrypt_https instead of proxy.

  3. (only needed with apache): To automatically redirect from http to https with using a Let’s Encrypt certificate, you can set the template proxy_letsencrypt_https_redirect.

Start the Tomcat instance on system startup

We provide a default systemd template to start/stop your Tomcat instances.

The first thing we need to do is to ensure that the instance will be launched on server boot with the following command:

The next commands will start/stop the Tomcat instance named test-server.ch:

To check the current status of the Tomcat instance, you can use the following command:

Remarks

  1. The first part of the service name is unchanged : [email protected]. What comes after the @ is your Tomcat instance name.

For more information about managing services with systemd, please refer to this article.

Putting it all together

The following commands will setup a tomcat installation accessible from http://test-server.ch :

In this section, you will deploy your Java application to the Tomcat instance. Below are a few things to know about the deployment process:

Application format

An application usually has the form of a .war or .jar file.

Where to put the application?

An application must be copied to /home/www-data/<vhost-name>/ROOT.

There is also the possibility to run multiple applications in one virtual host. For that, every application needs its own directory under /home/www-data/<vhost-name>/webapps. The applications are then accessible at “http://servername.com/name_of_the_folder_in_webapps/”.

Deployment example

Does Tomcat 8 Support Java 11

Let’s say we have the same Tomcat instance as before: test-server.ch.

We want to deploy our application test-application, that we currently have as a war file: test-application.war.

The application is accessible at http://test-server.ch/test-application, and its logs are under /home/www-data/test-server.ch/logs/catalina.out.

Where does it log?

If your applications log to the standard output, the logs will be written in /home/www-data/<instance-name>/logs/catalina.out.

Please bear in mind that your catalina.out will grow big quickly with this method, and that it is recommended to use a logging utility instead of the standard output.

If you still want to use STDOUT in your application for logging purposes, there are two things you should do:

Download Tomcat 8 For Windows

  1. Disable the log rotation in Tomcat, because it is not rotating the logs properly. This can be done by editing the file conf/logging.properties and add following lines:
  1. Configure a proper log rotation.

Additional information

For more information on deployment, please refer to the official documentation.

Since the tomcat instances are managed by www-data, you can change all the configuration you need without using sudo or contacting nine (see the official documentation tomcat8 or official documentation tomcat9 as a reference).

Tomcat 8 Support Software

This being said, we would like to show you some common configuration tweaks, and we do them via environment variables.

Environment variables

Some parts of the behaviour of Tomcat can be controlled by setting some environment variables in the file ~/<instance-name>/bin/setenv.sh

Below are some examples of what can be changed using them:

Using a different Java version

Add the following to the setenv.sh file and restart your instance to switch the current java version:

Change the output log location

Add the following to the setenv.sh file and restart your instance to log to a different file:

Change the maximum amount of memory

The tomcat8-instance-create and tomcat9-instance-create script sets in setenv.sh a default of 128MB of memory for a given instance. Just replace the 128MB with the value of your choosing (must a multiple of 1024 greater than 2 MB).

For instance, the following would allow your instance to use at most 512MB of memory:

Systemd settings

Some parameters can not be set by Tomcat but rather need to be set by systemd. Those settings can be modified by so-called systemd drop-ins.

They can be set either for all instances of a user or for a specific instance.

To modify the configuration for all instances, place the file in

To only modify a single instance, place the file into

For example, to set the Max Open Files limit, drop this file into one of the folders mentioned above:

Custom startup services

If you prefer to use your own startup services instead of the one provided by nine, please refer to this article.

Contact our support:

Content

Tomcat 8 Software Downloads

Support

Welcome to the Apache Tomcat® 8.x software download page. This page provides download links for obtaining the latest versions of Tomcat 8.x software, as well as links to the archives of older releases.

Unsure which version you need? Specification versions implemented, minimum Java version required and lots more useful information may be found on the 'which version?' page.

Quick Navigation

Release Integrity

You mustverify the integrity of the downloaded files. We provide OpenPGP signatures for every release file. This signature should be matched against the KEYS file which contains the OpenPGP keys of Tomcat's Release Managers. We also provide SHA-512 checksums for every release file. After you download the file, you should calculate a checksum for your download, and make sure it is the same as ours.

Mirrors

You are currently using https://mirror.checkdomain.de/apache/. If you encounter a problem with this mirror, please select another mirror. If all mirrors are failing, there are backup mirrors (at the end of the mirrors list) that should be available.

8.5.65

Please see the README file for packaging information. It explains what every distribution contains.

Binary Distributions

  • Core:
    • zip (pgp, sha512)
    • tar.gz (pgp, sha512)
    • 32-bit Windows zip (pgp, sha512)
    • 64-bit Windows zip (pgp, sha512)
    • 32-bit/64-bit Windows Service Installer (pgp, sha512)
  • Full documentation:
    • tar.gz (pgp, sha512)
  • Deployer:
    • zip (pgp, sha512)
    • tar.gz (pgp, sha512)
  • Extras:
    • JMX Remote jar (pgp, sha512)
    • Web services jar (pgp, sha512)
  • Embedded:
    • tar.gz (pgp, sha512)
    • zip (pgp, sha512)

Source Code Distributions