You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@myfaces.apache.org by "Jan-Kees van Andel (JIRA)" <de...@myfaces.apache.org> on 2010/12/05 16:20:11 UTC

[jira] Created: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

ConversationUtils.cacheWindowId() ignores session invalidation
--------------------------------------------------------------

                 Key: EXTCDI-92
                 URL: https://issues.apache.org/jira/browse/EXTCDI-92
             Project: MyFaces CODI
          Issue Type: Bug
          Components: JEE-JSF20-Module
    Affects Versions: 0.9.0
         Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with Glassfish EL libs
            Reporter: Jan-Kees van Andel


A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, but I don't get this exception anymore, because I added CODI to my application a while ago.

Reason: After invalidating, CODI re-initializes the Session, so it's not null anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.

However, I don't think this behavior is desirable. After all, I've invalidated the session in my application code, so I don't want any framework to re-initialize it without questioning.

I can't come up with an example of anything that really breaks because of this, but it's not very nice and efficient.

It happens in the following method:
org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId() on line 191.

Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Issue Comment Edited: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

Posted by "Gerhard Petracek (JIRA)" <de...@myfaces.apache.org>.
    [ https://issues.apache.org/jira/browse/EXTCDI-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12967073#action_12967073 ] 

Gerhard Petracek edited comment on EXTCDI-92 at 12/5/10 11:49 PM:
------------------------------------------------------------------

please apply the patch and try it again.

      was (Author: gpetracek):
    please try to add
RequestCache.resetCache();
at the end of InstanceProducer#destroyAllConversations
  
> ConversationUtils.cacheWindowId() ignores session invalidation
> --------------------------------------------------------------
>
>                 Key: EXTCDI-92
>                 URL: https://issues.apache.org/jira/browse/EXTCDI-92
>             Project: MyFaces CODI
>          Issue Type: Bug
>          Components: JEE-JSF20-Module
>    Affects Versions: 0.9.0
>         Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with Glassfish EL libs
>            Reporter: Jan-Kees van Andel
>         Attachments: EXTCDI-92.patch
>
>
> A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, but I don't get this exception anymore, because I added CODI to my application a while ago.
> Reason: After invalidating, CODI re-initializes the Session, so it's not null anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.
> However, I don't think this behavior is desirable. After all, I've invalidated the session in my application code, so I don't want any framework to re-initialize it without questioning.
> I can't come up with an example of anything that really breaks because of this, but it's not very nice and efficient.
> It happens in the following method:
> org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId() on line 191.
> Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

Posted by "Jan-Kees van Andel (JIRA)" <de...@myfaces.apache.org>.
    [ https://issues.apache.org/jira/browse/EXTCDI-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12974363#action_12974363 ] 

Jan-Kees van Andel commented on EXTCDI-92:
------------------------------------------

Just ran the test again, but now I get the following stack trace when I invalidate the session:

javax.enterprise.context.ContextNotActiveException: WebBeans context with scope type annotation @SessionScoped does not exist within current thread
	org.apache.webbeans.container.BeanManagerImpl.getContext(BeanManagerImpl.java:309)
	org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.getContextualInstance(NormalScopedBeanInterceptorHandler.java:124)
	org.apache.webbeans.intercept.NormalScopedBeanInterceptorHandler.invoke(NormalScopedBeanInterceptorHandler.java:95)
	org.javassist.tmp.java.lang.Object_$$_javassist_16.getCurrentWindowContext(Object_$$_javassist_16.java)
	org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils.storeCurrentViewIdAsOldViewId(ConversationUtils.java:222)
	org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils.storeCurrentViewIdAsOldViewId(ConversationUtils.java:215)
	org.apache.myfaces.extensions.cdi.jsf.impl.navigation.AccessScopeAwareNavigationHandler.handleNavigation(AccessScopeAwareNavigationHandler.java:49)
	org.apache.myfaces.extensions.cdi.jsf2.impl.navigation.CodiNavigationHandler.handleNavigation(CodiNavigationHandler.java:78)
	org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:125)
	org.apache.myfaces.extensions.cdi.jsf.impl.security.SecurityViolationAwareActionListener.processAction(SecurityViolationAwareActionListener.java:49)
	org.apache.myfaces.extensions.cdi.jsf.impl.config.view.ViewControllerActionListener.processAction(ViewControllerActionListener.java:60)
	org.apache.myfaces.extensions.cdi.jsf.impl.listener.action.CodiActionListener.processAction(CodiActionListener.java:52)
	javax.faces.component.UICommand.broadcast(UICommand.java:120)
	javax.faces.component.UIViewRoot._broadcastAll(UIViewRoot.java:969)
	javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:275)
	javax.faces.component.UIViewRoot._process(UIViewRoot.java:1281)
	javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:707)
	org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:34)
	org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:171)
	org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.execute(CodiLifecycleWrapper.java:71)
	javax.faces.webapp.FacesServlet.service(FacesServlet.java:189)


