一.配置facelet-taglib,在项目的WEB-INF目录里面创建我们的标签信息文件chi.tablib.xml,文件信息如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE facelet-taglib PUBLIC
"-//Sun Microsystems, Inc.//DTD Facelet Taglib 1.0//EN"
"http://java.sun.com/dtd/facelet-taglib_1_0.dtd">
<facelet-taglib>
<namespace>http://chi.com.cn/jsf</namespace>
<tag>
<tag-name>select</tag-name>
<component>
<component-type>cn.com.chi.select.HtmlSelect</component-type>
<renderer-type>cn.com.chi.select.HtmlSelectRenderer</renderer-type>
</component>
</tag>
</facelet-taglib>
稍微解释一下JSF组件模型构成,它分为组件和渲染器。JSF 组件 类定义 UI 组件的状态和行为;渲染器 定义如何从请求读取组件、如何显示组件 —— 通常通过 HTML 渲染。渲染器把组件的值转换成适当的标记。
从上面的文件信息可以看出,component指的就是UI组件,映射的bean是cn.com.chi.select.HtmlSelect类,而renderer指的就是渲染器,映射的bean是cn.com.chi.select.HtmlSelectRenderer。