WAAE Web Server does not start after upgrade to release 11.3.6 Service Pack 2 or higher.
The following error is logged in the %AUTOUSER%\out\waae_webservices_wrapper.log
INFO | jvm 1 | 2017/07/30 12:21:21 | Jul 30, 2017 12:21:21 PM org.apache.catalina.startup.Catalina load
INFO | jvm 1 | 2017/07/30 12:21:21 | WARNING: Catalina.start using conf/server.xml: Error at (29, 67) : org.apache.catalina.core.JasperListener
INFO | jvm 1 | 2017/07/30 12:21:21 | Jul 30, 2017 12:21:21 PM org.apache.tomcat.util.digester.Digester startElement
INFO | jvm 1 | 2017/07/30 12:21:21 | SEVERE: Begin event threw exception
INFO | jvm 1 | 2017/07/30 12:21:21 | java.lang.ClassNotFoundException: org.apache.catalina.core.JasperListener
The "ClassNotFoundException: org.apache.catalina.core.JasperListener" is caused by a misconfiguration in the Webserver's server.xml file. During the WAAE upgrade, something prevented the Web Server configuration file from being updated.
Previous WAAE releases shipped Tomcat 7 and used to reference the JasperListener class in the server.xml file like so:
<Listener className="org.apache.catalina.core.JasperListener" />
WAAE releases 11.3.6 SP2 and higher are shipped with Tomcat 8. The JasperListener class is no longer supported since Tomcat 8.0.0.
Here is the excerpt from the Apache Tomcat 8 Changelog:
"Initialize the JSP runtime in Jasper's initializer to avoid need for a Jasper-specific lifecycle listener. JasperListener has been removed. (jboynes)"
<Listener className="org.apache.catalina.core.JasperListener" />
The commented line should look like so:
<!--Listener className="org.apache.catalina.core.JasperListener" /-->
Note: Although this Knowledge Base document is written targeting CA Workoad Automation AE (WAAE), the same issue may manifest in any CA solution or product that uses Apache Tomcat for webserver, upgrades Tomcat version from 7 to 8 and does not update the server.xml with the change listed in the Solution section.