OpenJDK v17
FROM RELEASE 3.33 AND UP
jrest and the presence aggregator require openjdk release 17 and upwards to work from release 3.33 onwards.
Windows
Uninstall services
If any of the components are currently running as a windows service, then uninstall these first and install the service again later.
Uninstall previous java versions
Uninstall them all, from windows add remove programs and also any which may be in c:\Apps (you won't need them any more).
Install OpenJDK 17 from Eclipse Temurin
Download and install OpenJDK 17 from here:
https://adoptium.net/temurin/releases/
Download the .msi version
Here is a direct link to version 17.0.7+7, but note, there may be a newer one when you do this.
Install and select ALL of the options (JAVA_HOME and JavaSoft Oracle registry keys are unselected):
Update Services (jrest, presence-aggregator ...)
Make a backup of the original directory.
Then make a clean new copy of the new version of the component (jrest, presence-aggregator ... from the deploy directory in jtel-system-java-services).
None of the components should need any configuration on a new up to date jtel standard installation.
Check Services
If the component was running as a service, install the service again now, and then start.
For shell:startup deployments, try and start the service. The new startup cmd file for the service should find the new java automatically (as JAVA_HOME is now set from the Temurin installation above).
Linux
Uninstall old java
For most debian installations, this will to the trick:
apt-get -y remove default-jdk
Also check /home/jtel, to see if there are any manually installed JDKs here, for example:
ls /home/jtel/jdk-12.0.2
If so, remove them:
rm -Rf /home/jtel/jdk-12.0.2
Install Java 17
apt-get -y update apt-get -y install openjdk-17-jdk # Currently, under debian 11 you need to run the last command twice, because some dependencies are missing first time round apt-get -y install openjdk-17-jdk
Update Services
Since most services no longer require a specific configuration for new standard installations (apart from maybe the DB password), it is wise to install copy the whole service directory (for example, all of jrest) to the linux machine again, as if you were making a new installation.
Example - Update jrest
RUN AS ROOT
# Remove cd /home/jtel systemctl stop jrest rm -Rf jrest # Install (same as normal install procedure) cp -r /home/jtel/shared/jtel-system-java-services/deploy/jrest jrest mkdir /home/jtel/jrest/log chown -R jtel:jtel jrest cp jrest/systemd/jrest.service /etc/systemd/system chmod +x /home/jtel/jrest/systemd/jrest systemctl daemon-reload systemctl enable jrest systemctl start jrest