This article is a Work in Progress!
Java is distributed by different vendors in different versions. It is important to choose the appropriate version, depending on the technical needs and requirements.
In this article we are giving some advice to help selecting the appropriate Java version for your Stambia DI environment.
Generalities
-
Supported Java distributions
- Stambia DI officially supports Oracle Java (versions 6, 7 and 8).
- Java 9 & 10 are not supported.
- Java 11 will be supported starting with Designer S19.1
- Some installations run with IBM Java (AIX servers), OpenJdk (Linux). Stambia DI can work with these so feel free to use them and inform us in case of issues.
-
Good practices & information
- Make sure your QA environment has the same exact Java version as your target Production environment
- Upgrade your JVM with care: test your Stambia processes before deploying the new Java version, avoid Java auto-updates
- You can easily install standalone Java versions to avoid dependency with other applications and auto-updates.
- Make sure your QA environment has the same exact Java version as your target Production environment
-
Examples of technical requirements
- If you plan to use ODBC datasources, make sure that the JVM architecture (32 bits / 64 bits) matches the ODBC driver architecture.
- SSL connections to some SFTP/SSH/HTTPS servers may require Java Security algorythms => make sure the Java version supports them.
- Some JDBC drivers require minimum Java versions. See your JDBC vendor's documentation (Oracle, Microsoft SqlServer, etc...)
If the requirements lead to several Java versions, you can setup several Runtimes with different Java versions!
Checking which Java version is currently used by Stambia DI
-
Java version used by the Designer
- Select the "Help" / "About Stambia Designer" menu
- Click the "Installation Details" button
- Go to the "Configuration" tab and look for the line starting with "java.home" and "java.version"
-
Java version used by the Runtime - Method 1
- Execute a Stambia process which executes the following Rhino Scripting action:
__ctx__.publishVariable("/JAVA_VERSION", java.lang.System.getProperty("java.version"));
__ctx__.publishVariable("/JAVA_HOME", java.lang.System.getProperty("java.home")); - Consult the result in the Session's Variables view
- Execute a Stambia process which executes the following Rhino Scripting action:
-
Java version used by the Runtime - Method 2
- Connect the Designer to the Runtime
- From the "Runtime" view, click the "Open" button
- Select the "Virtual Machine" tab and consult the information, included the additional links at the bottom
Configuring Stambia DI for a specific standalone Java installation
It is a good idea to configure Stambia DI for a specific standalone Java installation: it ensures you keep control on the JVM used by Stambia DI, for example no impact when the Operating System silently does a Java upgrade...
- Download a standalone Java archive (usually available as a .tar.gz archive)
- Uncompress it to your preferred installation directory, for example: /home/stambia/java/jre1.8.0_151
-
Configure the Designer to use this Java installation, in stambia.ini :
-vm
/home/stambia/java/jre1.8.0_151
-vmargs
[...] -
Configure the Runtime to use this Java installation, using the STAMBIA_JAVA_HOME environment variable:
export STAMBIA_JAVA_HOME=/home/stambia/java/jre1.8.0_151