Error: javax.servlet.ServletException: tried to access class org.apache.xml.serializer.ExtendedContentHandler
Error Message
When the View Details or the View All Metadata button is clicked, the GIS Portal Toolkit (GPT) displays the following error message:
"javax.servlet.ServletException: tried to access class org.apache.xml.serializer.ExtendedContentHandler
from class org.apache.xalan.transformer.TransformerImpl
com.esri.is.catalog.discoveryservice.DiscoveryBaseServlet.doPost(DiscoveryBaseServlet.java:71)
javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
com.esri.is.ptk.servlet.EncodingFilter.doFilter(EncodingFilter.java:56)"
The GPT global.log logs following error:
ERROR [TP-Processor2] [/Portal].[jsp] (invoke:704) - Servlet.service() for servlet jsp
threw exception java.lang.IllegalAccessError: tried to access class
org.apache.xml.serializer.ExtendedContentHandler
Cause
The serializer.jar is a third-party library file that was required in previous versions of the GPT. At GPT 3.1, it is no longer needed and can, in some cases, interfere with the newest versions of the Xalan and Xerces parsers.
Solution or Workaround
The serializer.jar file is most likely interfering with the XML parsing. Removing it should resolve the problem.
- In a directory browser like Windows Explorer or command prompt in Unix environments, navigate to the <Tomcat Install Dir>\Portal\WEB-INF\lib directory.
- Delete the serializer.jar file.
- Using the Tomcat Manager, restart the Portal application or restart all of Tomcat, if doing so will not interfere with performance or functionality of the system.