[ 
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)

Reply via email to