Tomcat shutdown logs 'ClassCastException: class java.io.ObjectStreamClass$Caches$1 cannot be cast to class java.util.Map' Warning

Solution Verified - Updated -

Issue

  • After updating to java 11.0.16+, we began seeing the following WARNINGs when stopping tomcat:
WARNING [Thread-3] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesObjectStreamClassCaches Failed to clear soft references from ObjectStreamClass$Caches for web application [ROOT]
    java.lang.ClassCastException: class java.io.ObjectStreamClass$Caches$1 cannot be cast to class java.util.Map (java.io.ObjectStreamClass$Caches$1 and java.util.Map are in module java.base of loader 'bootstrap')
        at org.apache.catalina.loader.WebappClassLoaderBase.clearCache(WebappClassLoaderBase.java:2325)
        at org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesObjectStreamClassCaches(WebappClassLoaderBase.java:2300)
        at org.apache.catalina.loader.WebappClassLoaderBase.clearReferences(WebappClassLoaderBase.java:1669)
        at org.apache.catalina.loader.WebappClassLoaderBase.stop(WebappClassLoaderBase.java:1597)
        at org.apache.catalina.loader.WebappLoader.stopInternal(WebappLoader.java:463)
        at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)
        at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5515)
        at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:257)

Environment

  • JBoss Web Server (JWS) 5.6 and earlier
    • Tomcat 9.0.50 and earlier
  • Java 11.0.16+

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content