Language: English
Pages: 644
Preface......Page 1
Why JavaServer Faces......Page 9
Software Installation......Page 10
A Simple Example......Page 12
Sample Application Analysis......Page 18
Visual Development Environments......Page 27
JSF Framework Services......Page 29
Behind the Scenes......Page 31
Automation of the Build Process with Ant......Page 36
Definition of a Bean......Page 43
Message Bundles......Page 47
A Sample Application......Page 50
Backing Beans......Page 56
Bean Scopes......Page 57
Configuring Beans......Page 59
The Syntax of Value Binding Expressions......Page 66
Static Navigation......Page 73
Dynamic Navigation......Page 75
Advanced Navigation Issues......Page 86
4 STANDARD JSF TAGS......Page 91
An Overview of the JSF Core Tags......Page 92
An Overview of the JSF HTML Tags......Page 93
Forms......Page 102
Text Fields and Text Areas......Page 106
Buttons and Links......Page 117
Selection Tags......Page 128
Messages......Page 155
Panels......Page 160
The Data Table Tag......Page 167
A Simple Table......Page 168
h: dataTable Attributes......Page 172
Headers and Footers......Page 173
JSF Components in Table Cells......Page 175
Editing Table Cells......Page 179
Styles for Rows and Columns......Page 183
Database Tables......Page 185
Table Models......Page 191
Scrolling Techniques......Page 207
Overview of the Conversion and Validation Process......Page 211
Using Standard Converters......Page 213
Using Standard Validators......Page 223
Programming with Custom Converters and Validators......Page 229
Implementing Custom Tags......Page 254
7 EVENT HANDLING......Page 279
Life- Cycle Events......Page 280
Value Change Events......Page 281
Action Events......Page 287
Event Listener Tags......Page 296
Immediate Components......Page 298
Phase Events......Page 302
Putting It All Together......Page 310
Common Layouts......Page 321
A Book Viewer and a Library......Page 322
The Book Viewer......Page 324
Content Inclusion in the Book Viewer......Page 333
The Library......Page 344
9 CUSTOM COMPONENTS......Page 357
Implementing Custom Components with Classes......Page 358
Encoding: Generating Markup......Page 364
Decoding: Processing Request Values......Page 368
Implementing Custom Component Tags......Page 373
Revisiting the Spinner......Page 384
Encoding JavaScript to Avoid Server Roundtrips......Page 402
Using Child Components and Facets......Page 407
Accessing a Database......Page 437
Using LDAP for Authentication......Page 453
Managing Configuration Information......Page 464
Using Web Services......Page 498
Rendering Technologies for Mobile Clients......Page 511
MIDP Basics......Page 513
Mobile Communication and Control Flow......Page 521
Component Implementation for Mobile Clients......Page 523
The Battleship Game......Page 534
Web User Interface Design......Page 567
Validation......Page 606
Programming......Page 623
Debugging and Logging......Page 636