> ConversationUtils.cacheWindowId() ignores session invalidation
> --------------------------------------------------------------
>
>                 Key: EXTCDI-92
>                 URL: https://issues.apache.org/jira/browse/EXTCDI-92
>             Project: MyFaces CODI
>          Issue Type: Bug
>          Components: JEE-JSF20-Module
>    Affects Versions: 0.9.0
>         Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with Glassfish EL libs
>            Reporter: Jan-Kees van Andel
>         Attachments: EXTCDI-92.patch
>
>
> A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, but I don't get this exception anymore, because I added CODI to my application a while ago.
> Reason: After invalidating, CODI re-initializes the Session, so it's not null anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.
> However, I don't think this behavior is desirable. After all, I've invalidated the session in my application code, so I don't want any framework to re-initialize it without questioning.
> I can't come up with an example of anything that really breaks because of this, but it's not very nice and efficient.
> It happens in the following method:
> org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId() on line 191.
> Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

Posted by "Gerhard Petracek (JIRA)" <de...@myfaces.apache.org>.
     [ https://issues.apache.org/jira/browse/EXTCDI-92?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gerhard Petracek resolved EXTCDI-92.
------------------------------------

       Resolution: Fixed
    Fix Version/s: 0.9.2

> ConversationUtils.cacheWindowId() ignores session invalidation
> --------------------------------------------------------------
>
>                 Key: EXTCDI-92
>                 URL: https://issues.apache.org/jira/browse/EXTCDI-92
>             Project: MyFaces CODI
>          Issue Type: Bug
>          Components: JEE-JSF20-Module
>    Affects Versions: 0.9.0
>         Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with Glassfish EL libs
>            Reporter: Jan-Kees van Andel
>             Fix For: 0.9.2
>
>         Attachments: EXTCDI-92.patch
>
>
> A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, but I don't get this exception anymore, because I added CODI to my application a while ago.
> Reason: After invalidating, CODI re-initializes the Session, so it's not null anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.
> However, I don't think this behavior is desirable. After all, I've invalidated the session in my application code, so I don't want any framework to re-initialize it without questioning.
> I can't come up with an example of anything that really breaks because of this, but it's not very nice and efficient.
> It happens in the following method:
> org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId() on line 191.
> Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (EXTCDI-92) ConversationUtils.cacheWindowId() ignores session invalidation

Posted by "Gerhard Petracek (JIRA)" <de...@myfaces.apache.org>.
    [ https://issues.apache.org/jira/browse/EXTCDI-92?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12967073#action_12967073 ] 

Gerhard Petracek commented on EXTCDI-92:
----------------------------------------

please try to add
RequestCache.resetCache();
at the end of InstanceProducer#destroyAllConversations

> ConversationUtils.cacheWindowId() ignores session invalidation
> --------------------------------------------------------------
>
>                 Key: EXTCDI-92
>                 URL: https://issues.apache.org/jira/browse/EXTCDI-92
>             Project: MyFaces CODI
>          Issue Type: Bug
>          Components: JEE-JSF20-Module
>    Affects Versions: 0.9.0
>         Environment: MyFaces Core 2.0.3 trunk, OWB 1.0.0, Tomcat 6.0.29 with Glassfish EL libs
>            Reporter: Jan-Kees van Andel
>
> A while ago, I raised issue MYFACES-2979. I now wanted  to fix and commit it, but I don't get this exception anymore, because I added CODI to my application a while ago.
> Reason: After invalidating, CODI re-initializes the Session, so it's not null anymore and the DebugPhaseListener stuff doesn't throw an exception anymore.
> However, I don't think this behavior is desirable. After all, I've invalidated the session in my application code, so I don't want any framework to re-initialize it without questioning.
> I can't come up with an example of anything that really breaks because of this, but it's not very nice and efficient.
> It happens in the following method:
> org.apache.myfaces.extensions.cdi.jsf.impl.util.ConversationUtils#cacheWindowId() on line 191.
> Wdyt?

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.