Support Article
Tomcat startup fails due to custom Tomcat version string
SA-5312
Summary
Tomcat startup fails due to custom Tomcat version string.
Error Messages
2014-12-24 16:15:24,397 [ocalhost-startStop-2] [ ] [ ] [ ] ( etier.impl.EngineStartup) ERROR - Failed to interrupt indexing
java.lang.StringIndexOutOfBoundsException: String index out of range: 15
at java.lang.String.substring(String.java:1907)
at com.pega.pegarules.data.internal.dictionary.ClassMapImpl.serverAllowMerge(ClassMapImpl.java:9980)
at com.pega.pegarules.data.internal.dictionary.ClassMapImpl.isMergeSupported(ClassMapImpl.java:9940)
Steps to Reproduce
Install Pega 7.1.7 that uses customized version of Tomcat as the application server.
Root Cause
The root cause of this problem is a defect in Pegasystems’ code. In Pega 7.1.7, there is a need to check the version of Tomcat to determine if the merge functionality is supported.
The code fails parsing the webServerNameAndVersion while checking the version of Tomcat if the string returned is not in the expected format.
Resolution
This issue is resolved by HFix-20560.
Use prpcutils to import the hotfix as described in the following PDN article. Be sure to change the import mode to hotfix (import.mode=hotfix)
https://pdn.pega.com/system-operations/how-to-import-or-export-an-archive-from-the-command-line
Published January 31, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.