You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by "Jeremiah Johnson (JIRA)" <be...@incubator.apache.org> on 2005/02/16 20:31:49 UTC

[jira] Created: (BEEHIVE-305) ControlBeanContext.serviceRevoked throwing exception on session expiration

ControlBeanContext.serviceRevoked throwing exception on session expiration
--------------------------------------------------------------------------

         Key: BEEHIVE-305
         URL: http://issues.apache.org/jira/browse/BEEHIVE-305
     Project: Beehive
        Type: Bug
  Components: Controls  
 Environment: Tomcat 5.0.25, Linux, Beehive SVN
    Reporter: Jeremiah Johnson
 Assigned to: Kyle Marvin 
    Priority: Minor


I have a Page Flow Controller that uses a single Control.  When my session expires, I get the following stack trace.  Note that I have my session set to expire at 1 minute.

16 Feb 2005 11:11:29,226 DEBUG StandardWrapper []:   Returning non-STM instance
Feb 16, 2005 11:12:57 AM org.apache.catalina.core.StandardContext backgroundProcess
WARNING: Unable to perform background process on manager
org.apache.beehive.controls.api.ControlException: Unexpected service revocation: interface org.apache.beehive.controls.api.context.ResourceContext
        at org.apache.beehive.controls.runtime.bean.ControlBeanContext.serviceRevoked(ControlBeanContext.java:147)
        at java.beans.beancontext.BeanContextServicesSupport$BCSSChild.revokeAllDelegatedServicesNow(BeanContextServicesSupport.java:536)
        at java.beans.beancontext.BeanContextServicesSupport.releaseBeanContextResources(BeanContextServicesSupport.java:1020)
        at java.beans.beancontext.BeanContextChildSupport.setBeanContext(BeanContextChildSupport.java:108)
        at org.apache.beehive.controls.runtime.bean.ControlBeanContext.setBeanContext(ControlBeanContext.java:177)
        at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:505)
        at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:467)
        at org.apache.beehive.controls.runtime.bean.ControlBeanContext.remove(ControlBeanContext.java:311)
        at org.apache.beehive.netui.pageflow.internal.JavaControlUtils.destroyControl(JavaControlUtils.java:168)
        at org.apache.beehive.netui.pageflow.PageFlowManagedObject.uninitJavaControls(PageFlowManagedObject.java:215)
        at org.apache.beehive.netui.pageflow.PageFlowManagedObject.destroy(PageFlowManagedObject.java:73)
        at org.apache.beehive.netui.pageflow.FlowController.destroy(FlowController.java:552)
        at org.apache.beehive.netui.pageflow.PageFlowController.valueUnbound(PageFlowController.java:779)
        at org.apache.catalina.session.StandardSession.removeAttributeInternal(StandardSession.java:1565)
        at org.apache.catalina.session.StandardSession.expire(StandardSession.java:708)
        at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:566)
        at org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:782)
        at org.apache.catalina.session.StandardManager.backgroundProcess(StandardManager.java:795)
        at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4618)
        at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
        at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
        at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
        at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
        at java.lang.Thread.run(Thread.java:595)

I will attach something to reproduce this issue.  I am curious if this is expected behavior for destroying a Control.

- jeremiah


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Closed: (BEEHIVE-305) ControlBeanContext.serviceRevoked throwing exception on session expiration

