通过本书的学习,读者能够最大限度地应用Java Server Faces和创建JSF程序,以实现快速构建Java Web应用的基本架构。书中首先对底层和相关技术进行了综述,接着介绍了如何编写并部署JSF应用程序,然后是各个主题的详尽指导,包括如何使用标准的GUI组件、输入难和转换器,如何控制页面导航、管理Java Bean和编写事件监听器。高级主题包括编写定制GUI组件、扩展输入验证器提供国际化支持,以及开发一个切产可行的网上商店应用程序等。
第1章JavaWeb技术概述
1.1Sewlets
1.1.1使用Servlet接口
1.1.2建立一个servlet目录结构
1.1.3复习部署描述符
1.1.4获取上下文参数
1.1.5监听应用事件
1.1.6打包及部署Web应用
1.2JavaServerPageS(JSP)
1.3JSP和JavaBeans
1.3.1设置和获取JavaBean的属性
1.3.2从JSP页面中调用bean
1.3.3访问bean属性
1.4定制标记
1.4.1定制标记和JavaBeans的比较
1.4.2开发和使用定制标记库
1.5Model2体系结构
1.6小结
第2章JavaServerFaces(JSF)简介
2.1JSF的工作方式
2.1.1理解请求处理生命周期的各个阶段
2.1.2使用应用配置文件注册JavaBeans
2.2编写一个JSF应用
2.2.1设计JSP页面
2.2.2编写JavaBeans
2.2.3编写事件监听器
2.3创建事件监听器和组件树示例
2.3.1为监听器和组件树示例建立目录结构
2.3.2为监听器和组件树示例编写部署描述符
2.3.3为监听器和组件树示例编写模型对象
2.3.4为监听器和组件树示例编写应用配置文件
2.3.5为监听器和组件树示例编写JSP页面
2.3.6为监听器和组件树示例编写ActionListener
2.3.7编译并运行监听器和组件树示例
2.4创建验证器的示例
2.4.1为验证器示例建立目录结构
·2.4.2为验证器示例编写JSP页面
2.4.3运行验证器示例
2.5创建页面导航示例
2.5.1为页面导航示例建立目录结构
2.5.2建立SurveyBean
2.5.3为页面导航示例编写JSP页面文件
2.5.4为页面导航示例建立应用配置文件
2.5.5编译并运行页面导航示例
2.6JSF应用编程接口(APl)简介
2.6.1javax.faces包
2.6.2javax.faces.application包
2.6.3javax.faces.component包
2.6.4javax.faces.context包
2.6.5javax.faces,convert包
2.6.6javax.faces.e1包
2.6.7javax.faces.event包
2.6.8javax.faces.1ifecycle包
2.6.9javax.faces.render包
2.6.10javax.faces.tree包
2.6.11javax.faces.validator包
2.6.12javax.faces.webapp包
2.7小结
第3章用来处理请求的对象
3.1本章中相关类的重要性
3.2使用FacesContext类
3.2.1获取当前实例
3.2.2获取和修改组件树
3.2.3添加和获取消息
3.2.4添加和获取请求处理事件
3.2.5向Response对象里写入信息
3.2.6获取和设置地区
3.2.7操作请求处理生命周期
3.2.8获取其他请求状态信息
3.3使用ExtemalContext类
3.3.1获取ServletContext、ServletRequest和ServletResponse对象
3.3.2获取ServletContext特性
3.3.3获取Session对象及其特性
3.3.4获取ServletContext对象的初始参数
3.3.5获取Request对象的特性
3.3.6访问Request对象里的参数名和值
3.3.7获取请求头的名和值
3.3.8获取Cookie
3.3.9获取场所
3.3.10获取上下文路径
3.3.11获取资源路径
3.3.12编码U1lL
3.3.13分派请求
3.4使用Tree类
3.5通过Application类来访问JavaBean
3.5.1获取Application实例的引用
3.5.2获取Application的ValueBindinS对象
3.6使用ValueBinding类
3.6.1获取ValueBinding所表示的对象的类型
3.6.2获取和设置ValueBin山nS对象的属性
3.6.3检查ValueBinding属性是否可写
3.7小结
第4章用户界面组件模型
4.1介绍UIComponent接口
4.1.1用标识符标识组件
4.1.2组件的父子关系
4.1.3用Facets创建从属组件
4.1.4呈现组件
4.1.5管理生命周期
4.1.6使用验证器
4.2在JSP页面里使用UI组件
4.2.1用定制标记创建UI组件
4.2.2介绍UI组件类
4.3将组件绑定到模型对象
4.3.1满足绑定需求
4.3.2评估值引用表达式
4.3.3用隐式对象提取信息
4.3.4使用值引用表达式来获取值
4.4小结
第5章JSF简单组件
5.1在JSP页面中使用定制标记库
5.2介绍HTML定制标记库
5.3使用定制标记
5.3.1应用标记特性
5.3.2创建用来测试标记的JavaBean:MyBean
5.4小结
第6章JSF高级组件
6.1使用UIPanel组件
6.1.1使用panel_grid标记呈现HTML表
6.1.2使用pane[1ist标记和pane[data标记增加表记录
6.1.3使用panelgroup标记编写表头和表尾
6.1.4使用样式表格式化UIPanel组件
6.2使用Select组件
6.2.1回顾元素
6.2.2介绍选择标记
6.3小结
第7章JSF事件处理
7.1介绍Java2事件模型
7.1.1事件源
7.1.2事件对象
7.1.3事件监听器
7.1.4对事件通知感兴趣的对象
7.1.5事件演示
7.2处理JSF中的事件
7.2.1JSF中的事件对象
7.2.2JSF中的事件监听器
7.3为UICommand组们:编写ACtiOnListener
7.3.1实现ActionListener接口
7.3.2设置UICommand组件以捕获事件
7.4为UIInput组件编写ValueChangedListener.
7.4.1实现ValueChangedListener接口
7.4.2设置UIInput组件以捕获事件
7.5小结
第8章页面导航
8.1定义导航规则
8.1.1指定导航规则的元素
8.1.2实现简单的页面导航
8.2定义有条件的页面导航
8.2.1使用多个导航块
8.2.2使用from-action-ref元素
8.3小结
第9章验证器
9.1使用标准验证器
9.1.1创建测试验证器的TestingBean
9.1.2介绍验证器标记
9.2编写定制验证器
9.2.1介绍验证器接口和消息接口
9.2.2创建简单的定制验证器
9.2.3创建带有特性的定制验证器
9.2.4在定制验证器中使用消息资源
9.3小结
第10章转换器
10.1使用标准转换器
10.1.1创建测试转换器的TestinSDean
10.1.2介绍标准转换器
10.2编写定制转换器
10.2.1介绍Converter接口
10.2.2创建定制转换器
10.3小结
第11章国际化和本地化
11.1设计国际化应用
11.1.1本地化应用
11.1.2定义地区
11.1.3创建地区属性文件
11.1.4读取属性文件
11.2在JSF应用中支持国际化和本地化
11.2.1获得浏览器的地区
11.2.2本地化静态数据
11.2.3本地化动态数据
11.2.4本地化验证器中的错误消息
11.3小结
第12章Renderer
12.1呈现的工作方式
12.1.1直接实现和委托实现
12.1.2解码和编码操作
12.2使用标准Renderer
12.2.1获取组件Renderer类型
12.2.2探究RenderKit
12.3编写定制Renderer
12.3.1分析Renderer类
12.3.2创建定制Renderer
12.3.3编写标记处理程序
12.3.4编写标记库描述符
12.3.5使用定制Renderer
12.4小结
第13章定制用户界面组件
13.1定制组件还是定制Renderer
13.2编写定制组件
13.2.1确定扩展哪一个类
13.2.2确定如何处理呈现
13.2.3在JSP页面中使用定制组件
13.2.4创建测试定制组件的TestingBean
13.3创建正数输入组件
13.3.1编写UIPositiveNumber类
13.3.2编写PositiveNumberTag标记处理程序
13.3.3添加U1PositiveNumber标记定义
13.3.4使用UIPositiveNumber组件
13.4在定制输入组件中使用定制Renderer.
13.4.1编写UIPositiveInteger类和标记处理程序
13.4.2为UIPositiveInteger编写Renderer
13.4.3将UIPositiveInteger标记定义添加到标记库描述符
13.4.4使用UIPositiveInteger组件
13.5创建日历输入组件
13.5.1编写UICalendar类和标记处理程序
13.5.2编写日历Renderer
13.5.3将UICalendar标记定义添加到标记库描述符
13.5.4使用UICalendar组件
13.6创建一个灵活的超链接组件
13.6.1编写FlexibleHyperlink标记处理程序
13.6.2添加FlexibleHyperlink标记定义到标记库描述符
13.6.3测试超链接组件
13.7小结
第14章在线商店应用
14.1BuyDirect应用介绍
14.2应用页面设计
14.2.1使用样式表
14.2.2了解页面控制流程
14.3设计并访问数据库
14.3.1设计数据库表的结构
14.3.2.连接数据库
14.3.3使用DatabaseUtil类
14.4表示模型对象并注册Bean
14.4.1为应用定义类
14.4.2在应用配置文件中注册Beml
14.5建立导航规则
14.5.1导航到搜索页面
14.5.2导航到商品细节页面
14.5.3导航到购物车页面
14.5.4导航到结账和订单页面
14.6添加ActionListener
1.4.7编辑部署描述符
14.8创建JSP页面
14.8.1header.jsp和footer.jsp页面
14.8.2menu.jsp页面
14.8.3index.jsp页面
14.8.4search.jsp页面
14.8.5browse.jsp页面
14.8.6detailsisp页面
14.8.7shoppin9Cad.jsp页面
14.8.8checkOut.jsp页面
14.8.9order.jsp页面
14.9运行应用
14.10小结
第15章应用配置文件
15.1定位应用配置文件
15.2了解应用配置文件格式
15.2.1构造一个应用配置文件
15.2.2回顾应用配置文件的元素
15.3小结
第16章JSF是如何工作的
16.1JSF处理过程概述
16.2FacesServlet
16.2.1init方法
16.2.2service方法
16.2.3de.roy方法
16.3FacesContext对象
16.3.1FacesContext中每个请求的状态信息
16.3.2生命周期阶段中的FacesContext处理
16.4Application对象
16.4.1默认的ActionListener
16.4.2默认的NavigationHandler
16.5Lifecycle对象
16.5.1重建组件树阶段
16.5.2应用请求值阶段
16.5.3处理验证阶段
16.5.4更新模型值阶段
16.5.5调用应用阶段
16.5.6呈现响应阶段
16.5.7事件处理
16.6小结
第17章JSP2.0表达式语言
17.1JSP表达式语言介绍
17.1.1构建EL表达式
17.1.2访问对象属性
17.1.3访问EL隐式对象
17.1.4使用简单的EL表达式
17.2访问JavaBean
17.3使用表达式语言(EL)运算符
17.4调整表达式语言的相关设置
17.4.1使EL计算无效
17.4.2禁用脚本元素
17.5使用表达式语言解决问题
17.6小结
第18章JSP标准标记库
18.1在JSF应用中使用JSTL标记的原因
18.2JSTL
18.2.1在JSP页面中使用JSTL
18.2.2执行通用动作
18.2.3执行条件动作
18.2.4用迭代器动作迭代
18.3用JSTL标记解决常见的JSF问题
18.3.1访问JSP页面的限制
18.3.2改进登录应用
18.4小结
附录A安装和配置Tomcat5
A.1设置JAVAHOME环境变量
A.1.1在Wlndows中设置JAVAHOME
A.1.2在Unix/LilltlX系统中设置JAVAHOME
A.2安装和运行Tomcat
A.2.1关闭Tomcat
A.2.2回顾Tomcat目录
A.3配置Tomcat
A.3.1改变端口
A.3.2设置自动重载
A.4查找Tomcat资源
附录BWeb应用部署描述符
B.1web.xml文件概述
B.2web.xml文件中的web—app元素
Budi Kurniawan是一位专长于Internet编程和面向对象IT顾问,拥有丰富的Java和Microsoft技术培训授课经验。他曾经编写过多本计算机编程书籍,包括How Tomcat Works和Java web development with servlets,JSP ,and EJB Second Edition.Kurniawan在获得了工程硕士学位后就致力于Java File Upload组件的开发,该组件已经获得财富全球的500强的广泛许可。