JSF 技术内幕

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

JSF 技术内幕
当扫瞄器首先衔接到http://localhost:8080/faces/ind.xhtml时,JSF实现初始化JSF代码并读取index.xhtml页面。

这个页面包含诸如h:inputText等JSF标签。

每个标签都有一个相关的标签处理程序类。

当读取该页面时,执行相应的标签处理程序。

JSF标签处理程序彼此配合来构建一棵组件树。

组件树是一种数据结构,其中包含JSF页面上全部用户界面元素的Java对象。

例如UIInput对象分离对应于JSF文件中的h:inputText和h:inputSecret字段。

接着展现HTML页面。

除JSF标签外的全部文本挺直显示。

h:fo、h:inputText、h:inputSecret 和h:commandButton标签则被转换为HTML。

其中每个标签都调用相关的组件。

每个组件有一个展现器以生成HTML输出,反映组件状态。

例如,与h:inputText标签对应的组件展现器生成以下输出: input type="text" name="ue ID" value="current value"/ 这个进程称为编码。

UIInput对象的展现器要求JSF实现查找表达式的唯一ID和当前值。

默认状况下,由JSF实现指定ID字符串。

ID看上去是随机的。

编码页被发送到扫瞄器,扫瞄器按通常的方式显示它。

当在扫瞄器中显示页面后,用户填写表单字段并单击登录按钮。

扫瞄器将表单数据发回到Web服务器,格式化为一个POST哀求。

这是一种特别格式,并被定义为HTML协议的一部份。

POST哀求包含表单的URL (/faces/index.xhtml)以及表单数据。

注重:POST哀求的URL与展现表单的哀求的URL一样。

在提交表单后,将导航到新页面(因为这个缘由,扫瞄器中显示的URL通常比所显示JSF页面的URL晚一步)。

表单数据是ID/值对形式的字符串,用法“”衔接多个键。

作为正常哀求处理的一部份,表单数据位于全部组件都可以拜访的Hash表中。

接下来,JSF实现为每个组件提供了一个检查Hash表的机会,这个过程称为解码。

每个组件自行打算如何说明表单数据。

登录表单有三个组件对象:两个UIInput对象(与表单的文本字段对应)和一个UICommand对象(与提交按钮对应)。

UIInput组件更新value特性
第1页共3页。

相关文档
最新文档