第1章 JSF簡介 1
1.1 選用JSF的原因 1
1.2 一個簡單例子 2
1.2.1 組成部分 4
1.2.2 目錄結構 5
1.2.3 構建JSF應用程序 6
1.2.4 部署JSF應用程序 7
1.3 JSF開發環境 9
1.4 分析示例應用程序 11
1.4.1 bean 12
1.4.2 JSF頁麵 13
1.4.3 servlet配置 14
1.5 簡單瞭解Ajax JSF 2.0 17
1.6 JSF框架服務 19
1.7 技術內幕 21
1.7.1 呈現頁麵 21
1.7.2 請求解碼 22
1.7.3 生命周期 23
1.8 小結 25
第2章 受管bean 27
2.1 bean的定義 27
2.1.1 bean屬性 29
2.1.2 值錶達式 31
2.1.3 backing bean 31
2.2 CDI bean CDI 32
2.3 消息包 33
2.3.1 具有可變部分的消息 35
2.3.2 應用程序的區域設置 36
2.4 示例應用程序 37
2.5 bean作用域 42
2.5.1 會話作用域 43
2.5.2 請求作用域 44
2.5.3 應用程序作用域 45
2.5.4 對話作用域 CDI 45
2.5.5 視圖作用域 JSF 2.0 46
2.5.6 自定義作用域 JSF 2.0 46
2.6 配置bean 46
2.6.1 注入CDI bean CDI 46
2.6.2 注入受管bean JSF 2.0 47
2.6.3 bean生命周期批注 48
2.6.4 使用XML配置受管bean 48
2.7 錶達式語言語法 52
2.7.1 左值和右值模式 53
2.7.2 使用方括號 53
2.7.3 映射和列錶錶達式 54
2.7.4 調用方法和函數 JSF 2.0 55
2.7.5 解析初項 55
2.7.6 復閤錶達式 57
2.7.7 方法錶達式 57
2.7.8 方法錶達式參數 JSF 2.0 58
2.8 小結 59
第3章 導航 61
3.1 靜態導航 61
3.2 動態導航 62
3.2.1 將結果映射到視圖ID 63
3.2.2 JavaQuiz應用程序 64
3.3 重定嚮 73
3.4 REST式導航和書簽
URL JSF 2.0 75
3.4.1 視圖參數 75
3.4.2 獲取請求鏈接 76
3.4.3 指定請求參數 76
3.4.4 將書簽鏈接添加到Quiz
應用程序中 78
3.5 高級導航規則 81
3.5.1 通配符 82
3.5.2 使用from-action 83
3.5.3 條件導航情形 JSF 2.0 84
3.5.4 動態目標視圖ID JSF 2.0 84
3.6 小結 84
第4章 標準JSF標簽 85
4.1 JSF核心標簽概述 86
4.2 JSF HTML標簽概述 88
4.3 麵闆 96
4.4 標題、正文和錶單標簽 98
4.5 文本字段和文本區域 103
4.5.1 隱藏字段 106
4.5.2 使用文本字段和文本
區域 106
4.5.3 顯示文本和圖像 108
4.6 按鈕和鏈接 111
4.6.1 使用按鈕 113
4.6.2 使用命令鏈接 117
4.7 選擇標簽 120
4.7.1 復選框和單選按鈕 123
4.7.2 菜單和列錶框 125
4.7.3 項目 127
4.8 消息 143
4.9 小結 148
第5章 Facelets JSF 2.0 149
5.1 Facelets標簽 149
5.2 Facelets模闆 150
5.2.1 使用公共模闆生成頁麵 152
5.2.2 組織視圖 155
5.2.3 裝飾器 160
5.2.4 參數 162
5.3 自定義標簽 162
5.4 其他標簽 165
5.4.1 <ui:debug> 165
5.4.2 <ui:remove> 167
5.4.3 處理空白 168
5.5 小結 168
第6章 數據錶 169
6.1 數據錶標簽——h:dataTable 169
6.2 一個簡單的錶 170
6.2.1 h:dataTable特性 173
6.2.2 h:column特性 174
6.3 列頭、列尾和標題 174
6.4 樣式 177
6.4.1 列樣式 178
6.4.2 行樣式 179
6.5 錶中的JSF組件 181
6.6 編輯錶格 183
6.6.1 編輯錶格單元格 184
6.6.2 刪除行 JSF 2.0 186
6.7 數據庫錶 189
6.8 錶模型 193
6.8.1 呈現行號 193
6.8.2 查找所選行 194
6.8.3 排序和過濾 195
6.9 滾動技術 202
6.9.1 用滾動條滾動 202
6.9.2 用分頁器小組件滾動 203
6.10 小結 203
第7章 轉換和驗證 205
7.1 轉換和驗證過程概述 205
7.2 使用標準轉換器 206
7.2.1 數字和日期的轉換 206
7.2.2 轉換錯誤 210
7.2.3 一個完整的轉換器例子 215
7.3 使用標準驗證器 218
7.3.1 驗證字符串長度和值
範圍 218
7.3.2 檢查必需值 219
7.3.3 顯示驗證錯誤 220
7.3.4 跳過驗證 222
7.3.5 一個完整的驗證例子 222
7.4 bean驗證 JSF 2.0 225
7.5 使用自定義轉換器和驗證器
編程 230
7.5.1 實現自定義轉換器類 230
7.5.2 指定轉換器 JSF 2.0 233
7.5.3 報告轉換錯誤 234
7.5.4 從資源包中獲取
錯誤消息 235
7.5.5 自定義轉換器示例程序 239
7.5.6 為轉換器提供特性 242
7.5.7 實現自定義驗證器類 243
7.5.8 注冊自定義驗證器 243
7.5.9 使用bean方法驗證 247
7.5.10 驗證多個組件之間的
關係 247
7.6 實現自定義轉換器和驗證器
標簽 249
7.7 小結 255
第8章 事件處理 257
8.1 事件和JSF生命周期 258
8.2 值更改事件 259
8.3 動作事件 263
8.4 事件監聽器標簽 269
8.5 直接組件 270
8.5.1 使用直接輸入組件 271
8.5.2 使用直接命令組件 272
8.6 從UI嚮服務器傳遞數據 273
8.6.1 方法錶達式參數 JSF 2.0 274
8.6.2 f:param標簽 275
8.6.3 f:attribute標簽 275
8.6.4 f:setPropertyActionListener
標簽 276
8.7 階段事件 277
8.8 係統事件 JSF 2.0 278
8.8.1 多組件驗證 280
8.8.2 在呈現視圖之前做齣
決定 281
8.9 閤為一體 285
8.10 小結 291
第9章 復閤組件 293
9.1 復閤標簽庫 294
9.2 使用復閤組件 295
9.3 實現復閤組件 297
9.4 配置復閤組件 298
9.5 特性類型 299
9.6 必需的特性和默認特性值 299
9.7 處理服務器端數據 301
9.8 復閤組件的本地化 303
9.9 公開復閤組件 304
9.10 facet 308
9.11 子組件 309
9.12 JavaScript 310
9.13 支持組件 315
9.14 在JAR中打包復閤組件 323
9.15 小結 323
第10章 Ajax JSF 2.0 325
10.1 Ajax和JSF 326
10.2 JSF生命周期和Ajax 327
10.3 JSF Ajax方法 328
10.4 f:ajax標簽 329
10.5 Ajax組 331
10.6 Ajax字段驗證 333
10.7 Ajax請求監視 334
10.8 JavaScript名稱空間 336
10.9 處理Ajax錯誤 338
10.10 Ajax響應 338
10.11 JSF 2.0 JavaScript庫 341
10.12 傳遞額外的Ajax請求
參數 342
10.13 事件隊列 344
10.14 閤並事件 344
10.15 截獲jsf.ajax.request() 345
10.16 在復閤組件中使用Ajax 346
10.17 小結 351
第11章 自定義組件 353
11.1 實現組件類 354
11.2 編碼:生成標記 357
11.3 解碼:處理請求值 359
11.4 標簽庫描述符 JSF 2.0 365
11.5 使用外部呈現器 368
11.6 處理標簽特性 JSF 2.0 371
11.6.1 支持值更改監聽器 372
11.6.2 支持方法錶達式 373
11.6.3 事件隊列 374
11.6.4 示例應用程序 375
11.7 JavaScript編碼 382
11.8 使用子組件和facet 385
11.8.1 處理SelectItem子組件 388
11.8.2 處理facet 389
11.8.3 使用隱藏字段 390
11.9 保存和還原狀態 396
11.10 構建Ajax組件 JSF 2.0 400
11.11 在自定義組件中實現獨立的
Ajax 401
11.12 小結 410
第12章 外部服務 411
12.1 使用JDBC訪問數據庫 411
12.1.1 發齣SQL語句 411
12.1.2 連接管理 413
12.1.3 消除連接泄漏問題 413
12.1.4 使用預定義語句 415
12.1.5 事務 416
12.1.6 使用Derby數據庫 417
12.2 配置數據源 418
12.2.1 訪問容器管理的資源 418
12.2.2 在GlassFish中配置
數據庫資源 419
12.2.3 在Tomcat中配置數據庫
資源 421
12.2.4 一個完整的數據庫
例子 422
12.3 使用Java持久性架構 429
12.3.1 JPA簡介 429
12.3.2 在Web應用程序中使用
JPA 430
12.3.3 使用受管bean和無狀態
會話bean 434
12.3.4 有狀態會話bean CDI 437
12.4 容器管理的身份驗證和
授權 440
12.5 發送郵件 450
12.6 使用Web服務 456
12.7 小結 462
第13章 問答 463
13.1 如何找到更多組件 463
13.2 如何支持文件上傳 464
13.3 如何顯示圖像映射 471
13.4 如何在JSF頁麵中生成
二進製數據 473
13.5 如何以一次一個頁麵的方式
顯示大型數據集 482
13.6 如何生成一個彈齣窗口 487
13.7 如何酌情顯示和隱藏頁麵
部分 494
13.8 如何自定義錯誤頁麵 495
13.9 如何編寫自己的客戶端驗證
標簽 500
13.10 如何配置應用程序 506
13.11 如何擴展JSF錶達式
語言 507
13.12 如何在JSF錶達式語言中
添加函數 JSF 2.0 510
13.13 如何監視瀏覽器和服務器
之間的流量 511
13.14 如何調試問題頁麵 513
13.15 當開發JSF應用程序時
如何使用測試工具 514
13.16 如何結閤使用JSF和
Scala 515
13.17 如何結閤使用JSF和
Groovy 516
13.18 小結 517
· · · · · · (
收起)