关于JSF2 composite component一点理解

来源:互联网 发布:亿赛通数据泄露防护 编辑:程序博客网 时间:2024/04/29 13:16

关于复合组件 (composite component)在JSF1.2和JSF2中区别:

  1、在JSF1.2中,复合组件必须写在WEB-INF下,并且在web.xml中申明,如下:

 

  2、在JSF2.0中,复合组件可以写在WEB-INF下,也可以在META-INF\resources下:

   

  3、在WEB-INF下的复合组件,仅仅是一个通用代码块,不是一个真正意义上的组件,使用时仅仅是代码段的copy,没有容器的概念。

  4、在META-INF下的复合组件,是真正意义下的组件,它是一个NameContainer容器,在复合组件内的组件的父组件就是这个复合组件,而不是外面的组件。所以不能象下面代码单独封装column 组件,因为facet的父组件不是外面的datatable,而是这个复合组件本身,列头不能显示。

   

   5、在JSF2.0支持的复合组件,最大的特点是以前要用java代码去实现页面元素的封装,现在终于可以写简单的xhtml去封装到jar里了,非常实用。好处就不用说了,容易开发,便于升级,把框架和业务系统做到真正的分离。