Java seam关闭侦听器

Java seam关闭侦听器,java,seam,observer-pattern,Java,Seam,Observer Pattern,我想观察应用程序何时即将关闭。我以为这个代码块可以工作,但它从来没有捕捉到那个事件 @Observer("org.jboss.seam.preDestroyContext.APPLICATION") @Transactional public void onShutdown() { ... } 我的组件是一个事件范围的组件,我只希望它在该事件的范围内有效 @Observer("org.jboss.seam.preDestroyCon

我想观察应用程序何时即将关闭。我以为这个代码块可以工作,但它从来没有捕捉到那个事件

@Observer("org.jboss.seam.preDestroyContext.APPLICATION")
    @Transactional
    public void onShutdown()
    {
          ...
         }
我的组件是一个事件范围的组件,我只希望它在该事件的范围内有效

@Observer("org.jboss.seam.preDestroyContext.APPLICATION")
    @Transactional
    public void onShutdown()
    {
          ...
         }
在当前的Seam设计中,这可能吗?如果不是,这应该是一个特性请求还是这个想法存在其他继承问题


Walter

首先考虑ServletContextListener怎么样?

首先考虑ServletContextListener怎么样?

实际上,这个问题有一个JIRA问题。有两件事是错误的

  • 如果没有活动事件作用域,则具有remove/destroy方法的应用程序作用域组件无法正确执行
  • 任何组件都应该能够观察到任何事件,如果该事件是同步的,那么将首先处理该事件,然后销毁该组件
  • 应用程序范围的组件是目前最快的修复程序。第二个会更复杂一些


    沃尔特

    事实上,这个问题有一个JIRA问题。有两件事是错误的

  • 如果没有活动事件作用域,则具有remove/destroy方法的应用程序作用域组件无法正确执行
  • 任何组件都应该能够观察到任何事件,如果该事件是同步的,那么将首先处理该事件,然后销毁该组件
  • 应用程序范围的组件是目前最快的修复程序。第二个会更复杂一些


    沃尔特

    嗯,说得好。我在过去使用过它(Spring应用程序),这是标准的J2EE实践。我试试看,老实说,我没想到会这样。我只想知道它是否会在Seam上下文中。我试试看,让你知道。嗯,说得对。我在过去使用过它(Spring应用程序),这是标准的J2EE实践。我试试看,老实说,我没想到会这样。我只想知道它是否会在Seam上下文中。我试试看,让你知道。@Walter White Good to know(+1)@Walter White Good to know(+1)