CA PPM application service does not start with error: java.lang.NoSuchMethodError
Article ID: 106036
Clarity PPM SaaSClarity PPM On Premise
On starting the app service, it does not start and users are unable to connect to it. In the logs we can see messages similar to:
app-system log: 2018/06/27 11:06:50.562 | SEVERE: Servlet.service() for servlet [Clarity Web Control] in context with path [/niku] threw exception [Filter execution threw an exception] with root cause 2018/06/27 11:06:50.593 | java.lang.NoSuchMethodError: org.owasp.esapi.ESAPI.getLogger(Ljava/lang/String;)Lorg/owasp/esapi/Logger; 2018/06/27 11:06:50.617 | at com.niku.union.web.filter.XSSRequestHelper.escapeXSS(XSSRequestHelper.java:38)
The error might be on another class, not only org.owasp.esapi
This usually happens when there is a java class conflict (possibly two jars with the same name)
To find what causes it:
Step 1: 1. Check the contents of the directories (compare to a working environment): $cappm/lib $cappm/customlib 2. You must check the file size, there are also tools that will allow you to confirm the files match. If they don't, revert any customizations, copy the files from the working environment and retry deploying the service
Step 2: The other possibility for a clash is the Tomcat directory.
1. If anything was recently changed within the Tomcat directory, any other applications using it or similar, you must revert this back and retry deploying and starting the service.
2. If you don't know of changes, try to reinstall Tomcat, modify the properties.xml to point to the new directory
Example: <applicationServer vendor="tomcat" useLdap="false" home="C:\apps\Tomcat8.5.13" Save Then run the commands: service stop remove all service add app bg nsa beacon service deploy all service start all
Keep in mind that unfortunately there is not a supported way to modify any of the Tomcat files CA PPM uses. Any of the jar files in Tomcat directory and %CATALINA_HOME% directory could be causing a conflict.