《JSF实战》PDF下载

  • 购买积分:16 如何计算积分?
  • 作  者:(美)Kito Mann著;铁手,程晓冬,何勇译
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2007
  • ISBN:7115155917
  • 页数:509 页
图书介绍:JavaServerFaces(JSF)是一项使用Java技术来快速构建Web应用程序的新技术。

第五部分 编写定制组件、呈现器、验证器和转换器:示例 1

1.1 这是RAD化的世界 2

第一部分 JSF探秘 2

第1章 JSF介绍 2

1.1.1 什么是JSF 3

1.1.2 业界支持 7

1.2 幕后的技术 7

1.2.1 HTTP 7

1.2.2 servlet 8

1.2.4 JavaBeans 9

1.2.3 portlet 9

1.2.5 JSP和其他显示技术 10

1.3 框架,框架,还是框架 10

1.3.1 为什么使用框架 11

1.3.2 它是模型2的 11

1.3.3 JSF、Struts以及其他框架 12

1.4 组件无处不在 14

1.5 Hello,world! 15

1.5.1 解剖hello.jsp 17

1.5.2 解剖goodbye.jsp 22

1.5.3 检视HelloBean类 23

1.5.4 通过faces-config.xml进行配置 25

1.5.5 配置web.xml 26

1.6 小结 27

第2章 JSF基础 28

2.1 关键部件 28

2.1.1 UI组件 30

2.1.2 呈现器 31

2.1.3 验证器 32

2.1.4 后台bean 33

2.1.5 转换器 34

2.1.6 事件和监听器 35

2.1.7 消息 40

2.1.8 导航 40

2.2 请求处理生命周期 41

2.2.1 阶段1:恢复视图 44

2.2.2 阶段2:应用请求值 46

2.2.3 阶段3:处理验证 47

2.2.4 阶段4:更新模型值 47

2.2.5 阶段5:调用应用 48

2.3 理解组件和客户端标识符 49

2.2.6 阶段6:呈现响应 49

2.3.1 命名容器 52

2.3.2 引用标识符 53

2.4 JSF表达式语言 54

2.4.1 作用域变量 57

2.4.2 使用隐含变量 58

2.4.3 在组件中使用EL 60

2.5 小结 62

第3章 热身:初识JSF 64

3.1 设置JSF环境 64

3.1.1 基本要求 64

3.1.3 目录结构 65

3.1.2 选择JSF实现 65

3.1.4 配置 66

3.2 JSP的角色 73

3.2.1 使用JSP包含 74

3.2.2 与JSTL以及其他JSP定制标签一起使用JSF 75

3.3 创建和初始化bean 80

3.3.1 声明受管bean 82

3.3.2 将List和Map声明为受管bean 90

3.3.3 通过值绑定表达式设置值 93

3.4 在页面海洋中导航 95

3.5 小结 101

第4章 从标准组件开始 102

4.1 一切尽在组件中 102

4.1.1 使用HTML属性 104

4.1.2 理解facet 106

4.1.3 工具的威力 106

4.2 组件的通用属性 108

4.1.4 幕后的呈现包 108

4.3 用UIViewRoot控制页面 109

4.4 用UIParameter设置组件参数 110

4.5 使用Output组件显示数据 112

4.5.1 使用HtmlOutputText显示普通文本 112

4.5.2 与〈f:verbatim〉标签一起使用UIOutput 113

4.5.3 使用HtmlOutputLabel创建输入标注 116

4.5.4 使用HtmlOutputFormat输出参数化文本 117

4.5.5 使用HtmlOutputLink显示超链接 121

4.6 使用HtmlGraphicImage显示图像 122

4.7 使用HtmlMessage显示组件消息 123

4.8 使用HtmlMessages显示应用消息 126

4.9 使用面板组件进行分组和布局 127

4.9.1 使用HtmlPanelGroup分组组件 128

4.9.2 使用HtmlPanelGrid创建表格 129

4.10 小结 133

第5章 使用输入组件和数据表格组件 135

5.1 注册事件监听器 135

5.1.1 声明值改变事件 136

5.1.2 声明动作事件 136

5.2 通用组件属性 137

5.3 使用HtmlForm处理表单 138

5.4.1 使用HtmlInputText显示基本文本框 140

