JSF Life Cycle
1. Restore View
Store everything: component, listener, validator in a FaceContext tree under viewRoot. currentView id is used to mark the current view. If not there, created it otherwise, update it.
2. apply request value. get value from request and save it to view tree.
If mmediate attribute of component is set, event will propergate to listener , which will be queued.
conversion will happen, if fail will attach new error to component in FaceContext .
3. process validation. If any validation errror . error will be display, stop at the stage.
4. populate model data. If last step is OK. the bean/model value assocated with view component will be updated.
5. invoke the business logic at backend, similar as struts action IMHO.
6. JSF render result page to user (I think it go through face-config file to find out next page).
JSF support 2 different type of requests and 2 differents type of responses.
1. Face request
2. non-face request
3. face response
4. non-face response
JSF Supports two events types
1. value change event
2. action event.
Key points
Long life scope object can not refer to short life object, as reference might points to NULL
JSF Command button
- Attribute: commandName will be sent to even listener.it should only be used to process UI Changes, that dont result in page being loaded.
- Attribute: action will be sent o NavigationHandler
- Attribute: actionRef - action to process...
Action Listener/ value change listener
you should not create ActionListener to handle event that results associated with navigation.
Navigation
1. UICommand defines the outcome.
2. UICommand actionRef will return the outcome.
Then configure file contains the rules for navigation.
Common navigation outcome
1. sucess
2. error
3. logon
4. no results
Confusing listener??? have a look at this article
http://onjava.com/pub/a/onjava/excerpt/JSF_chap8/index.html?page=3
分享到:
相关推荐
【标题】"notes_JPA_JSF:使用JSF和JPA实施来重建Notes项目"涉及的是在Java开发环境中,利用JavaServer Faces (JSF) 和 Java Persistence API (JPA) 技术重构建一个名为Notes的项目。JSF是Java EE平台上的一个用户...
随着Web技术的发展,Lotus Notes也提供了Web访问能力,XPages是其中的一种,它允许开发者使用标准的JavaServer Faces (JSF)技术来构建Notes应用的Web界面。学习XPages可以帮助将Notes应用无缝对接到现代Web环境。 ...
【标题】"mz_scwcd_notes_lettersize.zip" 是一个压缩文件,其内容可能包含有关SCWCD(Sun Certified Web Component Developer)考试的学习笔记或复习资料,适配于信纸大小的页面格式。 【描述】"mz_scwcd_notes_...
`release_notes.html`文件可能包含了项目的部署和运行指南,包括配置应用服务器、设置环境变量以及启动示例的方法。 通过研究这些源码,开发者不仅可以深入理解JSF的工作方式,还能掌握如何实际应用JSF来构建高效...
标题和描述中提到的"enseignants et étudiants (gestion des notes, annonces)"可以理解为一个教育管理系统,主要用于教师和学生之间的交互,特别是关于成绩管理和公告发布方面。在这个系统中,教师能够方便地记录...
10. **XPages**:XPages是Lotus Domino的一种现代Web开发技术,基于Java和JSF,提供更丰富的Web用户界面和交互体验。 通过深入学习和实践这些知识点,你可以掌握Lotus Domino和Notes的精髓,从而在企业协作和应用...
此外,XPages是Lotus Domino的现代Web开发框架,它允许开发者使用JavaServer Faces (JSF)技术创建富互联网应用程序。XPages使得Notes/Domino应用程序能够更好地适应现代浏览器和移动设备。 标签提到的"从lotus的...
他拥有丰富的软件工程背景,曾参与多个版本的 Notes/Domino 开发工作,包括 V3.x 和 V4.x,并负责产品的本地化和国际化工作。他还担任过国际产品经理的角色,负责 SMTP、cc:Mail 和 X400 MTA 以及 Domino Everyplace...
XPages是Lotus Domino 8引入的新特性,基于JavaServer Faces (JSF) 技术,允许开发者创建现代的、基于Web的应用。XPages支持CSS、JavaScript和Ajax,提供了更丰富的用户体验。 7. **RDBMS集成** Lotus Domino可以...
XPages使用JavaServer Faces(JSF)技术,可以创建富互联网应用程序(RIA),将Notes应用扩展到Web环境。 八、协同与社交功能 Lotus Notes/Domino内置了强大的协同功能,如即时消息、工作流、论坛和博客等,这些...
5. **文档资源**:在压缩包中的`ReleaseNotes.html`文件中,详细列出了ICEfaces 2的版本更新记录和改进,帮助开发者了解每个版本的新特性及修复的问题。`Guide.pdf`很可能是官方的开发者指南,包含了ICEfaces 2的...
1. **ReleaseNotes.html**:包含了插件的发布说明,记录了新版本的改进、修复的问题以及可能的已知问题。 2. **content.jar**:可能包含插件的元数据和内容,用于Eclipse插件系统的安装和更新。 3. **artifacts.jar*...
XPages 是 IBM Lotus Notes/Domino 平台的一部分,它为开发者提供了一个基于 Web 的开发环境,用于构建现代化的企业级应用。XPages 结合了 JavaServer Faces (JSF) 技术的优势,使得开发者能够更容易地创建动态、...
XPages能力是最新加入的Domino浏览器客户端设计元素,它不仅扩展了现有IBM Lotus Notes和Domino应用的功能,还拓宽了最终用户范围,并快速创建新的、丰富的Web应用。教程将演示如何为个人通讯录模板启用Web2.0特性,...
ICEfaces 是一个开源的 JavaServer Faces (JSF) 框架,专为构建富互联网应用程序(Rich Internet Applications,RIAs)而设计。这个框架提供了一整套组件库,允许开发人员创建高度交互且响应迅速的 Web 应用程序,...
6. **XPages**:基于JavaServer Faces(JSF)技术的开发框架,允许开发者创建富互联网应用程序,提供现代Web用户界面。 【Domino程序优化】 1. **代码审查**:定期进行代码审查,检查冗余和不高效的代码,确保代码...
Speaker's notes可能包含对Dojo Toolkit的深入讲解和示例,帮助开发者更好地理解和使用这个框架。 2. **DWR.pdf**:Direct Web Remoting(DWR)是一个Java库,允许在浏览器端直接调用服务器端的Java方法,从而简化...
### 使用SUN JAVA Studio Creator 2 IDE 构建 Web 应用程序 ...另外,在正式开发前,请仔细阅读 [http://gceclub.sun.com.cn/prodtech/javatools/jscreator/reference/docs/2/Installation_ReleaseNotes-zh_CN.html]...
8. **XPages**:XPages是Lotus Domino的一种现代Web开发框架,引入了基于JavaServer Faces (JSF)的概念,允许开发者使用XML和JavaScript库(如Dojo和Bootstrap)创建丰富的用户体验。 9. **JavaScript客户端脚本**...
- **服务器端JavaScript**:在服务器上执行,无法访问浏览器相关的全局变量,但能利用`session`、`database`、`param`等平台或JSF相关的变量,实现更复杂的应用逻辑处理。其性能低于客户端JavaScript,因为涉及额外...