I’m trying to update FME Flow from version 2023.1 to 2024.2. Upgrading In Place, On the Same Machine.
I want to use the encryption key from the previous FME Flow installation so I could restore the previous configuration in the new installation. This means I also want to update my FME Flow Database password in fmeDatabaseConfig.txt.
Before starting the newly installed FME Flow, the encryptConfigSetting.sh script works and outputs the password in the format of DB_PASSWORD=fme_enc:xxx.
After I’ve started the FME Flow, the script does not work anymore:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/codec/digest/DigestUtils
at COM.safe.fmeserver.encryption.FMEEncryptionKeyFileUtils.computeChecksum(FMEEncryptionKeyFileUtils.java:22)
at COM.safe.fmeserver.encryption.FMEEncryptionKeyAccessorFile.calculateChecksum(FMEEncryptionKeyAccessorFile.java:86)
at COM.safe.fmeserver.encryption.FMEEncryptionKeyAccessorFile.loadKeys(FMEEncryptionKeyAccessorFile.java:159)
at COM.safe.fmeserver.encryption.FMEEncryptionKeyAccessorFile.<init>(FMEEncryptionKeyAccessorFile.java:74)
at COM.safe.fmeserver.encryption.FMEEncryptionKeyAccessorFile.<init>(FMEEncryptionKeyAccessorFile.java:54)
at COM.safe.installer.EncryptConfigSetting.main(EncryptConfigSetting.java:41)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.codec.digest.DigestUtils
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(Unknown Source)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(Unknown Source)
at java.base/java.lang.ClassLoader.loadClass(Unknown Source)... 6 more
Also in the previous installation encryptConfigSetting.sh script worked and outputted the password in the format of DB_PASSWORD=fme_enc2:xxx.
What could be the issue? Could the startup of FME Flow change some java paths, or could it be something related to user permissions?