Managed Hosting for Demanding Customers
USA +1(770)448 2100 | UK +44(0)20 81336940
Knowledgebase
Release Notes - Tomcat 8.5
Posted by Gerardo Zamudio on 11 August 2017 11:45 AM

 

Overview - Tomcat 8

This Release Note covers all point releases for the Tomcat 8 that are offered by eApps. Upgrade instructions are included.

Tomcat 8.5 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.5, you will need to migrate to a CentOS 6 (ISPmanager) plan. Contact eApps Sales for more information.

Tomcat 8.5 is designed to run on Java SE 7 and above. There is no support for Java SE 6 in Tomcat 8.5

Warning Tomcat 8.5 is a major release of the Tomcat application server. This release has introduced new functionality and significant changes to the existing Tomcat server. If you are upgrading from any prior version of Tomcat to Tomcat 8, there is a HIGH RISK of data loss and downtime if you do not carefully test your existing database and application with this new version.

eApps recommends, as a best practice, to maintain a staging server where you can test software upgrades before moving them into production. This approach will allow you to minimize the risk of data loss and downtime of your production service when performing software upgrades. If necessary, you can rebuild your staging Virtual Server on demand so that you have a fresh installation to test on. If you need more information about setting up a Virtual Server for staging or testing, please contact eApps Sales.

IMPORTANT: Tomcat 8.5 has an extensive list of new features and changes. See the Official Tomcat 8.5 Release Notes for a list of changes that may cause issues when upgrading: http://tomcat.apache.org/tomcat-8.5-doc/RELEASE-NOTES.txt. Please read this document carefully to understand all the changes in the Tomcat 8 release. Upgrading to this version may significantly impact the operation of your database and applications. All Tomcat 8 documentation is located here: http://tomcat.apache.org/tomcat-8.5-doc/

If you are migrating Tomcat applications from an existing version of Tomcat to Tomcat 8, please see the Apache Tomcat Migration Guide: http://tomcat.apache.org/migration-8.html

eApps Release Notes for Tomcat 8.5.16
eApps Release Notes for Tomcat 8.5.9

How to Upgrade
Tomcat 6 or Tomcat 7 to Tomcat 8
Tomcat 8.x to Tomcat 8.y (newer version)

 


Highlighted Features and Fixes in Tomcat 8.5.16

Fixes

  • Correct the TLS configuration documentation to remove SSLv2 and SSLv3 from the list of supported protocols
  • Improve thread-safety of Futures used to report the result of sending WebSocket messages
  • Add additional syncs to the SSL session object provided by the OpenSSL engine so that a concurrent destruction cannot cause a JVM crash
  • Improve the SSLValve so it is able to handle client certificate headers from Nginx
  • CORS filter should set Vary header in response
Please see the ChangeLog, and scroll down to find the relevant information for this specific release: http://tomcat.apache.org/tomcat-8.5-doc/changelog.html


Highlighted Features and Fixes in Tomcat 8.5.9

Fixes

  • Add support for HTTP/2 including server push
  • Improvements to SPNEGO authentication.
  • Correct regression in I/O buffer handling.
  • Improve handling of varargs in UEL expressions.
  • The main difference between Tomcat 8.0.39 and 8.5.9 is the latter supports JASPIC Spec 1.1 while the former does not. These versions are developed in parallel. See http://tomcat.apache.org/whichversion.html

Please see the ChangeLog, and scroll down to find the relevant information for this specific release: http://tomcat.apache.org/tomcat-8.5-doc/changelog.html


How to Upgrade

It is your responsibility to ensure that your application will work on the newer version of Tomcat. There may be incompatibilities that will affect how your application works. Please make sure that you have read the official Release Notes and Changelog, and have done any necessary testing before upgrading a production application.

Before upgrading Tomcat make a backup of your database. Follow the instructions for your database: MySQL, MariaDB, or PostgreSQL.

You should also make a backup of your application, your configuration, and any tunings or changes you have made. If you do not have current backups and something goes wrong during the upgrade process, you could have data loss.

