Java.lang.ThreadDeath em JPA

Ola pessoal Bom dia!!!
Não estou conseguindo resolver este erro em JPA
queria saber se alguem que ja passou por isso tem alguma
solução vou passar o erro completo

Inicializando EntityManagerFactory
EntityManagerFactory Inicializadda
Initializing Sun's JavaServer Faces implementation (1.2_02-b03-FCS) for context '/ProfessorOnLine'
Completed initializing Sun's JavaServer Faces implementation (1.2_02-b03-FCS) for context '/ProfessorOnLine'
Illegal access: this web application instance has been stopped already (the eventual following stack trace is caused by an error thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access, and has no functional impact)
java.lang.ThreadDeath
javax.faces.el.EvaluationException: java.lang.ThreadDeath
        at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:97)
        at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:96)
        at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:57)
        at javax.faces.component.UICommand.broadcast(UICommand.java:383)
        at com.sun.webui.jsf.component.WebuiCommand.broadcast(WebuiCommand.java:145)
        at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:450)
        at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:759)
        at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:97)
        at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:244)
        at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:113)
        at javax.faces.webapp.FacesServlet.service(FacesServlet.java:244)
        at org.apache.catalina.core.ApplicationFilterChain.servletService(ApplicationFilterChain.java:397)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
        at com.sun.webui.jsf.util.UploadFilter.doFilter(UploadFilter.java:203)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:216)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
        at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:216)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:184)
        at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:276)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
        at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:240)
        at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:179)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
        at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:73)
        at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:182)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
        at com.sun.enterprise.web.VirtualServerPipeline.invoke(VirtualServerPipeline.java:120)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
        at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:137)
        at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:566)
        at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:536)
        at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:939)
        at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:239)
        at com.sun.enterprise.web.connector.grizzly.ProcessorTask.invokeAdapter(ProcessorTask.java:667)
        at com.sun.enterprise.web.connector.grizzly.ProcessorTask.processNonBlocked(ProcessorTask.java:574)
        at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:844)
        at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:287)
        at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:212)
        at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:252)
        at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:75)
Caused by: java.lang.ThreadDeath
public class JPAHelper implements ServletContextListener{
    
    public void contextInitialized(ServletContextEvent sce) {
        System.out.println( "Inicializando EntityManagerFactory" );
        EntityManagerFactory emf = Persistence.createEntityManagerFactory( "PPU" );
        
        sce.getServletContext().setAttribute( "emf", emf );
        
        System.out.println( "EntityManagerFactory Inicializadda" );
    }

    public void contextDestroyed(ServletContextEvent sce) {
        EntityManagerFactory emf = (EntityManagerFactory) sce.getServletContext().getAttribute( "emf" );
        
        if( emf != null ){
            System.out.println( "Concluindo EntityManagerFactory" );
            emf.close();
        }
        
    }
    
    public static EntityManagerFactory getEntitymanagerFactory(){
        Object attribute = JSFHelper.getApplicationAttribute( "emf" );
        return (EntityManagerFactory) attribute;
    }
    
    public static EntityManager createEntityManager(){
        return getEntitymanagerFactory().createEntityManager();
    }
    
}
public class JSFHelper {
    
   public static ExternalContext getExternalContext(){
       FacesContext facesContext = FacesContext.getCurrentInstance();
       return facesContext.getExternalContext();
   }
   
   public static Object getApplicationAttribute( String attributename ){
       Map reqAttrMap = JSFHelper.getExternalContext().getApplicationMap();
       return reqAttrMap.get( attributename );
   }
}

Se alguem tiver alguma solução eu agradeço!!!

vc já tentou não colocar o EntityManager na session?

Fico a pensar q vc com um EM na session, se o container precisar serializar, como ele irá fazer com o EM que tem uma connection associada???

hmmm, caso a se pensar.

[s]
baiano