JAVAEE 第六周
| 阶段 | 说明 |
| 恢复视图 |
为选定的视图找到或创建组件树。
一旦用户单击JSP页面上的链接或按钮,就会启动此阶段。JSF应用里的JSP页面被表示成一个组件树。JSF实现会进一步将这些组件链接到事件处理程序和验证程序,并将视图保存在FacesContext对象中,以备后面的处理过程所用。FacesContext对象包含了JSF用来管理当前会话中当前请求的GUI组件状态所需要的所有状态信息。
|
| 应用请求值 | 使用请求中发送来的值来更新组件树的组件值。因为请求中发送来的值都是String类型的,所以在更新组件树的组件值之前,必须将这些值转换为相应类型。这个过程也是解码。若转换有错误,这些错误将添加到FacesContext对象。 |
| 处理验证 |
当每个组件的本地值被更新后,Lifecycle对象都会根据这些注册组件的验证规则来验证这些值的合法性。
如果输入的值不符合验证规则,就会将验证错误添加至FacesContext对象,并将组件标记为无效。JSF将转至呈现响应阶段,并显示带有验证错误消息的视图。
如果没有遇到验证错误,JSF将进入下一阶段。
|
| 更新模型值 | 更新与组件相关的后台bean(也叫管理bean)或者模型对象的值。只有那些与组件值绑定在一起的Bean属性才会被更新。 |
| 调用应用程序 | JSF控制器调用应用程序来处理应用程序级的事件,如提交一个表单。(此阶段可执行业务逻辑) |
| 呈现响应 | 使用当前的显示技术(如JSP)显示选定的视图。 |
JAVAEE 第六周的更多相关文章
- JavaEE第六周
Applet简介 Java Applet简介 最近要使用worldwind java sdk做Applet开发,看了些Applet的资料,为了防止忘记,记录如下: applet是通过<apple ...
- javaee 第六周作业
一.jsf(java server faces)的运行原理(工作方式) 1.jsf应用是事件驱动的,当一个事件发生时(比如用户单击一个按钮),事件通知通过HTTP发往服务器,服务器端使用叫做Faces ...
- 【FOL】第六周
最近太忙,三周(第四.五.六周)一起记录一下. 1.完成了键盘的输入,顺便把之前鼠标输入改了一下(最早是在渲染循环里面处理鼠标事件) 2.UI控件方面,做了个Edit控件,把之前的Label.Imag ...
- 20145213《Java程序设计学习笔记》第六周学习总结
20145213<Java程序设计学习笔记>第六周学习总结 说在前面的话 上篇博客中娄老师指出我因为数据结构基础薄弱,才导致对第九章内容浅尝遏止地认知.在这里我还要自我批评一下,其实我事后 ...
- 20145304 Java第六周学习报告
20145304<Java程序设计>第六周学习总结 教材学习内容总结 1.InputStream与OutputStream: 在Java中,输入串流的代表对象为java.io.InputS ...
- 20145330第六周《Java学习笔记》
20145330第六周<Java学习笔记> . 这周算是很忙碌的一周.因为第六周陆续很多实验都开始进行,开始要准备和预习的科目日渐增多,对Java分配的时间不知不觉就减少了,然而第十和十一 ...
- 20145337 《Java程序设计》第六周学习总结
20145337 <Java程序设计>第六周学习总结 教材学习内容总结 输入\输出 InputStream与OutputStream 从应用程序角度来看,如果要将数据从来源取出,可以使用输 ...
- Linux内核设计第六周 ——进程的描述和创建
Linux内核设计第六周 ——进程的描述和创建 第一部分 知识点总结 一.进程描述符task_struct数据结构 1.操作系统的三大功能: 进程管理.内存管理.文件系统 2.进程的作用: 将信号.进 ...
- 程序设计入门—Java语言 第六周编程题 1 单词长度(4分)
第六周编程题 依照学术诚信条款,我保证此作业是本人独立完成的. 1 单词长度(4分) 题目内容: 你的程序要读入一行文本,其中以空格分隔为若干个单词,以'.'结束.你要输出这行文本中每个单词的长度.这 ...
随机推荐
- 20175312 2018-2019-2 《Java程序设计》第7周学习总结
20175312 2018-2019-2 <Java程序设计>第7周学习总结 教材学习内容总结 已依照蓝墨云班课的要求完成了第八章的学习,主要的学习渠道是PPT,和书的课后习题. 总结如下 ...
- 20175312 2018-2019-2 实验一《Java开发环境的熟悉》实验报告
20175312 2018-2019-2 实验一<Java开发环境的熟悉>实验报告 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用Eclipse 编辑.编译.运行.调试J ...
- javascript实现游戏贪吃蛇
1.设计蛇:属性有宽.高.方向.状态(有多少节),方法:显示,跑 2.设计食物:属性宽.高 3.显示蛇:根据状态向地图里加元素 4.蛇跑起来:下一节到前一节的位置,蛇头根据方向变,删除原来的蛇,新建蛇 ...
- python打包分发工具setuptools使用记录
关于python setup.py文件的编写技巧 环境:最新版setuptools,初步认识setuptools可以参考这篇文章 1. 自定义命令 from setuptools import set ...
- leecode第二百三十七题(删除链表中的节点)
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode ...
- LeetCode--031--下一个排列(java)*
实现获取下一个排列的函数,算法需要将给定数字序列重新排列成字典序中下一个更大的排列. 如果不存在下一个更大的排列,则将数字重新排列成最小的排列(即升序排列). 必须原地修改,只允许使用额外常数空间. ...
- 用node.js启动mock.js
Node.js Node 是一个让 JavaScript 运行在服务端的开发平台,它让 JavaScript 成为与PHP.Python.Perl.Ruby 等服务端语言平起平坐的脚本语言.官网下载n ...
- laravel框架的注入
如果项目太大,最好采用注入的方式 首先在 根目录/app/ 下创建个service文件夹来 在控制器层可以调用 调用方法
- 项目部署Vue+Django(luffy)
部署路飞学城 部署整体框架图: 1 熟悉linux操作 2 上传路飞学城项目到linux服务器 xftp上传到服务器 lrzsz工具 3 完成python3解释器的安装 在linux命令行模式下, 输 ...
- 序列化---Serializable与Externalizable源码
Serializable接口总结: 1. java.io.Serializable接口是一个标识接口,它没有任何字段和方法,用来表示此类可序列化: 2. 父类声明该接口,则其与其所有子类均可序列化,都 ...