How to upgrade Java JDK version in Websphere 8.5

In this post we are going to see how to upgarde the websphere application server JDK from Java6 to 7.0

Download and install Java 7.0, which is shipped with Websphere application server v8.5.5 from Passport Advantage:

Note: Java 7.0 fixpacks are shipped with every WAS v8.5.x fixpack, but base Java 7.0 must be installed first.

  • Java 6 is the product's default Java SDK that is installed as part of the installation from the offering.
  • Java 7.0 is a feature extension and can be downloaded from Passport Advantage or by using Live repository.
  • Java 7.1 is a feature extension which can be installed on WAS v8.5.5.2. It is not available for Solaris and HP UNIX.

Refer to this document for the Java versions that is shipped with WebSphere Application Server

Once you have downloaded the archive files unzip them and install them using Installation manager

WS_SDK_JAVA_TEV7.0_1OF3_WAS_8.5.5.zip
WS_SDK_JAVA_TEV7.0_2OF3_WAS_8.5.5.zip
WS_SDK_JAVA_TEV7.0_3OF3_WAS_8.5.5.zip

List available packages first using Installation manager (imcl)

/opt/IBM/InstallationManager/eclipse/tools/imcl listAvailablePackages -repositories .

(here "." represents my present working directory, where I have un compressed the JDK files)

Install the JDK

/opt/IBM/InstallationManager/eclipse/tools/imcl install com.ibm.websphere.IBMJAVA.v70_7.0.4001.201405109_2203 -repositories . -installationDirectory /opt/websphere85/appserver -acceptLicense -showProgress -log installv8_jdk_install.xml


 Note*: we should use the <WAS_INSTALLATION_HOME> as the Installation directory. Otherwise we will encounter the following error.

Now the JVM is successfully installed into the machine.

                                         Switching SDK Between Profiles/JVMs

Installing the optional Java 7.0 or Java 7.1 does not imply that profiles can take advantage of this new version of Java.The managesdk command has to be used to switch Java (or) the WAS Admin Console. wsadmin can also be used.

List the available JDKs first

Use managesdk script to find the available JDKs.

./managesdk.sh -listAvailable -verbose 
 
Currently, I have 1.6_64 version installed and available.

In my case. I have a "Cell Profile" ,

In other words, I have a Dmgr Profile named "Dmgr01" with Federated Application Server profile named "AppSrv01"

Set Command Default

After setting the command default SDK to SDK 7, commands will use SDK 7 when issued from the bin directory under the WebSphere Application Server
installation root directory (<was_install_root>/bin


Now we have to set the JDK 7 for the profiles and its components like node and Application Server

I am using Managesdk to set the JDK7 as default for DMGR profile 
Now we have to set for the Application Server Profile.

Node level
I am using wsadmin to see what is the Available SDK on Node.


If you are still not able to see the JDK7 under Node. You should first sync the node using syncnode.sh after stopping the nodeagent.

In my case, SOAP port of dmgr is 78003 .

Refer your serverindex.xml file of dmgr to know the SOAP port. You can find the file at

Use the syncNode.sh script available under AppSrv01/bin



Now come back again and check, whether the JDK7 is reflecting in Node level

Now we can set the JDK7 for the node level.

Check whether the DefaultSDK of Node points to Jdk7 using wsadmin

Now its available at Node level and you can set the JDK7 for all its Application Servers now. I use managesdk here.