ICEfaces
  1. ICEfaces
  2. ICE-10908

Server warning when removing showcase from Tomcat 8 after using mobi native demos

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Won't Fix
    • Affects Version/s: 4.1
    • Fix Version/s: EE-4.1.0.GA
    • Labels:
      None
    • Environment:
      Tomcat 8, android 6.0.1
    • Assignee Priority:
      P2

      Description

      Server warning when removing showcase from Tomcat 8. I was able to produce these warnings by testing only the native demos such as camera, camcorder, fetch-contact etc. then removing the .war file from the server. This appears different from the usual server warnings occasionally seen when removing showcase from the server.
      21-Dec-2015 10:41:07.544 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
      talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
      s The web application [showcase] appears to have started a thread named [pool-1-
      thread-1] but has failed to stop it. This is very likely to create a memory leak
      . Stack trace of thread:
       sun.misc.Unsafe.park(Native Method)
       java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
       java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
      tractQueuedSynchronizer.java:2043)
       java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
      dThreadPoolExecutor.java:1079)
       java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
      dThreadPoolExecutor.java:807)
       java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
       java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)

       java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

       java.lang.Thread.run(Thread.java:745)
      21-Dec-2015 10:41:07.544 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
      talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
      s The web application [showcase] appears to have started a thread named [pool-1-
      thread-2] but has failed to stop it. This is very likely to create a memory leak
      . Stack trace of thread:
       sun.misc.Unsafe.park(Native Method)
       java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
       java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
      tractQueuedSynchronizer.java:2043)
       java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
      dThreadPoolExecutor.java:1079)
       java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
      dThreadPoolExecutor.java:807)
       java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
       java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)

       java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

       java.lang.Thread.run(Thread.java:745)
      21-Dec-2015 10:41:07.544 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
      talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
      s The web application [showcase] appears to have started a thread named [pool-1-
      thread-3] but has failed to stop it. This is very likely to create a memory leak
      . Stack trace of thread:
       sun.misc.Unsafe.park(Native Method)
       java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
       java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
      tractQueuedSynchronizer.java:2043)
       java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
      dThreadPoolExecutor.java:1085)
       java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
      dThreadPoolExecutor.java:807)
       java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
       java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)

       java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

       java.lang.Thread.run(Thread.java:745)

        Activity

        Hide
        Liana Munroe added a comment -

        When retesting with individual QA test apps using native comps and Tomcat 8 the following server warnings were found when removing the .war files from the server.

        SMS

        21-Dec-2015 12:50:00.298 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [sms] appears to have started a thread named [Mojarra-WebR
        esourceMonitor-1-thread-1] but has failed to stop it. This is very likely to cre
        ate a memory leak. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNano
        s(AbstractQueuedSynchronizer.java:2082)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1090)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)

        Cloud Push

        21-Dec-2015 13:41:44.825 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [cloudPush] appears to have started a thread named [Mojarr
        a-WebResourceMonitor-1-thread-1] but has failed to stop it. This is very likely
        to create a memory leak. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNano
        s(AbstractQueuedSynchronizer.java:2082)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1090)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        21-Dec-2015 13:41:44.825 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [cloudPush] appears to have started a thread named [pool-1
        -thread-1] but has failed to stop it. This is very likely to create a memory lea
        k. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
        tractQueuedSynchronizer.java:2043)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1079)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        21-Dec-2015 13:41:44.825 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [cloudPush] appears to have started a thread named [pool-1
        -thread-2] but has failed to stop it. This is very likely to create a memory lea
        k. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
        tractQueuedSynchronizer.java:2043)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1079)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        21-Dec-2015 13:41:44.835 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [cloudPush] appears to have started a thread named [pool-1
        -thread-3] but has failed to stop it. This is very likely to create a memory lea
        k. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
        tractQueuedSynchronizer.java:2043)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1085)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        21-Dec-2015 13:41:44.835 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [cloudPush] appears to have started a thread named [pool-1
        -thread-4] but has failed to stop it. This is very likely to create a memory lea
        k. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
        tractQueuedSynchronizer.java:2043)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1085)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        Show
        Liana Munroe added a comment - When retesting with individual QA test apps using native comps and Tomcat 8 the following server warnings were found when removing the .war files from the server. SMS 21-Dec-2015 12:50:00.298 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [sms] appears to have started a thread named [Mojarra-WebR esourceMonitor-1-thread-1] but has failed to stop it. This is very likely to cre ate a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNano s(AbstractQueuedSynchronizer.java:2082) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1090) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) Cloud Push 21-Dec-2015 13:41:44.825 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [cloudPush] appears to have started a thread named [Mojarr a-WebResourceMonitor-1-thread-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNano s(AbstractQueuedSynchronizer.java:2082) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1090) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 21-Dec-2015 13:41:44.825 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [cloudPush] appears to have started a thread named [pool-1 -thread-1] but has failed to stop it. This is very likely to create a memory lea k. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs tractQueuedSynchronizer.java:2043) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1079) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 21-Dec-2015 13:41:44.825 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [cloudPush] appears to have started a thread named [pool-1 -thread-2] but has failed to stop it. This is very likely to create a memory lea k. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs tractQueuedSynchronizer.java:2043) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1079) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 21-Dec-2015 13:41:44.835 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [cloudPush] appears to have started a thread named [pool-1 -thread-3] but has failed to stop it. This is very likely to create a memory lea k. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs tractQueuedSynchronizer.java:2043) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1085) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 21-Dec-2015 13:41:44.835 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [cloudPush] appears to have started a thread named [pool-1 -thread-4] but has failed to stop it. This is very likely to create a memory lea k. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs tractQueuedSynchronizer.java:2043) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1085) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745)
        Hide
        Mircea Toma added a comment -

        Using ICEfaces 4 when testing I cannot reproduce the warnings described above. There are though another couple of warnings showing up:

        01-Feb-2016 21:53:01.855 SEVERE [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.session.StandardManager.stopInternal Exception unloading sessions to persistent storage
         java.lang.NoClassDefFoundError: org/icefaces/impl/application/WindowScopeManager$1
        	at java.lang.Class.getDeclaredConstructors0(Native Method)
        	at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
        	at java.lang.Class.getDeclaredConstructors(Class.java:2020)
        	at java.io.ObjectStreamClass.computeDefaultSUID(ObjectStreamClass.java:1749)
        	at java.io.ObjectStreamClass.access$100(ObjectStreamClass.java:72)
        	at java.io.ObjectStreamClass$1.run(ObjectStreamClass.java:250)
        	at java.io.ObjectStreamClass$1.run(ObjectStreamClass.java:248)
        	at java.security.AccessController.doPrivileged(Native Method)
        	at java.io.ObjectStreamClass.getSerialVersionUID(ObjectStreamClass.java:247)
        	at java.io.ObjectStreamClass.writeNonProxy(ObjectStreamClass.java:722)
        	at java.io.ObjectOutputStream.writeClassDescriptor(ObjectOutputStream.java:668)
        	at java.io.ObjectOutputStream.writeNonProxyDesc(ObjectOutputStream.java:1282)
        	at java.io.ObjectOutputStream.writeClassDesc(ObjectOutputStream.java:1231)
        	at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1427)
        	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
        	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348)
        	at org.apache.catalina.session.StandardSession.doWriteObject(StandardSession.java:1710)
        	at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1116)
        	at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:401)
        	at org.apache.catalina.session.StandardManager.unload(StandardManager.java:320)
        	at org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:487)
        	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
        	at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5386)
        	at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
        	at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:828)
        	at org.apache.catalina.startup.HostConfig.undeploy(HostConfig.java:1386)
        	at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1313)
        	at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1534)
        	at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:285)
        	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
        	at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1142)
        	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1378)
        	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1382)
        	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1350)
        	at java.lang.Thread.run(Thread.java:745)
        Caused by: java.lang.ClassNotFoundException: org.icefaces.impl.application.WindowScopeManager$1
        	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305)
        	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157)
        	... 36 more
        
        01-Feb-2016 21:53:01.857 WARNING [Notification queue consumer.] null.null Notification queue encountered 
         java.lang.NoClassDefFoundError: org/icepush/NotificationEntry
        	at org.icepush.LocalPushGroupManager$Notification.newNotificationEntry(LocalPushGroupManager.java:979)
        	at org.icepush.LocalPushGroupManager$Notification.run(LocalPushGroupManager.java:922)
        	at org.icepush.LocalPushGroupManager$QueueConsumerTask.run(LocalPushGroupManager.java:1045)
        	at java.util.TimerThread.mainLoop(Timer.java:555)
        	at java.util.TimerThread.run(Timer.java:505)
        Caused by: java.lang.ClassNotFoundException: org.icepush.NotificationEntry
        	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305)
        	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157)
        	... 5 more
        Show
        Mircea Toma added a comment - Using ICEfaces 4 when testing I cannot reproduce the warnings described above. There are though another couple of warnings showing up: 01-Feb-2016 21:53:01.855 SEVERE [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.session.StandardManager.stopInternal Exception unloading sessions to persistent storage java.lang.NoClassDefFoundError: org/icefaces/impl/application/WindowScopeManager$1 at java.lang. Class .getDeclaredConstructors0(Native Method) at java.lang. Class .privateGetDeclaredConstructors( Class .java:2671) at java.lang. Class .getDeclaredConstructors( Class .java:2020) at java.io.ObjectStreamClass.computeDefaultSUID(ObjectStreamClass.java:1749) at java.io.ObjectStreamClass.access$100(ObjectStreamClass.java:72) at java.io.ObjectStreamClass$1.run(ObjectStreamClass.java:250) at java.io.ObjectStreamClass$1.run(ObjectStreamClass.java:248) at java.security.AccessController.doPrivileged(Native Method) at java.io.ObjectStreamClass.getSerialVersionUID(ObjectStreamClass.java:247) at java.io.ObjectStreamClass.writeNonProxy(ObjectStreamClass.java:722) at java.io.ObjectOutputStream.writeClassDescriptor(ObjectOutputStream.java:668) at java.io.ObjectOutputStream.writeNonProxyDesc(ObjectOutputStream.java:1282) at java.io.ObjectOutputStream.writeClassDesc(ObjectOutputStream.java:1231) at java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1427) at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178) at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348) at org.apache.catalina.session.StandardSession.doWriteObject(StandardSession.java:1710) at org.apache.catalina.session.StandardSession.writeObjectData(StandardSession.java:1116) at org.apache.catalina.session.StandardManager.doUnload(StandardManager.java:401) at org.apache.catalina.session.StandardManager.unload(StandardManager.java:320) at org.apache.catalina.session.StandardManager.stopInternal(StandardManager.java:487) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5386) at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232) at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:828) at org.apache.catalina.startup.HostConfig.undeploy(HostConfig.java:1386) at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1313) at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1534) at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:285) at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117) at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90) at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1142) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1378) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1382) at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1350) at java.lang. Thread .run( Thread .java:745) Caused by: java.lang.ClassNotFoundException: org.icefaces.impl.application.WindowScopeManager$1 at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157) ... 36 more 01-Feb-2016 21:53:01.857 WARNING [Notification queue consumer.] null . null Notification queue encountered java.lang.NoClassDefFoundError: org/icepush/NotificationEntry at org.icepush.LocalPushGroupManager$Notification.newNotificationEntry(LocalPushGroupManager.java:979) at org.icepush.LocalPushGroupManager$Notification.run(LocalPushGroupManager.java:922) at org.icepush.LocalPushGroupManager$QueueConsumerTask.run(LocalPushGroupManager.java:1045) at java.util.TimerThread.mainLoop(Timer.java:555) at java.util.TimerThread.run(Timer.java:505) Caused by: java.lang.ClassNotFoundException: org.icepush.NotificationEntry at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305) at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157) ... 5 more
        Hide
        Mircea Toma added a comment -

        The fix for the first warning was to replace SynchronizationMonitorObject instances with String object instances to avoid NoClassDefFoundError errors when application was removed from the file system and the web context was not yet fully disposed.

        Show
        Mircea Toma added a comment - The fix for the first warning was to replace SynchronizationMonitorObject instances with String object instances to avoid NoClassDefFoundError errors when application was removed from the file system and the web context was not yet fully disposed.
        Hide
        Mircea Toma added a comment -

        The fix for the second warning was to capture the NoClassDefFoundError error in QueueConsumerTask.run that occurs when application is removed from file system and QueueConsumerTask is not disposed yet by the servlet's container context disposed event.

        Show
        Mircea Toma added a comment - The fix for the second warning was to capture the NoClassDefFoundError error in QueueConsumerTask.run that occurs when application is removed from file system and QueueConsumerTask is not disposed yet by the servlet's container context disposed event.
        Hide
        Mircea Toma added a comment - - edited

        There's still a warning left that is triggered by Mojarra:

        01-Feb-2016 17:37:51.517 SEVERE [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [mobitest] created a ThreadLocal with key of type [com.sun.faces.application.ApplicationAssociate$1] (value [com.sun.faces.application.ApplicationAssociate$1@785e7ae7]) and a value of type [com.sun.faces.application.ApplicationAssociate] (value [com.sun.faces.application.ApplicationAssociate@12dedec]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
        

        This warning was already covered by ICE-10377 .

        Show
        Mircea Toma added a comment - - edited There's still a warning left that is triggered by Mojarra: 01-Feb-2016 17:37:51.517 SEVERE [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks The web application [mobitest] created a ThreadLocal with key of type [com.sun.faces.application.ApplicationAssociate$1] (value [com.sun.faces.application.ApplicationAssociate$1@785e7ae7]) and a value of type [com.sun.faces.application.ApplicationAssociate] (value [com.sun.faces.application.ApplicationAssociate@12dedec]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak. This warning was already covered by ICE-10377 .
        Hide
        Mircea Toma added a comment -

        Please make sure that when testing ICEfaces 4 code is used.

        Show
        Mircea Toma added a comment - Please make sure that when testing ICEfaces 4 code is used.
        Hide
        Liana Munroe added a comment - - edited

        Tested with ICEfaces 4 trunk r47049. Tomcat 8.0.15, Windows 7, ipad ios 9.1, Android 6.0.1 phone using Mobile Showcase from the showcase.war file. The warnings as written in the description of this JIRA are still appearing. I was able to reproduce them by using a cleared cache ChromeSafari browser. I interacted with 4 demos (camcorder, camera, cloud push and fetch contact) then I removed the .war file from the server. The error message also appeared when using the sms QA test application found at:
        http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/sms

        01-Feb-2016 15:35:29.641 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [showcase] appears to have started a thread named [Mojarra
        -WebResourceMonitor-1-thread-1] but has failed to stop it. This is very likely t
        o create a memory leak. Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNano
        s(AbstractQueuedSynchronizer.java:2082)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1090)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        01-Feb-2016 15:35:29.641 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [showcase] appears to have started a thread named [pool-1-
        thread-1] but has failed to stop it. This is very likely to create a memory leak
        . Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
        tractQueuedSynchronizer.java:2043)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1079)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        01-Feb-2016 15:35:29.641 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca
        talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread
        s The web application [showcase] appears to have started a thread named [pool-1-
        thread-2] but has failed to stop it. This is very likely to create a memory leak
        . Stack trace of thread:
         sun.misc.Unsafe.park(Native Method)
         java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
         java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs
        tractQueuedSynchronizer.java:2043)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:1085)
         java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule
        dThreadPoolExecutor.java:807)
         java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068)
         java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        
         java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        
         java.lang.Thread.run(Thread.java:745)
        01-Feb-2016 15:35:29.641 SEVERE [ContainerBackgroundProcessor[StandardEngine[Cat
        alina]]] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapFor
        Leaks The web application [showcase] created a ThreadLocal with key of type [com
        .sun.faces.application.ApplicationAssociate$1] (value [com.sun.faces.application
        .ApplicationAssociate$1@6fb79bf1]) and a value of type [com.sun.faces.applicatio
        n.ApplicationAssociate] (value [com.sun.faces.application.ApplicationAssociate@7
        f5f2483]) but failed to remove it when the web application was stopped. Threads
        are going to be renewed over time to try and avoid a probable memory leak.
        
        Show
        Liana Munroe added a comment - - edited Tested with ICEfaces 4 trunk r47049. Tomcat 8.0.15, Windows 7, ipad ios 9.1, Android 6.0.1 phone using Mobile Showcase from the showcase.war file. The warnings as written in the description of this JIRA are still appearing. I was able to reproduce them by using a cleared cache ChromeSafari browser. I interacted with 4 demos (camcorder, camera, cloud push and fetch contact) then I removed the .war file from the server. The error message also appeared when using the sms QA test application found at: http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/sms 01-Feb-2016 15:35:29.641 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [showcase] appears to have started a thread named [Mojarra -WebResourceMonitor-1-thread-1] but has failed to stop it. This is very likely t o create a memory leak. Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:226) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNano s(AbstractQueuedSynchronizer.java:2082) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1090) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 01-Feb-2016 15:35:29.641 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [showcase] appears to have started a thread named [pool-1- thread-1] but has failed to stop it. This is very likely to create a memory leak . Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs tractQueuedSynchronizer.java:2043) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1079) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 01-Feb-2016 15:35:29.641 WARNING [ContainerBackgroundProcessor[StandardEngine[Ca talina]]] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThread s The web application [showcase] appears to have started a thread named [pool-1- thread-2] but has failed to stop it. This is very likely to create a memory leak . Stack trace of thread: sun.misc.Unsafe.park(Native Method) java.util.concurrent.locks.LockSupport.park(LockSupport.java:186) java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Abs tractQueuedSynchronizer.java:2043) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:1085) java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Schedule dThreadPoolExecutor.java:807) java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1068) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) java.lang. Thread .run( Thread .java:745) 01-Feb-2016 15:35:29.641 SEVERE [ContainerBackgroundProcessor[StandardEngine[Cat alina]]] org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapFor Leaks The web application [showcase] created a ThreadLocal with key of type [com .sun.faces.application.ApplicationAssociate$1] (value [com.sun.faces.application .ApplicationAssociate$1@6fb79bf1]) and a value of type [com.sun.faces.applicatio n.ApplicationAssociate] (value [com.sun.faces.application.ApplicationAssociate@7 f5f2483]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
        Hide
        Mircea Toma added a comment -

        I still cannot reproduce the severe warnings described above. For testing I used both showcase and sms applications. The tests were run on OSX 10.10 and Windows 8 with Tomcat 8.0.23.

        Can you please specify the exact server side environment you are using to run the tests?

        Show
        Mircea Toma added a comment - I still cannot reproduce the severe warnings described above. For testing I used both showcase and sms applications. The tests were run on OSX 10.10 and Windows 8 with Tomcat 8.0.23. Can you please specify the exact server side environment you are using to run the tests?
        Hide
        Mircea Toma added a comment -

        I managed to reproduce this issue on OSX as well but only when using Tomcat 8.0.15.

        Show
        Mircea Toma added a comment - I managed to reproduce this issue on OSX as well but only when using Tomcat 8.0.15.
        Hide
        Mircea Toma added a comment - - edited

        This turns out to be a Tomcat issue. Tomcat version 8.0.17 will provide a different ServletContext instance to ServletContextListener.contextInitialized than to ServletContextListener.contexDestroyed. Mojarra keeps track of the created servlet context instances and when one of the context is destroyed will verify if it was created in the first place. If not found Mojarra will skip the context cleanup process, that includes any thread locals, thread pools or disposing application scoped beans.
        Somewhere in between Tomcat version 8.0.17 and version 8.0.23 the issue was fixed because the issue does not occur in 8.0.23 or later.

        Really fixing this issue is out of our reach.

        Show
        Mircea Toma added a comment - - edited This turns out to be a Tomcat issue. Tomcat version 8.0.17 will provide a different ServletContext instance to ServletContextListener.contextInitialized than to ServletContextListener.contexDestroyed . Mojarra keeps track of the created servlet context instances and when one of the context is destroyed will verify if it was created in the first place. If not found Mojarra will skip the context cleanup process, that includes any thread locals, thread pools or disposing application scoped beans. Somewhere in between Tomcat version 8.0.17 and version 8.0.23 the issue was fixed because the issue does not occur in 8.0.23 or later. Really fixing this issue is out of our reach.

          People

          • Assignee:
            Mircea Toma
            Reporter:
            Liana Munroe
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: