第1部分 入门 2
第1章 绪论 2
1.1 JSF简介 2
1.2 RichFaces简介 4
1.3第1个例子 7
1.3.1创建JSF工程 7
1.3.2创建RichFaces工程 12
1.3.3 tinylibrary 1.0 13
1.4本章小结 17
第2章JSF入门 18
2.1 JSF组件库 18
2.1.1标准html库 18
2.1.2标准核心库 19
2.1.3页面组件 21
2.1.4输入组件 26
2.1.5输出组件 33
2.1.6行为组件 38
2.1.7元数据组件 43
2.1.8多语言组件 43
2.1.9功能性组件 44
2.2 JSF视图 52
2.2.1视图定义语言(VDL) 52
2.2.2模板的设计和使用 53
2.3容器管理 56
2.3.1 ManagedBean 56
2.3.2 Unified EL 59
2.3.3 flash 62
2.4 JSF转换器 63
2.4.1转换器组件 63
2.4.2数字转换组件 65
2.4.3日期时间转换组件 66
2.5 JSF验证器 67
2.5.1验证器组件 67
2.5.2必输项验证组件 69
2.5.3长度验证组件 69
2.5.4长整型范围验证组件 70
2.5.5浮点型范围验证组件 70
2.5.6正则验证组件 70
2.5.7 JSR303和Bean验证组件 70
2.6 JSF脚本 75
2.6.1 jsf名字空间 75
2.6.2 jsf.ajax名字空间 75
2.6.3 jsf.util名字空间 76
2.7 JSF变量 76
2.8本章小结 78
第3章RICHFACES入门 79
3.1RichFaces组件库 79
3.1.1行为组件 79
3.1.2 jQuery 82
3.1.3轮询组件 82
3.1.4输入组件 84
3.1.5选择组件 101
3.1.6菜单组件 106
3.1.7验证组件 112
3.1.8输出组件 116
3.1.9迭代组件 128
3.1.10集合组件 129
3.1.11树组件 136
3.1.12拖动组件 139
3.1.13功能输出组件 141
3.1.14监听组件 143
3.2对JSF的增强 144
3.2.1异步请求组件 144
3.2.2异步输出容器 147
3.2.3异步队列 148
3.2.4 js面向切面函数 148
3.2.5异步区域组件 150
3.2.6异步脚本函数组件 150
3.2.7请求队列组件 151
3.2.8 RichFaces脚本函数 155
3.2.9其他组件 156
3.3推送技术 158
3.3.1实现模式 158
3.3.2配置环境 160
3.3.3 TopicsContext实践 162
3.3.4 CDI实践 163
3.3.5 JMS实践 164
3.3.6浏览器支持 166
3.4从RichFaces 3.x升级 167
3.4.1 Ajax相关 167
3.4.2样式表 167
3.4.3组件类 167
3.4.4组件标签及属性变化 167
3.5第2个例子 167
3.6本章小结 173
第2部分 原理 176
第4章JSF原理 176
4.1请求处理 176
4.1.1生命周期 176
4.1.2傲游全程 177
4.1.3 JSF转换机制 186
4.1.4 JSF验证机制 190
4.1.5立即属性 192
4.2视图导航 192
4.2.1 JSF与REST 192
4.2.2隐式导航 193
4.2.3基于规则的导航 194
4.2.4 forward和redirect 198
4.2.5 PRG 200
4.3事件模型 204
4.3.1事件类型 204
4.3.2监听器类型 205
4.3.3事件触发 206
4.4异步请求 206
4.4.1异步请求函数 207
4.4.2全局函数 208
4.4.3异步请求处理流程 210
4.4.4异步应答对象 211
4.4.5服务器端处理 213
4.5 RichFaces原理 214
4.5.1框架结构 214
4.5.2异步增强 216
4.6下载应用 220
4.7本章小结 221
第3部分 讲阶 224
第5章 自定义组件 224
5.1 custom component 224
5.2 composite component 231
5.3使用CDK自定义组件 235
5.3.1 UI组件类 236
5.3.2 Renderer类 236
5.3.3 tablib标签符 236
5.3.4图画组件 236
5.3.5 CDK名字空间 240
5.3.6 package-info 243
5.4本章小结 244
第6章 配置与优化 245
6.1 JSF配置参数 245
6.2 JSF配置文件 249
6.3资源管理 251
6.3.1资源优化 252
6.3.2资源映射 253
6.4错误处理 254
6.4.1统一错误导航 255
6.4.2自定义异常处理 257
6.4.3异步请求异常处理 259
6.5皮肤和ECSS 259
6.5.1皮肤主题 259
6.5.2 ECSS 261
6.5.3自定义主题 262
6.5.4配置参数 265
6.6本章小结 266
第7章 技巧和总结 267
7.1实战收录 267
7.1.1分页实现 267
7.1.2数据表多选 273
7.1.3提示输入框 274
7.2知识管理系统示例 275
7.2.1依赖资源 275
7.2.2功能 277
7.3展望与总结 279
附录A本书源代码 280
附录B实例的开发和调试环境 281
附录C Maven简明指南 283
附录D参考资料 288