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 组件的多个项目 |