Process Automation: Upgraded to JDK 8. Showing a blank page when accessed. ERROR: "Unable to compile class for JSP" in c2o.log

Document ID : KB000004125
Last Modified Date : 14/02/2018
Show Technical Document Details
Issue:

Problem:

Recent upgrade of Process Automation JDK from a 1.7 to a 1.8 release, or an incremental update to a 1.8.0_81 or later JDK.  Afterwards the Process Automation login page shows as blank page and in the \pam\server\c2o\c2o.log we see the following unable to compile class error message:

 

2016-10-05 08:52:55,663 ERROR [org.apache.jasper.compiler.Compiler] [8.20.197-8080-9] Compilation error
org.eclipse.jdt.internal.compiler.classfmt.ClassFormatException


2016-10-05 08:52:55,788 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/itpam].[jsp]] [8.20.197-8080-9] Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP:

 

This issue impacts ALL version of 4.2 (where there is no support for JDK 8 at all); and version 4.3 and 4.3 sp1.  

Please note - This also applies to the non-public JDK 7 releases; versions 1.7.0_81 or later. 

Cause:

Answer:

This is caused by a security change Oracle made starting with JDK version 1.8.0_91.  You can confirm the JDK version used by Process Automation by opening the c2osvcw.conf file for windows which is located here:

/PAM/server/c2o/bin

Lines 5 and 8 show the path and version of the JDK in use:

wrapper.java.command=d:/program files/java/jdk1.8.0_101/bin/java

wrapper.java.classpath.2=d:/program files/java/jdk1.8.0_101/lib/tools.jar

 

 

 

Resolution:

The log term solution is to upgrade to the latest release of Process Automation Orchestrator 4.3 SP2 where we have resolve these issues and fully support JDK 8 and the unreleased JDK 7 patches.

 

As a temporary work around until the Orchestrator engine can be upgraded, please revert the JDK to earlier release.  For 4.3 and 4.3 sp1 please revert to JDK 1.8.0_90 or earlier, for all 4.2.x releases please revert to JDK 1.7.0_79 or earlier.

 

1.  Stop the CA Process Automation Orchestrator service
2.  Uninstall the 1.8.0_x  (fully uninstall of the JDK from the system using normal uninstall options for your OS).
3.  Install older JDK.

   For 4.3 and 4.3 sp1: JDK 1.8.0_90 or earlier,

   For all 4.2.x releases: JDK 1.7.0_79 or earlier.


4.  Modify \pam\server\c2o\.config\c2osvcw.conf 

update lines 5 and 8 with the path to the newly installed JDK.


5.  Delete the following cache folders from \PAM\server\c2o
  data
  logs
  scripts
  tmp
  temp
  work
  wrappers

6. Start the orchestrator service