Posted by "Jeremiah Johnson (JIRA)" <be...@incubator.apache.org>.
     [ http://issues.apache.org/jira/browse/BEEHIVE-305?page=history ]
     
Jeremiah Johnson closed BEEHIVE-305:
------------------------------------


The exception was replaced by a comment in the code:

     public void serviceRevoked(BeanContextServiceRevokedEvent bcsre)
     {

         //
-        // This is currently unexpected...
-        throw new ControlException("Unexpected service revocation: " + bcsre.ge
tServiceClass());

         //
+        // This can happen, if the control is disassociated from a parent conte
xt that is
+        // providing services.


> ControlBeanContext.serviceRevoked throwing exception on session expiration
> --------------------------------------------------------------------------
>
>          Key: BEEHIVE-305
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-305
>      Project: Beehive
>         Type: Bug
>   Components: Controls
>  Environment: Tomcat 5.0.25, Linux, Beehive SVN
>     Reporter: Jeremiah Johnson
>     Assignee: Jeremiah Johnson
>     Priority: Minor
>      Fix For: V1Beta

>
> I have a Page Flow Controller that uses a single Control.  When my session expires, I get the following stack trace.  Note that I have my session set to expire at 1 minute.
> 16 Feb 2005 11:11:29,226 DEBUG StandardWrapper []:   Returning non-STM instance
> Feb 16, 2005 11:12:57 AM org.apache.catalina.core.StandardContext backgroundProcess
> WARNING: Unable to perform background process on manager
> org.apache.beehive.controls.api.ControlException: Unexpected service revocation: interface org.apache.beehive.controls.api.context.ResourceContext
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.serviceRevoked(ControlBeanContext.java:147)
>         at java.beans.beancontext.BeanContextServicesSupport$BCSSChild.revokeAllDelegatedServicesNow(BeanContextServicesSupport.java:536)
>         at java.beans.beancontext.BeanContextServicesSupport.releaseBeanContextResources(BeanContextServicesSupport.java:1020)
>         at java.beans.beancontext.BeanContextChildSupport.setBeanContext(BeanContextChildSupport.java:108)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.setBeanContext(ControlBeanContext.java:177)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:505)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:467)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.remove(ControlBeanContext.java:311)
>         at org.apache.beehive.netui.pageflow.internal.JavaControlUtils.destroyControl(JavaControlUtils.java:168)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.uninitJavaControls(PageFlowManagedObject.java:215)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.destroy(PageFlowManagedObject.java:73)
>         at org.apache.beehive.netui.pageflow.FlowController.destroy(FlowController.java:552)
>         at org.apache.beehive.netui.pageflow.PageFlowController.valueUnbound(PageFlowController.java:779)
>         at org.apache.catalina.session.StandardSession.removeAttributeInternal(StandardSession.java:1565)
>         at org.apache.catalina.session.StandardSession.expire(StandardSession.java:708)
>         at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:566)
>         at org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:782)
>         at org.apache.catalina.session.StandardManager.backgroundProcess(StandardManager.java:795)
>         at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4618)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
>         at java.lang.Thread.run(Thread.java:595)
> I will attach something to reproduce this issue.  I am curious if this is expected behavior for destroying a Control.
> - jeremiah

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (BEEHIVE-305) ControlBeanContext.serviceRevoked throwing exception on session expiration

Posted by "Jeremiah Johnson (JIRA)" <be...@incubator.apache.org>.
     [ http://issues.apache.org/jira/browse/BEEHIVE-305?page=comments#action_59286 ]
     
Jeremiah Johnson commented on BEEHIVE-305:
------------------------------------------

I haven't been able to reproduce the issue with a simple example and my application is too big to attach.  If you need more than the stack trace to see what is up with this, please let me know.

- jeremiah

> ControlBeanContext.serviceRevoked throwing exception on session expiration
> --------------------------------------------------------------------------
>
>          Key: BEEHIVE-305
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-305
>      Project: Beehive
>         Type: Bug
>   Components: Controls
>  Environment: Tomcat 5.0.25, Linux, Beehive SVN
>     Reporter: Jeremiah Johnson
>     Assignee: Kyle Marvin
>     Priority: Minor

>
> I have a Page Flow Controller that uses a single Control.  When my session expires, I get the following stack trace.  Note that I have my session set to expire at 1 minute.
> 16 Feb 2005 11:11:29,226 DEBUG StandardWrapper []:   Returning non-STM instance
> Feb 16, 2005 11:12:57 AM org.apache.catalina.core.StandardContext backgroundProcess
> WARNING: Unable to perform background process on manager
> org.apache.beehive.controls.api.ControlException: Unexpected service revocation: interface org.apache.beehive.controls.api.context.ResourceContext
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.serviceRevoked(ControlBeanContext.java:147)
>         at java.beans.beancontext.BeanContextServicesSupport$BCSSChild.revokeAllDelegatedServicesNow(BeanContextServicesSupport.java:536)
>         at java.beans.beancontext.BeanContextServicesSupport.releaseBeanContextResources(BeanContextServicesSupport.java:1020)
>         at java.beans.beancontext.BeanContextChildSupport.setBeanContext(BeanContextChildSupport.java:108)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.setBeanContext(ControlBeanContext.java:177)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:505)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:467)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.remove(ControlBeanContext.java:311)
>         at org.apache.beehive.netui.pageflow.internal.JavaControlUtils.destroyControl(JavaControlUtils.java:168)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.uninitJavaControls(PageFlowManagedObject.java:215)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.destroy(PageFlowManagedObject.java:73)
>         at org.apache.beehive.netui.pageflow.FlowController.destroy(FlowController.java:552)
>         at org.apache.beehive.netui.pageflow.PageFlowController.valueUnbound(PageFlowController.java:779)
>         at org.apache.catalina.session.StandardSession.removeAttributeInternal(StandardSession.java:1565)
>         at org.apache.catalina.session.StandardSession.expire(StandardSession.java:708)
>         at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:566)
>         at org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:782)
>         at org.apache.catalina.session.StandardManager.backgroundProcess(StandardManager.java:795)
>         at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4618)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
>         at java.lang.Thread.run(Thread.java:595)
> I will attach something to reproduce this issue.  I am curious if this is expected behavior for destroying a Control.
> - jeremiah

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Resolved: (BEEHIVE-305) ControlBeanContext.serviceRevoked throwing exception on session expiration

