电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

jsf1 2技术的新特性总结

11页
  • 卖家[上传人]:小**
  • 文档编号:89124977
  • 上传时间:2019-05-18
  • 文档格式:DOC
  • 文档大小:30KB
  • / 11 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、JSF1 2技术的新特性总结JSF1.2技术的新特性总结2011年09月02日JSF1.2技术的新特性总结(转) 原作地址:http:/ EE/jsf_12/ 翻译:Jaly, Agile Java “Web Tier to Go With Java EE 5”系列文章中,“JSF1.2新特性”是第一篇。就像在文中表述的一样,JSP技术的优势随着JSF技术的发展得到了进一步的扩大,这种优势是通过统一EL表达式建立起来的。统一JSP的框架也是JSF1.2技术中众多重要成绩之一,并在JSR252规范下进行开发。除了这些变化为,JSF技术还贡献了大量的重要的容易使用的特性。这篇文章简要的描述一些重要的基本特性,大概有如下几点: 统一JSP技术 改进自定义信息的支持 提供状态保存特性能够关闭自动生成组件客户端ID 新的setPropertyActionListener标签 JavaServer Faces规范的前言部分提供了一组完成的特性描述。 统一JSP技术 1 JSP和JSF技术相对立的核心是它们之间的页面生命周期的不同。在以前的文章中已经介绍了JSP规范,JSP规范指出:页面的元素被执行

      2、显示时,JSP支持单一的“渲染响应”生命周期,然后立即渲染页面。JSF的生命周期分成了多个阶段,当一个组件树被创建完毕,组件的数据就会被处理,然后组件被渲染并显示在页面上。然而,一个JSF页面并不需 要在执行后立即渲染,因为处理完以后等待按组件在页面中的顺序进行渲染。因此,在JSP页面上使用的JSF组件被渲染时,有时候并不是按照正常的顺序完成,而且会丢失组件的一些状态或者其他的问题产生,这是因为jsp静态内容被渲染时,jsf组件并不一定处理完等等。 这么文章涉及到JSP2.1的新特性。这里会从一下3个方面详细的介绍JSF技术的改进的地方: 首先JSF组件支持JSTL的forEach标签 改进tree组件创建方法和内容组织 反对只使用JSF技术的EL,赞成使用统一的EL 首先JSF组件支持JSTL的forEach标签 就像在描述JSP技术新特性的文章中表述的一样,Java EE web层中的统一EL的一个新特性就是:迭代标签,例如JSTL的forEach能够在JSF组件中直接使用。例如,使用输入组件构建一个简单的表格,可以通过下列代码来实现: Item Name Item Price I

      3、tem Quantity 没有统一使用EL, 这几乎是不可能实现的。 改进tree组件创建方法和内容组织 2 在Hans Bergsten的article about the use of JavaServer Faces technology with JSP pages文中写到的,混合使用JSP代码和JSF标签有时候会产生预期不到的结果。例如, 在下面的代码中,JSF 组件outputText输出的文本内容“Hi”本来应该在文本内容“whats your name?”前面显示: Whats your name? 然而,这两行代码的输出是顺序是相反的。是什么导致了问题的发生?JSF的实现是以JSP的渲染引擎来渲染组件树的。因为JSP会立即执行并把静态文本内容放在response中,而的子节点标签直到相应的结束标签匹配后才会被渲染,所以“whats your name?”就会在“Hi”之前显示了。 像这样的问题在Hans Bergsten的文中已经提到并在JSF1.2版本中得到了修改。解决方案包括:怎样改变组件树的创建、各种内容的处理和渲染等等。最重要的改变如下几点: 创建和渲染组件树

      4、被分成2步,为了防止JSP引擎过早的渲染页面内容。 所有的渲染器的rendersChildren属性值现在已经设计为“true”,目的时防止联合组件的内容在各自的组件内部分别渲染。 标签内部的静态内容对应的渲染器的rendersChildren属性值设置为true,目的是获取并保存一个短暂的UIOutput组件并把该组件添加到组件树中。 状态管理器从ViewTag中移到了ViewHandler中,为了防止write State在实际保存过程中被调用。 在接下来的“Web Tier to Go With Java EE 5”系列文章中会提供更多的关于描述组件树的创建和内容组织的细节,这就让JSF标签组件中使用JSP代码成为了可能。 反对只使用JSF的EL,赞成使用统一的EL 如本文前面的内容介绍,JSP和JSF的EL表达式会整合成统一的EL。这就意味着现在的JSF的EL是不推荐使用的。在介绍统一的EL前已经使用了JSF开发的应用,请务必做好具有向后兼容的工作。 3 然而,为了利用统一EL的特性,你可能需要改变原来自定应的组件和自定义的标签。要移植到统一EL,首先要把ValueBindin

      5、g换成ValueExpression,把MethodBinding换成 MethodException。这些改变都相对的容易,而且还有更好的办法可以完成这些改变。例如,因为所有标准的标记属性都可以访问值表达式,你的标记处理程序不需要检测属性是可以接收、访问一个值表达式。 要了解更多关于如何移植到统一EL的内容,请参见文章“Unified Expression Language”(http:/ /unifiedEL.html) 改进易用性来支持自定义信息 JSF1.2技术的一个重要改进就是在JSF应用中增加自定义信息的能力。这个改进包括如下几个方面: 一组新的标准转换信息 对输入组件提供了新的属性:requiredMessage、converterMessage、validatorMessage 为输入组件提供了新的label属性,允许组件的名字中包含错误信息 提供新的资源绑定元素在应用中绑定资源。 一组标准的转换器信息 以前的JSF给标准验证器提供了一组标准的错误信息。版本1.2增加了标注转换器提供了一组错误信息。要查看这些信息,请参考JSF1.2规范(http:/jcp.org/en

      6、/jsr/detail?id=252)的第2.5.2.4节。 新属性:requiredMessage,converterMessage,validatorMessage 很多情况下,标准的错误提示信息很适合为我们的需要。如果不合适,我们可以使用自定义的信息来覆盖这些标准的信息,要完成个目的,就是通过输入组件的新属性requiredMessage、converterMessage、validatorMessage来完成。 4 当你需要修改信息时,新的特性允许你覆盖原有的信息。例如,假设你在userid和password2个域中使用了验证长度的验证器。你希望一个错误信息提示“Userid必须时9个字符”,另一个“Password必须是9个字符”,但是你希望对这2个输入域使用同一个 验证器。通过validatorMessage属性,你可以在适当的组件上设置特殊的信息,就不用为每个验证器实例提供单独的提示信息。 这些属性接收字符型的值以及值表达式,和JSF的标记属性一样的工作原理。因此,你可以使用值表达式来引用绑定资源中的信息,如下面的例子: 就像你猜想的一样,输入组件的属性requiredM

      7、essage值覆盖了默认的信息提示。输入组件的属性converterMessage值覆盖了默认的转换信息提示。同样的,输入组件的属性validatorMessage值也覆盖了默认的验证信息提示。 因为这种特性,页面开发人员现在可以更为合适的提供错误的提示信息。这样,用户能够更准确的直到错误的根源。 输入组件的新属性:label 输入组件的label新属性是另外一个帮助用户确认错误信息的重要特性。许多由组件产生的标准错误信息包括根据参数得到的信息。输入组件的label属性值是用来适当取代相关的默认信息的。例如,下面的信息是与DateTimeConverter相关的信息,用DATE_ID标识: 2: 0 could not be understood as a date. 这就是说,你有一个DateTimeConverter实例,并与一个文本输入框绑定。设置输入组件的label属性为BirthDate。如果用户在文本输入框中输入“older than the hills”,转换器就失败了。当页面再次被渲染的时候,用户就能看到如下的信息提示: Birth Date: older than the hills could not be understood as a date. 5 Label组件接受文本内容,也接受值表达式。所以,在使用其他的JSF标签属性时,你可以使用表达式来引用绑定的资源文件内容。 新的资源配置元素 JSF1.2版本以前的规范,页面开发人员使用loadBundle标签来引用资源文件,从而达到本地化的目的。在新的1.2版本中,页面开发人员一样可以在页面中使用资源绑定。 更高效率的装载绑定好的资源,包括在应用系统的配置文件中使用资源绑定元素进行注册资源的绑定,新的规范提供了一个很好的入口方式。下面的资源绑定元素注册一个叫做“CustomMessages的ResourceBundle类,这个类存在应用系统的资源包里: customMessages resources.CustomMessages var子元素定义了资源引用名称,页面开发人员在开发页面时可以采用如下的方式进行调用: h:outputText value=

      《jsf1 2技术的新特性总结》由会员小**分享,可在线阅读,更多相关《jsf1 2技术的新特性总结》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.