Upgrade Java operation
Use the Upgrade Java operation to programmatically download and run the Java upgrader script for a specified runtime, Runtime cluster, Runtime cloud, Authentication Broker, or API Gateway.
The Upgrade Java operation upgrades your selected container to Boomi's latest supported version of Java. Currently, the latest version of Java available is Java 11.
You must have the Runtime Management privilege to use the Upgrade Java operation to update any and all containers. Additionally the container must be eligible for upgrade.
Structure
<JavaUpgrade atomId="">
<JavaUpgradeOptions>
<migrateCertificate></migrateCertificate>
<cacertsPath></cacertsPath>
<prefJreLocation></prefJreLocation>
<externalJDKPath></externalJDKPath>
</JavaUpgradeOptions>
</JavaUpgrade>
| Field | Type | Description |
|---|---|---|
| Filter | Filter | Filter |
| atomId | string | The unique ID assigned by the system to the container 1. Use the Runtime ID for Runtimes, Runtime clusters, and Runtime clouds found in the user interface by navigating to Manage > Runtime Management and viewing the Atom Information panel for a selected container. 2. Use the Gateway ID found in the user interface by navigating to Configure Server > Gateways > click on a Gateway's name > Gateway Information panel. 3. Use the Broker ID found in the user interface by navigating to Configure Server > Authentication > click on a Broker's name > Broker Information panel. |
| JavaUpgradeOptions | string | (Optional) Represents any options a user can specify while running the upgrade script manually. You can use the following attributes as options which are detailed elsewhere in this table: - migrateCertificate - cacertsPath - prefJreLocation - externalJDKPath Note: If you omit JavaUpgradeOptions from your request, the response body contains the @type and atomId values only. |
| migrateCertificate | boolean | (Optional) If set to true in the request body, custom certificate migration occurs automatically to the new version of Java. It places certificates in a new JVM of the same directory where you originally installed the container.If set to false in the request body, custom certificates do not migrate. Note: If you include JavaUpgradeOptions but omit migrateCertificate from the request, the response automatically sets the migrateCertificate field to false. |
| cacertsPath | string | (Optional) If specified, defines the directory file path from which to migrate custom certificates.If you include this optional attribute in your request, the directory file path in your local drive must contain either of the following folder patterns jre/lib/security/cacerts, or lib/security/cacerts , wherecacerts is the name of the certificates file. Note: You must title the certificate file as cacerts. Because the Upgrade Java API operationautomatically appends the lib/security and jre/lib/security part of the file path to search for the cacerts file name, you need only to supply the root directory OR the root directory and JRE folder in the cacerts value of your request. For example, if your certificates file is located at /boomi_atom/jre/lib/security/cacerts, you need to specify either /boomi_atom/jre or /boomi_atom in the attribute's value. If you omit this attribute from the request or it does not populate its value, it uses the default JVM directory. The migrateCertificates value must be set to true for the override to take place. |
| prefJreLocation | string | Determines how the installation's JRE is updated or whether to use an external JDK. The following values are possible:- Switch the preferred JRE to the installation's JRE directory - internal - Do not make changes to the preferred JRE - current - Use external JDK for preferred JRE - external If you set prefJreLocation to external you must also specify externalJDKPath.If you do not specify a value or omit the parameter, the default value is current. |
| externalJDKPath | string | (Required if you set prefJreLocation to external) Defines the directory file path to find the custom JDK your container uses after the upgrade. Include this attribute in the request when you want to use a custom JDK rather than one provided by Boomi. If you do not specify this attribute, the upgrader automatically installs a new Boomi-provided JRE to your local directory with the latest supported version of Java. |
Supported operations
| GET | QUERY | CREATE | UPDATE | EXECUTE | DELETE |
|---|---|---|---|---|---|
| Not supported | Not supported | Supported | Not supported | Not supported | Not supported |
Using the CREATE operation
-
After providing the endpoint and a request body that includes the containerID, the CREATE operation immediately upgrades the given container to Boomi's latest supported version of Java.
After performing a CREATE operation, you can determine a successful upgrade when the Update to use Java 11.<minor_version> link no longer appears on the following pages:
- For Runtimes, Runtime clusters, and Runtime clouds — the Atom Information panel (Manage > Runtime Management of the user interface).
- For Brokers (applicable for versions newer than 1.8.0_281-b09)— the Broker Information panel (Configure Server > Authentication of the user interface).
- For API Gateways — the Gateway Information panel (Configure Server > Gateways of the user interface).
-
You must have the Runtime Management privilege to perform the CREATE operation. If you have the Runtime Management Read Access privilege, you cannot use this operation to upgrade your container.
-
The container must be online to use the Upgrade Java operation.
-
The container must be eligible for upgrade.
-
Important: Only the node that runs upgrades (typically the head node) restarts automatically to run the updated Java version. Therefore, you must restart all other cluster nodes to install the upgrade.
SOAP implementation
CREATE operation
Sample SOAP request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:api="http://api.platform.boomi.com/">
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken wsu:Id="UsernameToken" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsse:Username>user@boomi.com</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">password123</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<api:create xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<object xsi:type="api:JavaUpgrade" atomId="3456789a-bcde-f012-3456-789abcdef012">
<api:JavaUpgradeOptions>
<api:migrateCertificate>true</api:migrateCertificate>
<api:cacertsPath>/boomi_atom/jre</api:cacertsPath>
<api:prefJreLocation>internal</api:prefJreLocation>
</api:JavaUpgradeOptions>
</object>
</api:create>
</soapenv:Body>
</soapenv:Envelope>
Sample SOAP response:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<bns:createResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bns="http://api.platform.boomi.com/">
<result xsi:type="bns:JavaUpgrade" atomId="3456789a-bcde-f012-3456-789abcdef012">
<bns:JavaUpgradeOptions>
<bns:migrateCertificate>true</bns:migrateCertificate>
<bns:cacertsPath/>/boomi_atom/jre<bns:cacertsPath>
<api:externalJDKPath>/usr/java/latest</api:externalJDKPath>
</bns:JavaUpgradeOptions>
</result>
</bns:createResponse>
</S:Body>
</S:Envelope>