在JBoss Seam的事件机制(1)概述中我们提到Seam提供了内置的上下文事件,我们可以为每个事件定制自己的监听器:
关于验证的事件
org.jboss.seam.validationFailed, 当JSF验证失败的时候被调用
关于变量的事件
org.jboss.seam.preSetVariable.<name>
org.jboss.seam.postSetVariable.<name>
org.jboss.seam.preRemoveVariable.<name>
org.jboss.seam.postRemoveVariable.<name>
关于上下文的事件
org.jboss.seam.preDestroyContext.<SCOPE>
org.jboss.seam.postDestroyContext.<SCOPE>
关于对话的事件
org.jboss.seam.beginConversation
org.jboss.seam.noConversation,当需要长时间运行的对话,缺没有的时候被调用
org.jboss.seam.endConversation
关于页面流的事件
org.jboss.seam.beginPageflow.<name>
org.jboss.seam.endPageflow.<name>
关于流程和任务的事件
org.jboss.seam.createProcess.<name>
org.jboss.seam.endProcess.<name>
org.jboss.seam.initProcess.<name>
org.jboss.seam.startTask.<name>
org.jboss.seam.endTask.<name>
org.jboss.seam.initTask.<name>
关于组件的事件
org.jboss.seam.postCreate.<name>
org.jboss.seam.preDestroy.<name>
关于JSF生命周期的事件
org.jboss.seam.beforePhase
org.jboss.seam.afterPhase
org.jboss.seam.postInitialization
关于认证和安全的事件
org.jboss.seam.preAuthenticate.<name>
org.jboss.seam.postAuthenticate.<name>
org.jboss.seam.notLoggedIn
org.jboss.seam.remeberMe 如果Seam在客户端Cookie中发现username时发生
关于例外的事件
org.jboss.seam.exceptionHandled.<type>
org.jboss.seam.exceptionHandled
org.jboss.seam.exceptionNotHandled
关于事务的事件
org.jboss.seam.afterTransactionSucess.<name>
org.jboss.seam.afterTransactionSucess
分享到:
相关推荐
组件可以是无状态或有状态的,有状态的组件可与多种预定义上下文关联,如业务流程上下文或方法上下文,这为Seam赋予了统一的组件模型。 #### 2. JSF集成 Seam将Java EE 5.0组件与JSF托管bean紧密集成,即使不使用...
- **Application/NavigationHandler/FacesContext/Renderer**:这些接口和类负责处理JSF应用的各种方面,包括导航、上下文管理和渲染。 **3. 实战应用** - **页面生命周期**:了解JSF页面的生命周期对于调试和维护...
1. **上下文管理**:Seam提供了一种灵活的方式来管理应用程序的状态,使得开发人员能够轻松处理跨页面的数据传递问题。 2. **集成JSF与EJB**:Seam无缝地将JSF和EJB 3.0结合在一起,允许开发者利用这两个强大的技术...
JBoss Seam 简介......................................................................................................................................................................... 11 Chapter 1. ...
- **Seam 上下文**:Seam 提供了一套完整的上下文管理机制,用于存储不同层次的信息,如页面级别的状态、会话级别的状态等。 - **无状态 SessionBean**:介绍了一种不保留任何状态的组件类型,通常用于处理短暂的...
Seam的核心特性之一是其对上下文(Contexts)和依赖注入(CDI)的支持,这使得开发者能够更方便地管理对象和它们的生命周期。本文档将深入探讨Seam 2.0中的语境相关组件及其工作原理。 **1. 语境(Contexts)** 在...
2. **组件和依赖注入**:Seam 使用CDI(在早期版本中称为Seam上下文)来管理组件,实现了依赖注入,让开发者能够声明性地配置和管理对象的生命周期。 3. **事件驱动**:Seam 支持事件驱动的编程模式,允许组件之间...
3. CDI(Contexts and Dependency Injection):虽然Seam 2.0在Java EE 6之前发布,但它已经实现了CDI的前身,即Seam上下文和依赖注入。这使得开发者可以方便地管理对象的生命周期和依赖关系。 二、Seam 2.0的主要...
Seam是一个全面的Java EE开发框架,它简化了Java EE组件之间的交互,提供了强大的上下文感知和事件驱动的能力,使得开发者能够更高效地构建动态、富客户端的应用程序。 首先,让我们深入了解一下Seam框架。Seam是由...
9. **Seam事件和上下文**:Seam引入了一种独特的事件模型和组件上下文,使得组件间的通信和状态管理更为简单,这是Seam区别于其他框架的一大特色。 10. **Seam安全性和事务管理**:Seam提供了内置的安全框架和事务...
4. **部署上下文**:Seam2通常假设在JNDI下可以找到其组件和服务,但在Tomcat中,你可能需要创建一个名为`META-INF/components.xml`的文件来声明和配置Seam组件。 5. **测试和调试**:在Tomcat中运行Seam应用可能...
- **安全机制**:Seam内置了强大的安全功能,用于保护Web应用程序免受攻击。 - **AJAX与JavaScript远程调用**:Seam支持AJAX技术,并且可以通过JavaScript进行远程调用,从而提高了应用程序的交互性和用户体验。 - *...
通过学习和理解Seam,开发者可以更有效地构建可扩展、可维护的Java EE应用,利用其强大的上下文相关组件模型和事件驱动架构,提高开发效率,减少代码的复杂性。无论是对于企业级应用开发还是个人项目,Seam都是一个...
通过定义不同的上下文(如对话上下文、请求上下文等),Seam能够更好地管理和维护组件的状态。 **5. Seam组件描述符** Seam组件描述符用于描述组件的元数据,包括组件的类型、属性、事件处理等信息。这些描述符...
- **上下文管理**:Seam 提供了一种灵活的上下文管理机制,允许开发者根据不同的应用场景定义不同的上下文范围(如会话上下文、视图上下文等),从而更好地管理状态和数据。 4. **Seam 组件描述符 (The Seam ...
- **会话过期处理**:如何在会话过期后恢复用户的上下文环境。 - **皮肤支持**:介绍如何使用内置的皮肤文件来改变界面样式,并支持在运行时更改皮肤。 - **标准控件**:提供了一系列常用控件及其使用方法,帮助...
- **web.xml**:Web应用的部署描述符文件,用于设置上下文参数等。 - **部署**:将项目打包并部署到支持的服务器上。 #### 四、不同环境下的配置 1. **Web应用部署描述符参数**:介绍如何通过`web.xml`文件配置来...
- **Web.xml**:配置 Web 应用程序的上下文参数等。 - **部署**:将项目部署到支持的服务器上,进行测试。 #### 四、不同环境下的设置 1. **Web 应用程序描述符参数**:通过修改 web.xml 文件来调整 RichFaces ...