To upgrade Tomcat, you will need to work from the command line using SSH, and you will need to be able to work as the root user. You will need to use yum to upgrade the application.

Tomcat 6 or Tomcat 7 to Tomcat 8

There is no direct upgrade path between major Tomcat versions, such as between Tomcat 6 or Tomcat 7 to Tomcat 8. If you are on Tomcat 6 or 7, you will need to back up your applications (usually in the /opt/tomcatX/webapps directory, where X is your version of Tomcat), your data, and any configuration files you have changed. Then uninstall the existing version of Tomcat, install Tomcat 8, and then redeploy your applications. If you try to install Tomcat 8 without first uninstalling the previous Tomcat version, the installation may fail.

When you redeploy your applications, you will also need to update the Tomcat configuration files, such as server.xml. Please note - do not copy the entire file, just the specific HOST blocks that you added. If you try to use the server.xml from a previous version of Tomcat, then the new version of Tomcat will crash.

To remove the existing version of Tomcat, use the yum remove -y tomcatX command, where X is the existing version number (6 or 7).

[root@eapps-example ~]# yum remove -y tomcatX

This will remove the main directories from the /opt/tomcatX directory, but the tomcatX directory will still remain.

If you are using Java SE 6, you will need to remove it and install Java SE 7 or Java SE 8. You will need to install Java SE 7 or Java SE 8 BEFORE installing Tomcat 8. If you try to install Tomcat 8 before installing Java SE 7 or Java SE 8, Tomcat 8 will not start.

Remove Java SE 6 with the yum remove -y java-1.6.0-sun java-1.6.0-sun-plugin java-1.6.0-sun-jdbc java-1.6.0-sun-src java-1.6.0-sun-devel java-1.6.0-sun-javafx command.

[root@eapps-example ~]# yum remove -y java-1.6.0-sun java-1.6.0-sun-plugin java-1.6.0-sun-jdbc java-1.6.0-sun-src java-1.6.0-sun-devel java-1.6.0-sun-javafx

If you want to use Java SE 7, install it with the yum install -y java-1.7.0-sun java-1.7.0-sun-plugin java-1.7.0-sun-jdbc java-1.7.0-sun-src java-1.7.0-sun-devel java-1.7.0-sun-javafx command.

[root@eapps-example ~]# yum install -y java-1.7.0-sun java-1.7.0-sun-plugin java-1.7.0-sun-jdbc java-1.7.0-sun-src java-1.7.0-sun-devel java-1.7.0-sun-javafx

If you want to use Java SE 8, install it with the yum install -y java-1.8.0-oracle java-1.8.0-oracle-plugin java-1.8.0-oracle-jdbc java-1.8.0-oracle-src java-1.8.0-oracle-devel java-1.8.0-oracle-javafx command.

[root@eapps-example ~]# yum install -y java-1.8.0-oracle java-1.8.0-oracle-plugin java-1.8.0-oracle-jdbc java-1.8.0-oracle-src java-1.8.0-oracle-devel java-1.8.0-oracle-javafx

Once you have removed the existing version of Tomcat (and if necessary have removed Java SE 6 and installed Java SE 7 or Java SE 8), install Tomcat 8 using the yum install -y tomcat8 command.

[root@eapps-example ~]# yum install -y tomcat8

Once the installation completes, you will need to redeploy your applications and copy over your configuration files, and test.

Tomcat 8.x to Tomcat 8.y (newer version)

Before upgrading, make a backup of your applications (usually in /opt/tomcat8/webapps), any configuration files you have changed, and your data. This way you can redeploy your applications if necessary after the upgrade.

Upgrade Tomcat using the yum update tomcat8 command.

[root@eapps-example ~]# yum update tomcat8

Once the update completes, test your existing applications.

(0 vote(s))
Helpful
Not helpful

Comments (0)
Post a new comment
 
 
Full Name:
Email:
Comments:
CAPTCHA Verification 
 
Please enter the text you see in the image into the textbox below (we use this to prevent automated submissions).