The following exception appears in the tomcat log, localhost.log
SEVERE: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: sirrus.admingui.ListGroups.isShowList()Z
Similar behavior has also been observed in a Tomcat V4 admingui deployment after upgrading from 5.5.3 to 6.02. The admingui webapp works in all other capacities except when trying to list administrative groups selectively by entering a few characters as search criteria and clicking on search. In that instance, the error in the Tomcat localhost.log error was:
2008-07-30 15:18:57 StandardWrapperValve[jsp]: Servlet.service() for servlet jsp threw exception
org.apache.jasper.JasperException
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:207)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:145)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:139)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2460)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:119)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:157)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
----- Root Cause -----
java.lang.NullPointerException
at sirrus.admingui.ListAdminGroups.processRequest(ListAdminGroups.java:579)
at org.apache.jsp.ListAdminGroups_jsp._jspService(ListAdminGroups_jsp.java:354)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:145)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:139)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2460)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:119)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:157)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
at java.lang.Thread.run(Unknown Source)
While the issue cannot be replicated by RSA Customer Support, in all instances the following procedure has been used to correct the fault for customers reporting the problem:
At present, it appears likely that the Tomcat server has cached copies of classes from the 5.5.3 webapp which has been retained and saved by the default classloader. After deploying the newer 6.0x admingui webapp, the Tomcat server still uses it cached copies of the 5.5.3 class files.
It is possible that the following sequence may also work however this has not been confirmed by any customers who have experienced the problem (noting it is not possible for RSA to verify as Customer Support has been unable to reproduce the problem)
For full details on the correct deployment of the Access Manager 6.0 admingui webapp see the installation and configuration guide. Access manager 6.0 documentation is available online at the following locations:
RSA Access Manager 6.0 Administrator's Guide
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/admin.pdf
RSA Access Manager 6.0 Release Notes
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/rel_notes/rel_notes.html
RSA Access Manager 6.0 Getting Started
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/getting_started.pdf
RSA Access Manager 6.0 Getting Started Pilot Version
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/pilot_getting_started.pdf
RSA Access Manager 6.0 Servers Installation and Configuration Guide
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/install_config.pdf
RSA Access Manager 6.0 Upgrade Guide
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/upgrade.pdf
RSA Access Manager 6.0 Planning Guide
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/planning.pdf
RSA Access Manager 6.0 Developer's Guide - View in a web browser
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/sdk/docs/dev_guide/index.html
RSA Access Manager 6.0 API Delta Document - View in a web browser
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/sdk/docs/api_delta/index.html
RSA Access Manager 6.0 Developer's Guide - Windows Download (.zip format)
https://knowledge.rsasecurity.com/docs/rsa_cleartrust/access_manager/ct-sdk-6.0-win32-x86.zip