Hello,
This past week I ran the Lucee upgrade.
It was about 5 months since last update.
Since always ran smoothly didnt think much of it.
Lucee failed following. I uninstalled. Updated to JDK 25, dont see a separate JDE, and relied on the Lucee install for Tomcat.
So after several days being down spinning my wheels.
Upon Installing Lucee 6.2.2.91 Tomcat is not starting.
xxxxxxxxxxxxx
Script output:
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE
Script stderr:
Program ended with an error exit code
Error running C:\lucee\tomcat\bin\service.bat install lucee: Program ended with an error exit code
Installing IIS Connector (this can take some timeā¦)
Executing C:\lucee\AJP13\Connector_Setup.exe /VERYSILENT /SUPPRESSMSGBOXES /LOG /SP- /NOCANCEL /NORESTART
Script exit code: 0
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Can we confirm what the environmental variables should be?
JAVA_HOME
JDK_HOME
JRE_HOME
I installed JDK to:
C:\Program Files\Java\jdk-25
Not sure which should point to the Lucee.
Also the prior install added the startup service, I see no new service added for TOMCAT.
Was the Lucee install supposed to create the service? Otherwise do we have documented what the values should be?
I have (with the help of Gemini AI):
Start Service: c:\lucee\tomcat\bin\tomcat11.exe //RS//Tomcat11
Java VM:
C:\Program Files\Java\jdk-25\bin\server\jvm.dll
Java Class path:
C:\lucee\tomcat\bin\bootstrap.jar
Startup and shutdown class as:
org.apache.catalina.startup.Bootstrap
Thoughts???
Much of the documentation I saw related to Lucee8 so pretty stuck.
Thanks
OS: Windows Java Version: 25 Tomcat Version: 11 shipped with 6.2.91 Lucee Version: ???
I see that JS 21 is packaged.
Tried a reinstall after deleting environmental values.
Errored on install stating Lucee-tomcat service failed to complete successfully.
JAVA_HOME variable is not defined correctly.
Was hoping a reinstall would set the values.
Can anyone with a working install share the windows environmental values
for JAVE_HOME and any other required values
Limping my way to some sort of stability.
I uninstalled and reverted to Lucee 5.4.8.2 Apache Tomcat 9.0.106
**Running IIS what permissions/ user accounts need to be enabled?
I see in the Catalina log that it cant create directories in IIS.
(Although ran for years with permission needed.)
org.apache.catalina.core.StandardWrapperValve.invoke Allocate exception for servlet [CFMLServlet]
javax.servlet.ServletException: Canāt create directory [C:\inetpub\wwwroot\mywebsite\WEB-INF\lucee]
Note I tried using the TomCAT StartUp account ālocal Serviceā and applying read/write permissions the the IIS directory. Still get errors though. Fundamentally thinking I shouldnt need to touch every IIS website directory to add permissions and bigger issue causing.
After a grueling week, was able to reinstall the original version of LUCEE that I started with prior to the in place upgrade.
-After the reinstall I needed to add back all the websites to the TOMCAT catalina server.xml file. I recall that needed to be done only if issues were present in pastā¦
LUCEE did not create the WEB-INF otherwise or seem to make an attempt.
-I needed to add LOCAL SERVICE account permissions for LUCEE to have any permissions to existing IIS directories to create WEB-INF and files and folders within. Fundamentally concerned that this may be a vulnerability and a more granular permission may work.
I needed to manually define the windows environmental variables for JAVA as the installer did not create.
Thus in closing, I dont know why the upgrade crashed and rendered LUCEE and the admin webpage useless.
Is there a backup/ roll back option to consider in the future?
Fundamentally not sure why all these manual steps were needed since LUCEE was running for several years and routine upgrades worked without issue.
Is the sum of āsupportā limited to this forum? Concerned that I may need to start migrating to PYTHON and loose decades of development for future stability
I ran into a few of these issues myself. Iām on ubuntu though, so canāt help much with the windows settings here, but for me it was just a matter of setting the java_home/jdk_home. Google returns basically what I ended up with:
They have a recommendation on how to do the same on Windows. Iāve run into this issue often before (both locally and in production), so itās pretty standard, at least for me.
I also ran into a bunch of permission errors, which to be honest had been made worse by years of differing updates and āfixesā (permissions were spread over 3 users). With the help of gemini I redid everything and after some trial/error ended up with a much better solution than I previously had.
thanks Sam, I appreciate your feedback. Yeah, Gemini finally helped me get back online, itās unfortunate that the in place upgrade failed with no interface to get back online, ultimately I needed to reinstall multiple times continually downgrading from Lucee version to Tom cat to Java to end up where I started unfortunately. I even considered jumping back to Adobe cold fusion, for sure simpler, but added an absurd price at this point. I need to fire up a new server see if I can get modern Lucee, Tom cat, Java, otherwise you may need to consider python. Thanks for your feedback
Relating to the WEB-INF, Iāve run into some similar issues in the past. What I ended up doing (for this and other reasons) was switching the Lucee service to run under a specific user with full rights to the Lucee folder, read & execute rights to the folder that I keep all our sites in, and then, whenever I added a site, I ran a batch file that created the WEB-INF folder and applied modify rights to it for the custom lucee service user. Lucee then added the necessary files to that folder.
For lucee rollback, I just download the last-known-good .lco file and keep it handy to drop into [lucee]\tomcat\lucee-server\patches before a restart.
Of course, that wouldnāt help with Java. For Java, I donāt have any environmental variables set. For updating Java, Iāve used this process:
copy \lucee\jre to \lucee\jre_new (double-check user permissions)
delete all in jre_new
copy new jre files into jre_new
stop lucee
rename jre to jre-[version]
rename jre_new to jre
start lucee
To rollback, just stop lucee, reverse the renaming process, and restart lucee.
Also lucee 6 is a very different beast from 5. To see some of the issues Iāve been running into on Windows, check out these posts:
With the eventual dropping of Multi Mode, Iām not even sure each site will need a WEB-INF folder. But, I could be totally wrong about that. I still have much testing to doā¦
Oh, for java pathing, another option is to search for and run āLucee-Tomcat Service Controlā as admin. You can see (and presumably change) the pathing settings there, but Iāve always kept it simple by just re-using the default location.
thanks for all the detailed responses Flea.
Yeah Iām nervous about my Lucy windows permissions. I saw something about enabling Service account to have rewrite access to each IIS folder. It did ultimately work I am worried about escalated permissions. Ultimately youāll need to do a full install on a new Server just so on the latest OS, and each version of the software and see if I can get to run natively without using an older versions of Lucee, Tom cat, Java.
Thanks again, Iāll need to make a recording if successful and share with others as well.