Posted by "Kyle Marvin (JIRA)" <be...@incubator.apache.org>.
     [ http://issues.apache.org/jira/browse/BEEHIVE-305?page=history ]
     
Kyle Marvin resolved BEEHIVE-305:
---------------------------------

      Assign To: Jeremiah Johnson  (was: Kyle Marvin)
     Resolution: Fixed
    Fix Version: V1Beta

This (servicesRevoked) is actually expected in this context.  What's happening is that the parent context is being set to null (because the control is being 'removed' from the ServletBeanContext associated with the session, and any services provided by that context are no longer available.

> ControlBeanContext.serviceRevoked throwing exception on session expiration
> --------------------------------------------------------------------------
>
>          Key: BEEHIVE-305
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-305
>      Project: Beehive
>         Type: Bug
>   Components: Controls
>  Environment: Tomcat 5.0.25, Linux, Beehive SVN
>     Reporter: Jeremiah Johnson
>     Assignee: Jeremiah Johnson
>     Priority: Minor
>      Fix For: V1Beta

>
> I have a Page Flow Controller that uses a single Control.  When my session expires, I get the following stack trace.  Note that I have my session set to expire at 1 minute.
> 16 Feb 2005 11:11:29,226 DEBUG StandardWrapper []:   Returning non-STM instance
> Feb 16, 2005 11:12:57 AM org.apache.catalina.core.StandardContext backgroundProcess
> WARNING: Unable to perform background process on manager
> org.apache.beehive.controls.api.ControlException: Unexpected service revocation: interface org.apache.beehive.controls.api.context.ResourceContext
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.serviceRevoked(ControlBeanContext.java:147)
>         at java.beans.beancontext.BeanContextServicesSupport$BCSSChild.revokeAllDelegatedServicesNow(BeanContextServicesSupport.java:536)
>         at java.beans.beancontext.BeanContextServicesSupport.releaseBeanContextResources(BeanContextServicesSupport.java:1020)
>         at java.beans.beancontext.BeanContextChildSupport.setBeanContext(BeanContextChildSupport.java:108)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.setBeanContext(ControlBeanContext.java:177)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:505)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:467)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.remove(ControlBeanContext.java:311)
>         at org.apache.beehive.netui.pageflow.internal.JavaControlUtils.destroyControl(JavaControlUtils.java:168)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.uninitJavaControls(PageFlowManagedObject.java:215)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.destroy(PageFlowManagedObject.java:73)
>         at org.apache.beehive.netui.pageflow.FlowController.destroy(FlowController.java:552)
>         at org.apache.beehive.netui.pageflow.PageFlowController.valueUnbound(PageFlowController.java:779)
>         at org.apache.catalina.session.StandardSession.removeAttributeInternal(StandardSession.java:1565)
>         at org.apache.catalina.session.StandardSession.expire(StandardSession.java:708)
>         at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:566)
>         at org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:782)
>         at org.apache.catalina.session.StandardManager.backgroundProcess(StandardManager.java:795)
>         at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4618)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
>         at java.lang.Thread.run(Thread.java:595)
> I will attach something to reproduce this issue.  I am curious if this is expected behavior for destroying a Control.
> - jeremiah

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


