because I need to upgrade my Tomcat too, I just did the upgrade from Apache Tomcat/9.0.40 to 9.0.54.0 (latest version). Itâs up in running on my dev environment. I did the following procedure (please excuse that Iâm not providing all in terminal command lines here, cause lâm not a command line expert and I like using tunneled GUIs on Ubuntu),
Step: Backup your Tomcat folder /opt/lucee/tomcat to /opt/lucee/tomcat_backup, so you can rollback at sometime if necessary.
Step: download the latest Tomcat (latest as today) with: wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.54/bin/apache-tomcat-9.0.54.tar.gz
Step: extract the archive with $ tar -xvzf apache-tomcat-9.0.54.tar.gz to /home/username/apache-tomcat-9.0.54/
Step: copy the files in /home/username/apache-tomcat-9.0.54/lib/ to /opt/lucee/tomcat/lib/ (overwriting old files)
Step: copy the files from /home/username/apache-tomcat-9.0.54/bin/ to /opt/lucee/tomcat/bin/ (overwriting old files). Youâll note that setenv.sh will be left unchanged. Keep that file right there, because it has the starting configuration settings for Tomcat/Lucee created by the Lucee installer. That file is still valid and needed.
Step: Give the user that is running tomcat on your machine âread and executionâ permisson for the copied files in /opt/lucee/tomcat/bin/ (execution permission is needed by the shell script files)
Step: Give the user that is running tomcat on your machine read permisson for the copied files in /opt/lucee/tomcat/jar/
Step: Start Lucee/Tomcat with $ sudo /opt/lucee/lucee_ctl start
Then watch the catalina logs.
Itâs always good to update Lucee to the latest stable release. You can update Lucee from within your Lucee Server Administrator. Also, I always like to backup my Lucee Server Administrators/Lucee Web Administrator settings before doing such upgrades (just to be sure).
Thank you for the super-prompt response! Based on testing so far it worked! All I was missing was the âbin/â folder. The instructions I had didnât mention bin/ .Thanks a lot
And yes I agree is always good to upgrade Lucee, and we normally do, I was just wondering if Lucee 5.3.3.67 had a problem with Tomcat > 9.0.41.
We now have a Lucee@5.3.8.206/Tomcat@9.0.54 server to test the apps with.
In my case the file â/opt/lucee/tomcat/lib/ecj-4.18.jarâ was not overwritten when copying the new *.jar files because it contains a version number in its file name and the new *.jar file has a different version number (âecj-4.20.jarâ) in its file name .
I think it makes perfect sense to delete the outdated file (for example: ecj-4.18.jar) in the target directory /opt/lucee/tomcat/lib/ to be on the safe side.
Otherwise I would like to say thank you to @andreas for the good Tomcat update description.
Wouldnât it make sense to include this Tomcat update description in the Lucee documentation?
I think this could be very helpful for many Lucee users in the future.
@andreas
In addition, I would suggest that you also copy the following files into the target directory /opt/lucee/tomcat in order to have the latest information about the new Tomcat version:
Question:
What do you think, will this Tomcat update method only work for minor version updates (for example 9.0.48 â 9.0.54) or also for major version updates (for example 8.5.72 â 9.0.54)?
If it could lead to problems with major updates, in my opinion it should be pointed out later in the Lucee documentation.
I canât tell for sure Knut. I did various upgrades from 8.0 up to 9.0.x that way and that always worked, and that way is also pretty widespread around the community. But I wouldnât bet that it will always go well. Such mayor upgrades can always have unpredictable breaking changes. But that steps are the usual way I do it, then after restarting the engine I watch the logs for errors and read/look the offical Tomcat documentation.
,
I just saw that there is an Apache Tomcat Migration Guide (Apache TomcatÂŽ - Migration Guide). It certainly doesnât hurt to take a look at this Migration Guide.
There is also a practical DIFF viewer in each Migration Guide. This is a very good way of looking at the version differences in the various Tomcat configuration files.
Hello,
At point 7 you wrote Give the user that is running tomcat on your machine âread and executeâ
Okay I think it is enough to assign the user with chown since the extracted and copied files already have the correct permissions set.
At point 9 you wrote:
â/opt/lucee/tomcat/jar/â
maybe you meant:
â/opt/lucee/tomcat/lib/â
Really canât say right now, it has been almost 4 years I did that post and it may depend on the configuration of your Tomcat. If yours is lib, then thanks for pointing it out, so others will have an additional hint.
The upgrade is necessary because there are serious vulnerabilities (CVE-2025-24813) in Apache Tomcat versions:
11.0.0-M1 to 11.0.2
10.1.0-M1 to 10.1.34
9.0.0-M1 to 9.0.98