5.4 处理基本用户输入 140

5.4.2 使用HtmlInputTextarea显示备注字段 141

5.4.3 使用HtmlInputSecret显示口令字段 142

5.4.4 使用HtmlInputHidden声明隐藏字段 143

5.5 使用HtmlSelectBooleanCheckbox来显示复选框 144

5.6 定义条目列表 144

5.6.1 用UISelectItem表示单选条目 145

5.6.2 UISelectItems用作多选条目 147

5.7 处理多项选择 148

5.7.1 HtmlSelectManyCheckbox用作复选框组 149

5.7.2 使用HtmlSelectManyListbox显示列表框 151

5.7.3 HtmlSelectManyMenu用作单选列表框 152

5.8 处理单项选择 153

5.8.1 HtmlSelectOneRadio用作单选按钮组 154

5.8.2 用HtmlSelectOneListbox显示单选列表框 156

5.8.3 使用HtmlSelectOneMenu显示组合框 157

5.9 执行应用命令 158

5.9.1 使用HtmlCommandButton声明按钮 158

5.9.2 使用HtmlCommandLink创建动作链接 160

5.10 使用HtmlDataTable显示数据集 162

5.11 小结 168

第6章 国际化、验证器和转换器 170

6.1 国际化和本地化 170

6.1.1 探究场所 171

6.1.2 创建资源束 173

6.1.3 在组件中使用资源束 174

6.2 输入验证 177

6.2.1 使用验证器方法 177

6.1.4 从后台代码国际化字符串 177

6.2.2 使用验证器 178

6.2.3 使用标准验证器 179

6.2.4 综合不同验证器 181

6.3 类型转换和格式化 182

6.3.1 使用转换器 184

6.3.2 使用标准转换器 185

6.4 定制应用消息 195

6.5 小结 198

第7章 ProjectTrack介绍 200

7.1 需求 200

第二部分 构建用户界面 200

7.2 概念模型 203

7.3 用户界面 204

7.5 小结 206

7.4 开发团队 206

第8章 不用Java编码开发用户界面:登录页面 207

8.1 开始 208

8.1.1 设置web.xml 209

8.1.2 设置faces-config.xml 210

8.2 创建Login页面 210

8.2.1 从HtmlGraphicImage和HtmlOutputText组件开始 211

8.2.2 添加一个表单 213

8.3 装扮一下 218

8.3.1 对按钮使用图像 218

8.3.2 集成JavaScript 219

8.3.3 添加CSS 220

8.4 添加验证器 221

8.5 用HtmlPanelGrid改善布局 224

8.6 小结 229

第9章 不用Java编码开发用户界面:其他页面 231

9.1 使用定制组件构建页面头部 231

9.1.1 使用定制的工具条组件 235

9.1.2 配置导航规则 236

9.2 使用面板建立数据表格原型 237

9.2.1 Inbox页面 238

9.2.2 配置导航规则 241

9.2.4 配置导航规则 242

9.2.3 Show All页面 242

9.3 创建输入表单 243

9.3.1 Approve a Project页面 243

9.3.2 配置导航规则 248

9.3.3 Reject a Project页面 248

9.3.4 配置导航规则 250

9.3.5 Create a Project页面 251

9.3.6 配置导航规则 255

9.4 Project Details页面 256

9.5 小结 260

10.1 理解JSF开发方法 261

第10章 集成应用系统功能 261

10.2 探究应用程序环境 263

10.3 基于安全重组页面 265

10.4 Login页面 266

10.5 Header页面 270

10.6 集成数据表格 273

10.6.1 Inbox页面 273

10.6.2 Show All页面 280

10.7 集成输入表单 280

10.7.1 更新包含页面 280

10.7.2 Approve a Project页面 283

10.7.3 Reject a Project页面 285

10.7.4 Create a Project页面 286

10.8 Project Details页面 289

10.9 添加错误页面 294

10.9.2 更新导航规则 295

10.9.1 更新web.xml文件 295

10.10 国际化和本地化UI 296

10.10.1 将文本提取到资源束中 296

10.10.2 国际化Header 297

10.10.3 本地化为俄语 299

10.11 小结 301

11.1 从servlet到JSF 304

第11章 JSF环境 304

第三部分 开发应用程序逻辑 304

