Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 3A886200BC1 for ; Wed, 16 Nov 2016 16:49:42 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 39139160B08; Wed, 16 Nov 2016 15:49:42 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 35F91160B02 for ; Wed, 16 Nov 2016 16:49:41 +0100 (CET) Received: (qmail 74594 invoked by uid 500); 16 Nov 2016 15:49:40 -0000 Mailing-List: contact users-help@tomee.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@tomee.apache.org Delivered-To: mailing list users@tomee.apache.org Received: (qmail 74578 invoked by uid 99); 16 Nov 2016 15:49:40 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 16 Nov 2016 15:49:40 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id 99B7DC3193 for ; Wed, 16 Nov 2016 15:49:39 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.679 X-Spam-Level: * X-Spam-Status: No, score=1.679 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id meFawEP1BceP for ; Wed, 16 Nov 2016 15:49:37 +0000 (UTC) Received: from mail-it0-f53.google.com (mail-it0-f53.google.com [209.85.214.53]) by mx1-lw-eu.apache.org (ASF Mail Server at mx1-lw-eu.apache.org) with ESMTPS id 49ABC5FC88 for ; Wed, 16 Nov 2016 15:49:36 +0000 (UTC) Received: by mail-it0-f53.google.com with SMTP id o1so58952475ito.1 for ; Wed, 16 Nov 2016 07:49:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=dtFwyPng/vSO+HCV1AhAQI0bULSjDzJukv8ckxfpEIo=; b=N3k+/PraXen2xesVtbBHiUZgpglGMbf1j6QpCa4Y2Asdx1BWkRB6LKU87X3P73FaTg W/om+i8ayUlJ7yHtxcJDsV6u+ewP4BPg1UIRmtPaXQ2FETur7bbtvZLiVipOThubaF/z R0oiW6o5FM/3+mOab9sbLcj4LEDImApRuGjKisqdtA8ZnywHszHfaGENCAS8jyCZYZh6 OONaOo1Acj6pJx2bMy5/6oHnT0lT/fYqLBfS8ko61RsWj95eBQvsGjYFeGN7IhUkS7nU dnP5726wqCT+tjwGDeZckPooU4qqMqBGp72XQZXyZY5Rn00kiEAeCJCH4fX5Grb2omYT lZ1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=dtFwyPng/vSO+HCV1AhAQI0bULSjDzJukv8ckxfpEIo=; b=kBOAQk7TAfkTCrjaS9kLIu7fLPMOp2kfWl8mcsIJryAyxu/vTRiip66yWxvDWvaZth jBZ5hR8O83QGUJ5MhaW1QILGtoxa2zu8gFF4a+QkGsydy8A6rvd4nDiYdzDDJ+tCQ3qF GG2/QoBcLx1IO86M/R6Pq6jjCWtpK/S8VhNBpqo0xRdzWSU4L6z+LK1xypNF8Rwz/pu+ yo5Gp2TCCwu2dWxhneW3auix/zPY/F2ESNRaqI7iLuRrxqzDv+nrHsgt/45jUrY2ky8Q qVJF73P7mbnDP5hSMphhKpYdRizBJWDhuyzuZS9on3UnmYlbJzmZq0zPqmlHICPWwhl1 dQAQ== X-Gm-Message-State: ABUngvcsz6ymz9H2wLwU0hYVeEYUMwmqzCvOzDnldUhVqJutUEILcSCXAd+Wm+9cnaL4UdMDD92+YkhlDDpzYw== X-Received: by 10.107.138.142 with SMTP id c14mr3657469ioj.213.1479311333602; Wed, 16 Nov 2016 07:48:53 -0800 (PST) MIME-Version: 1.0 Received: by 10.36.218.3 with HTTP; Wed, 16 Nov 2016 07:48:53 -0800 (PST) In-Reply-To: References: From: Adam Cornett Date: Wed, 16 Nov 2016 10:48:53 -0500 Message-ID: Subject: Re: Intermittent @ViewScoped Bean Errors To: users@tomee.apache.org Content-Type: multipart/alternative; boundary=001a113e9b1c8d461b05416d02e7 archived-at: Wed, 16 Nov 2016 15:49:42 -0000 --001a113e9b1c8d461b05416d02e7 Content-Type: text/plain; charset=UTF-8 I don't think so. This error will happen for even the simplest bean: we have one 40 line class that just loads a list of JPA objects from the db and sorts it for presentation and it triggers the issue too. So far I have seen this happen on at least 8 different view scoped beans across different wars in our product. I've been trying to sort this out for two days now and can't figure out if it is caused by a change in our app or if there is something going on in OWB/MyFaces/TomEE. I've disabled tomcat session replication and the issue still persists (although sometimes it takes many tries to get the issue to manifest). We have session beans all over our application and those work fine, it is just he viewscoped ones that can trigger the issue. The intermittent nature of the problem is also very confusing. What sort of things could I do in our application code that would cause the container to loose the request? On Wed, Nov 16, 2016 at 10:35 AM, Romain Manni-Bucau wrote: > Normally the session is captured from the request. Is it possible you loose > the request when touching this bean somehow? > > > Romain Manni-Bucau > @rmannibucau | Blog > | Old Blog > | Github rmannibucau> | > LinkedIn | JavaEE Factory > > > 2016-11-16 15:51 GMT+01:00 Adam Cornett : > > > Using TomEE 7.0.2 we are seeing intermittent problems with beans > > using javax.faces.view.ViewScoped. > > We have many pages that use @ViewScoped beans, but the behavior of this > > issue is not predictable. Sometimes we can login and not have any issue > at > > all, sometimes it will only impact a single bean and all other > @ViewScoped > > beans will work fine, but when a bean starts throwing an error, it will > > keep throwing the error until the user logs out (ends the servlet > session) > > and then when logging back it in may or may not happen again. > > > > > > The primary error is below: > > javax.enterprise.context.ContextNotActiveException: WebBeans context > with > > scope type annotation @SessionScoped does not exist within current thread > > at > > org.apache.webbeans.container.BeanManagerImpl.getContext( > > BeanManagerImpl.java:331) > > at > > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHan > > dler.getContextualInstance(NormalScopedBeanInterceptorHandler.java:89) > > at > > org.apache.webbeans.intercept.SessionScopedBeanInterceptorHa > > ndler.getContextualInstance(SessionScopedBeanInterceptorHandler.java:76) > > at > > org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.get( > > NormalScopedBeanInterceptorHandler.java:71) > > at > > org.apache.myfaces.cdi.view.ViewScopeBeanHolder$$OwbNormalScopeProxy0. > > generateUniqueViewScopeId(org/apache/myfaces/cdi/view/ > > ViewScopeBeanHolder.java) > > at > > org.apache.myfaces.cdi.impl.CDIManagedBeanHandlerImpl. > generateViewScopeId( > > CDIManagedBeanHandlerImpl.java:92) > > at > > org.apache.myfaces.view.ViewScopeProxyMap.getWrapped( > > ViewScopeProxyMap.java:79) > > at org.apache.myfaces.view.ViewScopeProxyMap.size( > > ViewScopeProxyMap.java:99) > > at javax.faces.component.UIViewRoot.saveState(UIViewRoot.java:1502) > > at > > org.apache.myfaces.renderkit.ErrorPageWriter._writeComponent( > > ErrorPageWriter.java:851) > > at > > org.apache.myfaces.renderkit.ErrorPageWriter.debugHtml( > > ErrorPageWriter.java:352) > > at > > org.apache.myfaces.renderkit.ErrorPageWriter.handle( > > ErrorPageWriter.java:471) > > at > > org.apache.myfaces.context.MyFacesExceptionHandlerWrapperImpl.handle( > > MyFacesExceptionHandlerWrapperImpl.java:301) > > at > > javax.faces.context.ExceptionHandlerWrapper.handle( > > ExceptionHandlerWrapper.java:61) > > at > > org.apache.webbeans.jsf.OwbExceptionHandler.handle( > > OwbExceptionHandler.java:61) > > at org.apache.myfaces.lifecycle.LifecycleImpl.render( > > LifecycleImpl.java:287) > > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:200) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:230) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at org.apache.tomcat.websocket.server.WsFilter.doFilter( > WsFilter.java:52) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:192) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at > > org.apache.catalina.core.ApplicationDispatcher.invoke( > > ApplicationDispatcher.java:726) > > at > > org.apache.catalina.core.ApplicationDispatcher.processRequest( > > ApplicationDispatcher.java:469) > > at > > org.apache.catalina.core.ApplicationDispatcher.doForward( > > ApplicationDispatcher.java:394) > > at > > org.apache.catalina.core.ApplicationDispatcher.forward( > > ApplicationDispatcher.java:311) > > at > > com.achalert.alert.security.servlets.LoginHandlerServlet.processRequest( > > LoginHandlerServlet.java:186) > > at > > com.achalert.alert.security.servlets.LoginHandlerServlet. > > doPost(LoginHandlerServlet.java:371) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:648) > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:230) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at org.apache.tomcat.websocket.server.WsFilter.doFilter( > WsFilter.java:52) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:192) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at org.apache.openejb.server.httpd.EEFilter.doFilter(EEFilter.java:65) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:192) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at > > com.achalert.alert.security.filters.SessionValidationFilter.doFilter( > > SessionValidationFilter.java:134) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:192) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at > > com.achalert.alert.http.OmnibusAchAlertFilter.doFilter( > > OmnibusAchAlertFilter.java:161) > > at > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter( > > ApplicationFilterChain.java:192) > > at > > org.apache.catalina.core.ApplicationFilterChain.doFilter( > > ApplicationFilterChain.java:165) > > at > > org.apache.catalina.core.StandardWrapperValve.invoke( > > StandardWrapperValve.java:198) > > at > > org.apache.catalina.core.StandardContextValve.invoke( > > StandardContextValve.java:108) > > at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44) > > at > > org.apache.catalina.authenticator.AuthenticatorBase.invoke( > > AuthenticatorBase.java:472) > > at > > org.apache.catalina.core.StandardHostValve.invoke( > > StandardHostValve.java:140) > > at > > org.apache.catalina.valves.ErrorReportValve.invoke( > > ErrorReportValve.java:79) > > at > > org.apache.tomee.catalina.OpenEJBSecurityListener$ > RequestCapturer.invoke( > > OpenEJBSecurityListener.java:97) > > at > > org.apache.catalina.core.StandardEngineValve.invoke( > > StandardEngineValve.java:87) > > at > > org.apache.catalina.connector.CoyoteAdapter.service( > > CoyoteAdapter.java:349) > > at > > org.apache.coyote.http11.Http11Processor.service( > Http11Processor.java:784) > > at > > org.apache.coyote.AbstractProcessorLight.process( > > AbstractProcessorLight.java:66) > > at > > org.apache.coyote.AbstractProtocol$ConnectionHandler.process( > > AbstractProtocol.java:802) > > at > > org.apache.tomcat.util.net.NioEndpoint$SocketProcessor. > > doRun(NioEndpoint.java:1410) > > at > > org.apache.tomcat.util.net.SocketProcessorBase.run( > > SocketProcessorBase.java:49) > > at > > java.util.concurrent.ThreadPoolExecutor.runWorker( > > ThreadPoolExecutor.java:1142) > > at > > java.util.concurrent.ThreadPoolExecutor$Worker.run( > > ThreadPoolExecutor.java:617) > > at > > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run( > > TaskThread.java:61) > > at java.lang.Thread.run(Thread.java:745) > > > > I've also noticed that there is another error which may be related. This > > one is usually somewhere in the logs before the above error happens: > > org.apache.webbeans.component.ManagedBean - Exception thrown while > > destroying bean instance : [ViewScopeBeanHolder, WebBeansType:MANAGED, > > Name:null, API > > Types:[org.apache.myfaces.cdi.view.ViewScopeBeanHolder,java. > > io.Serializable,java.lang.Object], > > Qualifiers:[javax.enterprise.inject.Default,javax. > enterprise.inject.Any]] > > java.lang.NullPointerException: null > > at > > org.apache.myfaces.cdi.view.ViewScopeContextImpl.destroyAllActive( > > ViewScopeContextImpl.java:229) > > at > > org.apache.myfaces.cdi.view.ViewScopeContextImpl.destroyAllActive( > > ViewScopeContextImpl.java:223) > > at > > org.apache.myfaces.cdi.view.ViewScopeBeanHolder. > destroyBeansOnPreDestroy( > > ViewScopeBeanHolder.java:221) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > > sun.reflect.NativeMethodAccessorImpl.invoke( > NativeMethodAccessorImpl.java: > > 62) > > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke( > > DelegatingMethodAccessorImpl.java:43) > > at java.lang.reflect.Method.invoke(Method.java:498) > > at > > org.apache.webbeans.intercept.LifecycleInterceptorInvocation > > Context.proceed(LifecycleInterceptorInvocationContext.java:103) > > at > > org.apache.webbeans.portable.InjectionTargetImpl.preDestroy( > > InjectionTargetImpl.java:352) > > at > > org.apache.webbeans.component.AbstractOwbBean.destroy( > > AbstractOwbBean.java:179) > > at > > org.apache.webbeans.context.AbstractContext.destroyInstance( > > AbstractContext.java:206) > > at > > org.apache.webbeans.context.AbstractContext.destroyInstance( > > AbstractContext.java:192) > > at > > org.apache.webbeans.context.AbstractContext.destroy( > > AbstractContext.java:218) > > at > > org.apache.webbeans.web.context.WebContextsService. > destroyRequestContext( > > WebContextsService.java:408) > > at > > org.apache.openejb.cdi.CdiAppContextsService.destroyRequestContext( > > CdiAppContextsService.java:113) > > at > > org.apache.webbeans.web.context.WebContextsService. > > endContext(WebContextsService.java:223) > > at > > org.apache.openejb.server.httpd.BeginWebBeansListener.requestDestroyed( > > BeginWebBeansListener.java:99) > > at > > org.apache.catalina.core.StandardContext.fireRequestDestroyEvent( > > StandardContext.java:5965) > > at > > org.apache.catalina.core.StandardHostValve.invoke( > > StandardHostValve.java:182) > > at > > org.apache.catalina.valves.ErrorReportValve.invoke( > > ErrorReportValve.java:79) > > at > > org.apache.tomee.catalina.OpenEJBSecurityListener$ > RequestCapturer.invoke( > > OpenEJBSecurityListener.java:97) > > at > > org.apache.catalina.core.StandardEngineValve.invoke( > > StandardEngineValve.java:87) > > at > > org.apache.catalina.connector.CoyoteAdapter.service( > > CoyoteAdapter.java:349) > > at > > org.apache.coyote.http11.Http11Processor.service( > Http11Processor.java:784) > > at > > org.apache.coyote.AbstractProcessorLight.process( > > AbstractProcessorLight.java:66) > > at > > org.apache.coyote.AbstractProtocol$ConnectionHandler.process( > > AbstractProtocol.java:802) > > at > > org.apache.tomcat.util.net.NioEndpoint$SocketProcessor. > > doRun(NioEndpoint.java:1410) > > at > > org.apache.tomcat.util.net.SocketProcessorBase.run( > > SocketProcessorBase.java:49) > > at > > java.util.concurrent.ThreadPoolExecutor.runWorker( > > ThreadPoolExecutor.java:1142) > > at > > java.util.concurrent.ThreadPoolExecutor$Worker.run( > > ThreadPoolExecutor.java:617) > > at > > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run( > > TaskThread.java:61) > > at java.lang.Thread.run(Thread.java:745) > > > > > > > > Adam Cornett > > > -- Adam Cornett adam.cornett@gmail.com (678) 296-1150 --001a113e9b1c8d461b05416d02e7--