JSF 是通过定制标签与JSP集成的。对应于UI 组件的标签称为是组件标签。特别针对HTML的称为HTML标签库,而剩下的组件则在核心标签库中。核心标签库也包含用于验证器、转换器等的标签。
HTML标签库(通常使用前缀“h”):
组件 | 标签 | 说明 |
UIForm | form | 表示 HTML表单元素 |
UIInput | InputText | 单行文本输入控件 |
inputTextarea | 多行文本输入控件 | |
InputSecret | 密码输入控件 | |
inputHidden | 隐藏字段 | |
UIOutput | outputLabel | 显示文本 |
outputLink | 链接到另一页面或某页面上的特定位置 | |
outputFormat | 显示格式化的信息 | |
outputText | 当行文本输入 | |
UICommand | commandButton | 表示一个按钮 |
commandLink | 表示一个链接 | |
UISelectOne | SelectOneListbox | 单选列表框 |
selectOneMenu | 单选菜单 | |
selectOneRadio | 单选按钮集 | |
UISelectBoolean | selectBooleanCheckbox | 单个复选框 |
UISelectMany | selectManyListbox | 复选框集 |
selectManyCheckbox | 多行选择列表框 | |
selectManyMenu | 多选菜单 | |
UIPanel | panelGrid | 表示一 个 HTML 表格 |
panelGroup | 组合一系列组件 | |
UIMessage | message | 显示一个组件的最近使用的消息 |
messages | 显示所有消息 | |
UIGraphic | graphicImage | 显示一个图像 |
UIData | dataTable | 功能丰富的表格控件 |
UIColumn | column | 表示表格中的列 |
JSF标准HTML标签包括了几个共同的属性:
属性名称 | 适用 | 说明 |
---|---|---|
id | 所有组件 | 可指定id名称,以让其它卷标或组件参考 |
binding | 所有组件 | 绑定至UIComponent |
rendered | 所有组件 | 是否显示组件 |
styleClass | 所有组件 | 设定Cascading stylesheet (CSS) |
value | 输入、输出、命令组件 | 设定值或绑定至指定的值 |
valueChangeListener | 输入组件 | 设定值变事件处理者 |
converter | 输入、输出组件 | 设定转换器 |
validator | 输入组件 | 设定验证器 |
required | 输入组件 | 是否验证必填字段 |
immediate | 输入、命令组件 | 是否为立即事件 |
除了共同的属性之外,还可以在某些组件上设定像是size、alt、width等属性,或者是设定DHTML事件属性,例如onchange、onclick等。
核心标签库(通常使用前缀“f”):
标签 | 说明 |
view | 创建顶层视图 |
subview | 创建视图的子视图 |
facet | 向组件添加 facet |
param | 向组件添加参数 |
attribute | 向组件添加属性 |
actionListener | 在父组件上注册操作监听器 |
valueChangeListener | 向父组件注册值变更监听器 |
converter | 注册任意转换器 |
convertDateTime | 注册日期时间转换器 |
convertNumber | 注册数量转换器 |
validateLength | 验证组件值的长度 |
validateDoubleRange | 验证组件值的双精度范围 |
validateLongRange | 验证组件值的长整型范围 |
validator | 向组件添加验证器 |
loadBundle | 加载资源包 |
verbatim | 向页面中添加标签,转义和显示大块的静态文本 |
selectItem | 指定 UISelectOne 或 UISelectMany 组件的一个项目 |
selectItems | 指定 UISelectOne 或 UISelectMany 组件的多个项目 |