11.2 应用程序基础 306

11.2.1 Application类 307

11.2.2 求解表达式 309

11.3 一切尽在上下文 311

11.3.1 FacesContext 312

11.3.2 FacesMessage 313

11.3.3 ExternalContext 315

11.4 事件处理 318

11.4.1 FacesEvent 319

11.4.2 处理动作事件 320

11.4.3 处理值改变事件 322

11.4.4 处理阶段事件 323

11.5 再探组件 325

11.5.1 UI组件 328

11.5.2 UIViewRoot 330

11.5.3 ValueHolder 333

11.5.4 EditableValueHolder 334

11.5.5 SelectItem和SelectItemGroup模型bean 335

11.6 小结 337

第12章 应用程序设计和基本类 338

12.1 饼的层次 338

12.2 烘烤豆子 340

12.2.1 toString方法的重要性 341

12.2.2 序列化 342

12.2.3 一切尽在属性中 342

12.2.4 暴露bean 350

12.3 分析业务层和数据层 351

12.4 开发应用层 353

12.4.1 处理常数 354

12.4.2 组织工具方法 356

12.4.3 初始化singleton 358

12.4.4 适配业务对象 360

12.5 编写一个管理会话状态的Visit对象 365

12.6 开发一个后台bean基类 368

12.7 小结 371

第13章 后台bean、安全和国际化 372

13.1 编写后台bean 372

13.1.1 线程安全 373

13.1.2 处理错误 373

13.1.3 执行认证 376

13.1.4 使用UIData和参数化监听器列出项目 381

13.1.5 修改项目 391

13.1.6 创建新项目 395

13.1.7 使用UIData对项目历史分页 400

13.1.8 使用JDBC ResultSets和UIData 406

13.2 加入安全机制 410

13.2.1 基于容器的安全和定制的安全 410

13.2.2 使用定制安全 411

13.3 在代码中支持国际化 415

13.3.1 使用资源束国际化文本 415

13.3.2 国际化消息 419

13.4 设计推论和替代选择 423

13.4.1 访问业务层 423

13.4.2 按功能组织bean 424

13.4.3 用后台bean实现的动作方法 425

13.4.4 通过受管bean创建工具初始化bean属性 426

13.5 小结 426

第14章 集成JSF与Struts及现有应用 428

14.1 集成意味着什么 428

14.2 何时需要与其他框架一起使用JSF 429

14.3 请求和响应的多面性 429

14.4 集成JSF与Struts应用 431

14.4.1 第一步 433

14.4.2 迁移Struts JSP标签 434

14.4.3 使用JSF动作方法和受管bean 451

14.4.4 谁控制谁 452

14.5 集成JSF和非Struts应用 453

14.6 小结 454

第四部分 编写定制组件、呈现器、验证器和转换器第15章 JSF环境:组件开发者的视角 456

15.1 三步骤至UI扩展架构之天堂 456

15.2 开发UI组件 457

15.2.1 决定何时编写UI组件 458

15.2.2 类和接口 459

15.2.3 通过方法绑定进行事件处理 469

15.2.4 注册 470

15.2.5 JSP集成 472

15.3 开发呈现器 479

15.3.1 决定何时需要编写呈现器 482

15.3.2 Renderer类 483

15.3.3 RenderKit类 484

15.3.4 注册 485

15.3.5 JSP集成 488

15.4 开发验证器 488

15.4.1 Validator接口 489

15.4.2 注册 490

15.4.3 JSP集成 492

15.5 开发转换器 493

15.5.1 Converter接口 494

15.5.2 注册 495

15.5.3 JSP集成 497

15.6 处理国际化 498

15.7 封包UI扩展 498

15.8 小结 499

附录A 在非JSP环境中使用JSF 501

A.1 JSF如何处理显示技术 501

A.2 使用基于类的页面创建视图 502

A.3 通过XUL创建视图 504

A.4 其他选择 506

参考文献 507

第16章 UIInputDate:一个简单的输入组件 512

16.1 编写UIInputDate类 513

16.1.1 编码 514

16.1.2 解码 520

16.1.3 实现StateHolder方法 521

16.2 注册组件 522

16.3 JSP集成 522

16.3.1 编写JSP定制标签 522

16.3.2 验证标签 524

16.3.3 将标签添加到标签库 525

