View by: All Feedback
JDK 21 in R25
Temenos currently supports Java SE 11 in most applications. With Oracle's premier support for Java SE 11
ending in September 2023, and extended support only available until January 2032, many banks are moving
away from it due to risk and compliance concerns. OpenJDK distributions are also expected to drop
support for JDK 11.
To address this, we need to transition to either Java SE 17 or Java SE 21. However, as the premier support
for Java SE 17 ends on September 30, 2026, Temenos has decided to migrate to Java SE 21 for R25 AMR.
What does this mean for new or upgrading customers?
Java SE 21 support is available from R25 AMR onwards. If an existing client upgrades to R25 AMR or a later
release, they must utilize Oracle Java SE 21 or OpenJDK 21 as the runtime, along with a JEE Application
server that supports Java SE 21 (listed below):
JBoss 8 EAP
WildFly 32
IBM WebSphere Liberty 23.0.0.10 or later/Open Liberty 23.0.0.10 or later
Oracle WebLogic 14.1.2 or later
JBoss 7 EAP is no longer supported and this change facilitates JBoss 8 support. Similarly, WildFly does not
release bug fixes or security patches for lower releases; thus, requiring to upgrade to higher WildFly 32
releases. Likewise, WebSphere Liberty and Open Liberty clients will need to upgrade to the latest available
version, 23.0.0.10.
Oracle WebLogic and IBM WebSphere Liberty do not currently support Jakarta EE 10 specifications. Hence
clients using WebLogic and WebSphere Liberty, planning to upgrade to R25 AMR, should request R25 AMR
software compatible with Java EE 8 specifications and use the most recent version of WebLogic or
WebSphere Liberty.
Temenos Products Support in Java 21
Temenos has migrated most applications to Java 21. However, some still use older versions of java due to
third-party limitations. For example, IIB and Oracle Service Bus (OSB) adaptors for Transact only supports
Java 8 and not Java 21. Documentation reflects these specifics alongside other products in Java 21.
It is technically feasible to run multiple versions of Java SE and JE application servers on the same
hardware. Nonetheless, to mitigate potential issues such as port conflicts, different application server
versions writing to the same file, and other similar problems, it is advisable to deploy software supporting
different Java SE versions on separate machines. This concern is not applicable to containerized
environments, as each application instance operates within its own isolated Java runtime.
Jakarta EE Transformation Strategy
WildFly 32 and JBoss EAP 8.x are compliant with Jakarta EE 10. Since our applications (except TAFJ) use the
javax namespace, we employ the WildFly Jakarta Transformer for compatibility. We have two transformation
methods:
Default: Transform during server startup.
Alternative: Pre-transform artifacts before deployment to avoid potential slowness.
Users facing issues with the default method can use the pre-transformation approach.
✎ NOTE
This does not apply to IBM WebSphere Liberty and Oracle WebLogic Server deployment for R25.
Jakarta Transformer JARs
Download the following Jakarta transformer JARs.
wildfly-ee-9-deployment-transformer-1.0.0.Final.jar
transformer-6.5.4.Final.jar
✎ NOTE
Maven is a public repository.
Approach 1:
Transform deployment artifacts during JBoss / WildFly startup by following these steps:
1. Create a module.xml file with the configuration below.
<module xmlns="urn:jboss:module:1.9" name="org.wildfly.deployment.transformation"
<resources>
<resource-root path="wildfly-ee-9-deployment-transformer-1.0.0.Final.jar"/>
<resource-root path="transformer-6.5.4.Final.jar"/>
</resources>
<dependencies>
<module name="java.xml"/>
<module name="org.jboss.as.server"/>
<module name="org.jboss.logging"/>
<module name="org.wildfly.security.elytron-private"/>
</dependencies>
</module>
2. Copy the Jakarta Transformer JAR files to:
JBOSS_HOME/modules/system/layers/base/org/wildfly/deployment/transformation/ma
in
Approach 2:
Manually transform artifacts before deploying them to the JBoss folder. This removes the need for
automatic transformation during deployment.
To perform the transformation, use the following command:
java -jar transformer-6.5.4.Final.jar <source war/ear/jar/rar> <target war/ear/jar