[jira] Commented: (BEEHIVE-305) ControlBeanContext.serviceRevoked throwing exception on session expiration

Posted by "Kyle Marvin (JIRA)" <be...@incubator.apache.org>.
     [ http://issues.apache.org/jira/browse/BEEHIVE-305?page=comments#action_59711 ]
     
Kyle Marvin commented on BEEHIVE-305:
-------------------------------------

SVN revision 155195 removed the exception that previously was generated when this happened.

> ControlBeanContext.serviceRevoked throwing exception on session expiration
> --------------------------------------------------------------------------
>
>          Key: BEEHIVE-305
>          URL: http://issues.apache.org/jira/browse/BEEHIVE-305
>      Project: Beehive
>         Type: Bug
>   Components: Controls
>  Environment: Tomcat 5.0.25, Linux, Beehive SVN
>     Reporter: Jeremiah Johnson
>     Assignee: Jeremiah Johnson
>     Priority: Minor
>      Fix For: V1Beta

>
> I have a Page Flow Controller that uses a single Control.  When my session expires, I get the following stack trace.  Note that I have my session set to expire at 1 minute.
> 16 Feb 2005 11:11:29,226 DEBUG StandardWrapper []:   Returning non-STM instance
> Feb 16, 2005 11:12:57 AM org.apache.catalina.core.StandardContext backgroundProcess
> WARNING: Unable to perform background process on manager
> org.apache.beehive.controls.api.ControlException: Unexpected service revocation: interface org.apache.beehive.controls.api.context.ResourceContext
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.serviceRevoked(ControlBeanContext.java:147)
>         at java.beans.beancontext.BeanContextServicesSupport$BCSSChild.revokeAllDelegatedServicesNow(BeanContextServicesSupport.java:536)
>         at java.beans.beancontext.BeanContextServicesSupport.releaseBeanContextResources(BeanContextServicesSupport.java:1020)
>         at java.beans.beancontext.BeanContextChildSupport.setBeanContext(BeanContextChildSupport.java:108)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.setBeanContext(ControlBeanContext.java:177)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:505)
>         at java.beans.beancontext.BeanContextSupport.remove(BeanContextSupport.java:467)
>         at org.apache.beehive.controls.runtime.bean.ControlBeanContext.remove(ControlBeanContext.java:311)
>         at org.apache.beehive.netui.pageflow.internal.JavaControlUtils.destroyControl(JavaControlUtils.java:168)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.uninitJavaControls(PageFlowManagedObject.java:215)
>         at org.apache.beehive.netui.pageflow.PageFlowManagedObject.destroy(PageFlowManagedObject.java:73)
>         at org.apache.beehive.netui.pageflow.FlowController.destroy(FlowController.java:552)
>         at org.apache.beehive.netui.pageflow.PageFlowController.valueUnbound(PageFlowController.java:779)
>         at org.apache.catalina.session.StandardSession.removeAttributeInternal(StandardSession.java:1565)
>         at org.apache.catalina.session.StandardSession.expire(StandardSession.java:708)
>         at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:566)
>         at org.apache.catalina.session.StandardManager.processExpires(StandardManager.java:782)
>         at org.apache.catalina.session.StandardManager.backgroundProcess(StandardManager.java:795)
>         at org.apache.catalina.core.StandardContext.backgroundProcess(StandardContext.java:4618)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1619)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1628)
>         at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1608)
>         at java.lang.Thread.run(Thread.java:595)
> I will attach something to reproduce this issue.  I am curious if this is expected behavior for destroying a Control.
> - jeremiah

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira