Before trying to update/upgrade the running JAVA SDK on WAS 8.5.5.x you need to check whether your setup is fulfilling the minimum requirements or not. Fix Pack 9 or higher should be applied to your WAS to switch the JAVA SDK 8.0 from JAVA SDK 7.1. In my case, fix pack 12 was applied on WAS 8.5.5 and OS was RHEL 6.8.
Below are the minimum requirements for upgrading the JAVA SDK from 7.1 to 8.0.
Minimum Supported Operating Systems
Linux:
- Red Hat 6 Update 4
- SLES 11 Service Pack 2
- Ubuntu 12.04 LTS
AIX:
- AIX 6.1 TL7
- AIX 7.1 TL1
HP-UX:
- HP-UX 11i v3 (11.31)
IBM i:
- IBM i V7R1
Minimum Fix Pack Level
- The minimum fix pack required for JAVA SDK 8.0 is Fix Pack 9 i.e. your WAS version should be 8.5.5.9 or above.
End of Support Dates dor JAVA SDKs:
- Java 6 in traditional WAS V8.5: April 30, 2018
- Java 7 in traditional WAS V8.5: September 30, 2019
Follow the steps given below to switch to JAVA 8.0 if your WAS is running on JAVA 7.1. To manage the JAVA SDK on WAS 8.5.5.x you can use the managesdk command.
First, check all versions of the installed JAVA SDK for your system WAS 8.5.5.x.
List all installed JAVA SDK
Use the below command to list all the versions of JAVA SDK installed on your server. There may be only one or maybe more. WAS 8.5.5.0 comes with JAVA SDK 6.0 i.e. 1.6.
[root@DEVWAS1 bin]# pwd /opt/IBM/WebSphere/AppServer/bin [root@DEVWAS1 bin]# ./managesdk.sh -listAvailable CWSDK1003I: Available SDKs : CWSDK1005I: SDK name: 1.8_64 CWSDK1005I: SDK name: 1.6_64 CWSDK1005I: SDK name: 1.7.1_64 CWSDK1001I: Successfully performed the requested managesdk task. [root@DEVWAS1 bin]#
Now you have to check the running version of the JAVA on your WAS 8.5..5.x.
Running version of JAVA SDK
Use the below command to check the running version of the JAVA with profiles and dmgr.
[root@DEVWAS1 bin]# pwd /opt/IBM/WebSphere/AppServer/bin [root@DEVWAS1 bin]# ./managesdk.sh -listEnabledProfileAll CWSDK1004I: Profile DeploymentManager : CWSDK1006I: PROFILE_COMMAND_SDK = 1.7.1_64 CWSDK1008I: Node CellManager01 SDK name: 1.7.1_64 CWSDK1009I: Server dmgr SDK name: 1.7.1_64 CWSDK1004I: Profile Profile01 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.7.1_64 CWSDK1008I: Node DEVWAS1Node01 SDK name: 1.7.1_64 CWSDK1009I: Server nodeagent SDK name: 1.7.1_64 CWSDK1009I: Server Mem01 SDK name: 1.7.1_64 CWSDK1004I: Profile Profile02 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.7.1_64 CWSDK1008I: Node DEVWAS1Node02 SDK name: 1.7.1_64 CWSDK1009I: Server Mem02 SDK name: 1.7.1_64 CWSDK1009I: Server nodeagent SDK name: 1.7.1_64 CWSDK1001I: Successfully performed the requested managesdk task.
As we can see from the above commands that JAVA 6.0, JAVA 7.1 and JAVA 8.0 are available on our WAS server and our running version of JAVA in JAVA 7.1. Now we need to switch the JAVA for profiles and dmgr from JAVA 7.1 to JAVA 8.0.
The following example demonstrates the sequence of commands to use to list profiles and the SDKs they use, list available SDKs, change the default SDK to a Version 8.0 SDK and, if profiles exist already, enable the profiles to use the Version 8.0 SDK.
Set the command default to the Version 8.0 SDK:
[root@DEVWAS1 bin]# pwd /opt/IBM/WebSphere/AppServer/bin [root@DEVWAS1 bin]# ./managesdk.sh -setCommandDefault -sdkname 1.8_64 CWSDK1021I: The command default SDK name is now set to 1.8_64. CWSDK1001I: Successfully performed the requested managesdk task. [root@DEVWAS1 bin]#
Set the new profile default to the Version 8.0 SDK:
[root@DEVWAS1 bin]# ./managesdk.sh -setNewProfileDefault -sdkname 1.8_64 CWSDK1022I: New profile creation will now use SDK name 1.8_64. CWSDK1001I: Successfully performed the requested managesdk task. [root@DEVWAS1 bin]#
If profiles already exist, enable the profiles to use the Version 8.0 SDK:
[root@DEVWAS1 bin]# ./managesdk.sh -enableProfileAll -sdkname 1.8_64
If the above command does not work then pass the -user and -password parameters as given below. In my case, it worked with the -user and -password parameters. Please note that node agents should be running if you are updating the JAVA SDK for the profiles which already exist.
[root@DEVWAS1 bin]# ./managesdk.sh -enableProfileAll -sdkname 1.8_64 -enableServers -user wasadmin -password wasadmin CWSDK1017I: Profile DeploymentManager now enabled to use SDK 1.8_64. CWSDK1024I: The node default SDK setting for federated profile Profile01 has been saved in the master configuration repository. CWSDK1025I: A synchronization operation is required before configuration changes to federated profile Profile01 can be used. CWSDK1017I: Profile Profile01 now enabled to use SDK 1.8_64. CWSDK1024I: The node default SDK setting for federated profile Profile02 has been saved in the master configuration repository. CWSDK1025I: A synchronization operation is required before configuration changes to federated profile Profile02 can be used. CWSDK1017I: Profile Profile02 now enabled to use SDK 1.8_64. CWSDK1001I: Successfully performed the requested managesdk task. [root@DEVWAS1 bin]#
Now again use the ./managesdk.sh -listEnabledProfileAll command to check whether JAVA SDK updated to version 8.0 or not.
JAVA SDK updated to version 8.0
[root@DEVWAS1 bin]# pwd /opt/IBM/WebSphere/AppServer/bin [root@DEVWAS1 bin]# ./managesdk.sh -listEnabledProfileAll CWSDK1004I: Profile DeploymentManager : CWSDK1006I: PROFILE_COMMAND_SDK = 1.8_64 CWSDK1008I: Node CellManager01 SDK name: 1.8_64 CWSDK1009I: Server dmgr SDK name: 1.8_64 CWSDK1004I: Profile Profile01 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.8_64 CWSDK1008I: Node DEVWAS1Node01 SDK name: 1.8_64 CWSDK1009I: Server nodeagent SDK name: 1.8_64 CWSDK1009I: Server Mem01 SDK name: 1.8_64 CWSDK1004I: Profile Profile02 : CWSDK1006I: PROFILE_COMMAND_SDK = 1.8_64 CWSDK1008I: Node DEVWAS1Node02 SDK name: 1.8_64 CWSDK1009I: Server nodeagent SDK name: 1.8_64 CWSDK1009I: Server Mem02 SDK name: 1.8_64 CWSDK1001I: Successfully performed the requested managesdk task. [root@DEVWAS1 bin]#
Note: The above activities were done on WebSphere Application Server ND 8.5.5.12 running on RHEL 6.8.