CA PPM application service does not start with error: java.lang.NoSuchMethodError

Document ID : KB000106036
Last Modified Date : 11/07/2018
Show Technical Document Details
Question:
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

How to resolve the problem?
Answer:
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.