16.4 使用组件 527

16.5 小结 528

第17章 RolloverButton呈现器:JavaScript支持的呈现器 530

17.1 编写RolloverButtonRender类 532

17.1.1 编码 533

17.1.2 解码 536

17.1.3 注册呈现器 537

17.2 JSP集成 537

17.2.1 编写HtmlBaseTag类 538

17.2.2 编写JSP定制标签 540

17.2.3 验证标签 543

17.2.4 将标签添加到标签库中 544

17.3 使用呈现器 546

17.4 包装现有的呈现器 548

17.5 小结 552

第18章 UIHeadlineViewer:一个复合的数据感知组件 553

18.1 RSS和Informa API 555

18.2 在Informa中使用UIData 558

18.3 子类化DataModel 559

18.4 编写UIHeadlineViewer类 562

18.5 注册组件 573

18.6 JSP集成 574

18.6.1 编写JSP定制标签 574

18.6.2 将标签添加到标签库 580

18.7 使用组件 581

18.8 小结 585

第19章 UINavigator:模型驱动的工具条组件 586

19.1 编写模型类 588

19.2 编写UINavigator类 591

19.2.1 实现ActionSource方法 593

19.2.2 覆盖UIComponentBase方法 595

19.2.3 实现StateHolder方法 597

19.2.4 开发NavigatorActionListener:一个定制ActionListener 598

19.3 注册组件 599

19.4 编写ToolbarRenderer类 599

19.4.1 编码 600

19.4.2 解码 607

19.5 注册呈现器 608

19.6 JSP集成 608

19.6.1 编写NavigatorToolbarTag组件标签 609

19.6.2 编写NavigatorItemTag标签处理器 612

19.6.3 将标签添加到标签库 616

19.7 使用组件 619

19.8 小结 622

第20章 验证器和转换器:示例 624

20.1 验证器方法和验证器类 624

20.2 开发验证器 624

20.2.1 编写RegularExpression-Validator类 626

20.2.2 注册验证器 630

20.2.3 与JSP集成 631

20.2.4 使用验证器 634

20.3 何时定制转换器是必要的 636

20.4 开发转换器 636

20.4.1 编写UserConverter类 638

20.4.2 注册转换器 646

20.4.3 JSP集成 647

20.4.4 使用转换器 651

20.5 小结 652

附录B JSF IDE和实现概览 653

B.1 使用JSF with Oracle JDeveloper 653

B.1.1 Oracle对JSF的看法 654

B.1.2 何为ADF Faces组件 654

B.1.3 JDeveloper探究 656

B.1.4 构建ProjectTrack的登录页面 657

B.2 在WebSphere Studio中使用JSF 668

B.2.1 探究WebSphere Studio 668

B.1.5 夸奖一番 668

B.2.2 构建ProjectTrack的Login页面 670

B.2.3 夸奖一番 681

B.3 JSF和Java Studio Creator 682

B.3.1 使用Java Studio Creator 682

B.3.2 构建ProjectTrack的Login页面 684

B.3.3 夸奖一番 692

B.4 JSF实现 693

附录C 扩展核心JSF类 694

C.1 隐藏于幕后的类 694

C.2 替换或者扩展可插入类 698

C.2.1 配置可插入类 698

C.2.2 装饰可插入类 699

C.2.3 替换可插入类 703

附录D JSF配置 712

D.1 公共属性 713

D.2 公共元素 713

D.2.1 〈icon〉 713

D.2.2 〈property〉 714

D.2.3 〈attribute〉 714

D.2.4 〈facet〉 715

D.3 日常配置和可插入类 715

D.3.1 〈application〉 715

D.3.2 〈managed-bean〉 716

D.3.3 〈referenced-bean〉 718

D.3.4 〈navigation-rule〉 718

D.4 用户界面扩展 719

D.4.1 〈component〉 720

D.4.2 〈render-kit〉 720

D.4.3 〈validator〉 721

D.4.4 〈converter〉 722

D.5 高级特征 722

D.5.1 〈lifecycle〉 722

D.5.2 〈factory〉 722

附录E 时区、国家(地区)、语言和货币代码 724

E.1 时区代码 724

E.2 语言代码 733

E.3 国家(地区)代码 736

E.4 货币代码 741