[ https://issues.apache.org/jira/browse/DELTASPIKE-830?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14627873#comment-14627873 ]
Nuno G. de M edited comment on DELTASPIKE-830 at 7/15/15 10:53 AM: ------------------------------------------------------------------- Hi, I have just tried to deploy the: https://github.com/99sono/delta-spike-dynamic-content_issue against 1.4.2-SNAPSHOT and the issue was not resolved. Under TomcatEE - this pc I am using right now does not have anything else. Here is a snippet of the catalina.out INFO: class: org.apache.deltaspike.jsf.impl.token.DoubleSubmitAwarePhaseListener activated=true Jul 15, 2015 12:33:09 PM org.apache.deltaspike.core.util.ClassDeactivationUtils cacheResult INFO: class: org.apache.deltaspike.jsf.impl.scope.window.JsfWindowContextQuotaHandler activated=true Jul 15, 2015 12:33:09 PM org.apache.deltaspike.core.util.ClassDeactivationUtils cacheResult INFO: class: org.apache.deltaspike.jsf.impl.view.DeltaSpikeViewHandler activated=true Jul 15, 2015 12:33:10 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. <------------------------------ Error reading 'streamedContent' on type entrypoint.jsf.ViewAccessedBean$$OwbNormalScopeProxy0 Jul 15, 2015 12:33:11 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. Error reading 'streamedContent' on type entrypoint.jsf.ViewAccessedBean$$OwbNormalScopeProxy0 Jul 15, 2015 12:33:11 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. Error reading 'streamedContent' on type entrypoint.jsf.ViewAccessedBean$$OwbNormalScopeProxy0 Two notes: if you git clone the the repository, please upgrade the primefaces version frmo 3.5 to something else as 3.5 is no longer on maven central. To build the deltaspike trunk I had a similar issue due to transitive dependency on selenium server 2.39 that no longer exists in the repositories. This dependency comes interectly from the phantom js driver. So I had to build the impl module by excluding the dependency. Right now I unfortunately do not have time to diagnose if the issue is still the View Access Scoped not being there. Yes, just tested the deploymend under weblogic 12.1.2, the issue is still the active context. Weblogic is a bit more faire with the logging of the backend exception: Jul 15, 2015 12:51:30 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type org.apache.deltaspike.core.api.scope.ViewAccessScoped <Jul 15, 2015 12:51:30 PM CEST> <Error> <HTTP> <BEA-101019> <[ServletContext@89325724[app:jsf_deltaspike-dynamic-content_war_1.0-SNAPSHOT module:jsf-viewaccessscoped path:null spec-version:3.0]] Servlet failed with an IOException java.io.IOException: javax.el.ELException: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type org.apache.deltaspike.core.api.scope.ViewAccessScoped at org.primefaces.application.resource.StreamedContentHandler.handle(StreamedContentHandler.java:94) at org.primefaces.application.resource.PrimeResourceHandler.handleResourceRequest(PrimeResourceHandler.java:72) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:591) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280) at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254) Truncated. see log file for complete stacktrace Caused By: javax.el.ELException: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type org.apache.deltaspike.core.api.scope.ViewAccessScoped at javax.el.BeanELResolver.getValue(BeanELResolver.java:310) at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) at com.sun.el.parser.AstValue.getValue(AstValue.java:138) at com.sun.el.parser.AstValue.getValue(AstValue.java:183) Truncated. see log file for complete stacktrace Caused By: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active contexts for scope type org.apache.deltaspike.core.api.scope.ViewAccessScoped at org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:590) at org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:71) at org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79) at entrypoint.jsf.ViewAccessedBean$Proxy$_$$_WeldClientProxy.getStreamedContent(ViewAccessedBean$Proxy$_$$_WeldClientProxy.java) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) Truncated. see log file for complete stacktrace > Many thanks for looking into this. Kindest regards. was (Author: ngdem): Hi, I have just tried to deploy the: https://github.com/99sono/delta-spike-dynamic-content_issue against 1.4.2-SNAPSHOT and the issue was not resolved. Under TomcatEE - this pc I am using right now does not have anything else. Here is a snippet of the catalina.out INFO: class: org.apache.deltaspike.jsf.impl.token.DoubleSubmitAwarePhaseListener activated=true Jul 15, 2015 12:33:09 PM org.apache.deltaspike.core.util.ClassDeactivationUtils cacheResult INFO: class: org.apache.deltaspike.jsf.impl.scope.window.JsfWindowContextQuotaHandler activated=true Jul 15, 2015 12:33:09 PM org.apache.deltaspike.core.util.ClassDeactivationUtils cacheResult INFO: class: org.apache.deltaspike.jsf.impl.view.DeltaSpikeViewHandler activated=true Jul 15, 2015 12:33:10 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. <------------------------------ Error reading 'streamedContent' on type entrypoint.jsf.ViewAccessedBean$$OwbNormalScopeProxy0 Jul 15, 2015 12:33:11 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. Error reading 'streamedContent' on type entrypoint.jsf.ViewAccessedBean$$OwbNormalScopeProxy0 Jul 15, 2015 12:33:11 PM org.primefaces.application.resource.StreamedContentHandler handle SEVERE: Error in streaming dynamic resource. Error reading 'streamedContent' on type entrypoint.jsf.ViewAccessedBean$$OwbNormalScopeProxy0 Two notes: if you git clone the the repository, please upgrade the primefaces version frmo 3.5 to something else as 3.5 is no longer on maven central. To build the deltaspike trunk I had a similar issue due to transitive dependency on selenium server 2.39 that no longer exists in the repositories. This dependency comes interectly from the phantom js driver. So I had to build the impl module by excluding the dependency. Right now I unfortunately do not have time to diagnose if the issue is still the View Access Scoped not being there. Many thanks for looking into this. Kindest regards. > Now active ViewAccessScoped context during restore view phase > ------------------------------------------------------------- > > Key: DELTASPIKE-830 > URL: https://issues.apache.org/jira/browse/DELTASPIKE-830 > Project: DeltaSpike > Issue Type: Bug > Components: JSF-Module > Affects Versions: 1.2.1 > Environment: Glassfish 3.1.2.2 and Weblogic 12.1.2.2 > Reporter: Nuno G. de M > Assignee: Thomas Andraschko > Fix For: 1.4.2 > > > While testing delta-spike in clientview mode, coming from CODI, we have one > view that is giving problems trying to access ViewAccessScoped beans during > the restored view phase. > Caused by: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No > active contexts for scope type > org.apache.deltaspike.core.api.scope.ViewAccessScoped > Namely the exception we get in our page is the following: > Caused By: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No > active contexts for scope type > org.apache.deltaspike.core.api.scope.ViewAccessScoped > at > org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:590) > at > org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:71) > at > org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79) > at > com.corp.whatever.component.ui.web.CR100Bean$Proxy$_$$_WeldClientProxy.getPageIds(CR100Bean$Proxy$_$$_WeldClientProxy.java) > at sun.reflect.GeneratedMethodAccessor1663.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at javax.el.BeanELResolver.getValue(BeanELResolver.java:305) > at > com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) > at > com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) > at com.sun.el.parser.AstValue.getValue(AstValue.java:138) > at com.sun.el.parser.AstValue.getValue(AstValue.java:183) > at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:224) > at > org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50) > at > org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50) > at > com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) > at com.sun.el.parser.AstIdentifier.getValue(AstIdentifier.java:99) > at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:224) > at > org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50) > at > org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50) > at > com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) > at > com.sun.faces.facelets.tag.jstl.core.SetHandler.apply(SetHandler.java:163) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) > at > javax.faces.view.facelets.DelegatingMetaTagHandler.applyNextHandler(DelegatingMetaTagHandler.java:137) > at > com.sun.faces.facelets.tag.jsf.ComponentTagHandlerDelegateImpl.apply(ComponentTagHandlerDelegateImpl.java:187) > at > javax.faces.view.facelets.DelegatingMetaTagHandler.apply(DelegatingMetaTagHandler.java:120) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) > at > com.sun.faces.facelets.tag.jsf.core.ViewHandler.apply(ViewHandler.java:188) > at > javax.faces.view.facelets.CompositeFaceletHandler.apply(CompositeFaceletHandler.java:95) > at > com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) > at > com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87) > at > com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:320) > at > com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:379) > at > com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:358) > at > com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:199) > at > com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:155) > at > com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) > at > com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87) > at > com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:320) > at > com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:379) > at > com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:358) > at > com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:199) > at > com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:155) > at > com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:93) > at > com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:87) > at > com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:164) > at > com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:914) > at > com.sun.faces.application.view.FaceletViewHandlingStrategy.restoreView(FaceletViewHandlingStrategy.java:571) > at > com.sun.faces.application.view.MultiViewHandler.restoreView(MultiViewHandler.java:142) > at > javax.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:301) > at > javax.faces.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:301) > at > com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:192) > ------------------ > -- In glassfish 3.1.2 > ------------- > we can see that exception takes place here: > /** > * Gets an active context of the given scope. Throws an exception if there > * are no active contexts found or if there are too many matches > * > * @param scopeType The scope to match > * @return A single active context of the given scope > * @see > javax.enterprise.inject.spi.BeanManager#getContext(java.lang.Class) > */ > public Context getContext(Class<? extends Annotation> scopeType) { > Context activeContext = null; > final List<Context> ctx = contexts.get(scopeType); > if (ctx == null) { > //this happens if no context is registered > throw new ContextNotActiveException(CONTEXT_NOT_ACTIVE, > scopeType.getName()); > } > for (Context context : ctx) { > if (context.isActive()) { > if (activeContext == null) { > activeContext = context; > } else { > throw new > IllegalStateException(DUPLICATE_ACTIVE_CONTEXTS, scopeType.getName()); > } > } > } > if (activeContext == null) { > throw new ContextNotActiveException(CONTEXT_NOT_ACTIVE, > scopeType.getName()); > } > return activeContext; > } > Where the Context Appears to exist but no be active. > Also the bean that is reported as not being active, when we navigate out of > hte view, we can see it being destoryed in a @preDestroy call. > I have created a sample application that tries as best as possible to > reproduce the sitatution we experience. > Is there a way by which I could upload a small maven project for this? > I am adding it to my google drive for the moment. > https://drive.google.com/file/d/0B_dEiNBGUsxqQWRzVVRJT0RlU0E/view?usp=sharing > In th sample project a tiny index.xhtml exists. Access it for example under: > http://schb7mw7321:8080/jsf-viewaccessscoped/index.xhtml?dsrid=933&dswid=ViewerWindow > If your port is configured to be 8080 (glassfish defaults or 7001 in > weblogic). > The page will then display several tabs using a prime faces ui component. > The first time a TAB is clicked, the UI processes the action without problems. > The second time a tab is clicked JSF complains that it cannot access the bean > because its context is not active. > The sample project is an imperfect reproduction of our real case scenario, > since in this case the exception is taking place during the apply request > values phase as opposed to on the restore view phase: > Here is an example of stack trace from this sample app. > 2015-02-04 22:41:11.460 WARNING 55 /index.xhtml @45,83 > rendered="#{cr100.selectedTab eq 'default'}": > org.jboss.weld.context.ContextNotActiveException: WELD-001303 No active > contexts for scope type org.apache.deltaspike.core.api.scope.ViewAccessScoped > (javax.enterprise.resource.webcontainer.jsf.lifecycle) > javax.el.ELException: /index.xhtml @45,83 rendered="#{cr100.selectedTab eq > 'default'}": org.jboss.weld.context.ContextNotActiveException: WELD-001303 No > active contexts for scope type > org.apache.deltaspike.core.api.scope.ViewAccessScoped > at > com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:114) > at > javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:194) > at > javax.faces.component.UIComponentBase.isRendered(UIComponentBase.java:415) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1168) > at org.primefaces.component.panel.Panel.processDecodes(Panel.java:290) > at javax.faces.component.UIForm.processDecodes(UIForm.java:225) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1178) > at > javax.faces.component.UIComponentBase.processDecodes(UIComponentBase.java:1178) > at javax.faces.component.UIViewRoot.processDecodes(UIViewRoot.java:925) > at > com.sun.faces.lifecycle.ApplyRequestValuesPhase.execute(ApplyRequestValuesPhase.java:78) > at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) > at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118) > at > org.apache.deltaspike.jsf.impl.listener.request.DeltaSpikeLifecycleWrapper.execute(DeltaSpikeLifecycleWrapper.java:89) > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593) > at > org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1550) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) > at > org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161) > at > org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331) > at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231) > at > com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317) > at > com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195) > at > com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860) > at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757) > at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056) > at > com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229) > at > com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137) > at > com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104) > at > com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90) > at > com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79) > at > com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54) > at > com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59) > at com.sun.grizzly.ContextTask.run(ContextTask.java:71) > at > com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532) > at > com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513) > at java.lang.Thread.run(Thread.java:745) > Caused by: org.jboss.weld.context.ContextNotActiveException: WELD-001303 No > active contexts for scope type > org.apache.deltaspike.core.api.scope.ViewAccessScoped > at > org.jboss.weld.manager.BeanManagerImpl.getContext(BeanManagerImpl.java:619) > at > org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:71) > at > org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79) > at > org.jboss.weld.proxies.ViewAccessedBean$Proxy$_$$_WeldClientProxy.getSelectedTab(ViewAccessedBean$Proxy$_$$_WeldClientProxy.java) > at sun.reflect.GeneratedMethodAccessor876.invoke(Unknown Source) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:606) > at javax.el.BeanELResolver.getValue(BeanELResolver.java:363) > at > com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176) > at > com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203) > at com.sun.el.parser.AstValue.getValue(AstValue.java:138) > at com.sun.el.parser.AstValue.getValue(AstValue.java:183) > at com.sun.el.parser.AstEqual.getValue(AstEqual.java:58) > at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:224) > at > org.jboss.weld.el.WeldValueExpression.getValue(WeldValueExpression.java:50) > at > com.sun.faces.facelets.el.TagValueExpression.getValue(TagValueExpression.java:109) > Many thanks for the help. -- This message was sent by Atlassian JIRA (v6.3.4#6332)