Book description
The Definitive Guide to JavaServer Faces 2.0
Fully revised and updated for all of the changes in JavaServer Faces (JSF) 2.0, this comprehensive volume covers every aspect of the official standard Web development architecture for JavaEE. Inside this authoritative resource, the co-spec lead for JSF at Sun Microsystems shows you how to create dynamic, cross-browser Web applications that deliver a world-class user experience while preserving a high level of code quality and maintainability.
JavaServer Faces 2.0: The Complete Reference features an integrated sample application to use as a model for your own JSF applications, with code available online. The book explains all JSF features, including the request processing lifecycle, managed beans, page navigation, component development, Ajax, validation, internationalization, and security. Expert Group Insights throughout the book offer insider information on the design of JSF.
- Set up a development environment and build a JSF application
- Understand the JSF request processing lifecycle
- Use the Facelets View Declaration Language, managed beans, and the JSF expression language (EL)
- Define page flow with the JSF Navigation Model, including the new "Implicit Navigation" feature
- Work with the user interface component model and the JSF event model, including support for bookmarkable pages and the POST, REDIRECT, GET pattern
- Use the new JSR-303 Bean Validation standard for model data validation
- Build Ajax-enabled custom UI components
Extend JSF with custom non-UI components - Manage security, accessibility, internationalization, and localization
- Learn how to work with JSF and Portlets from the JSF Team Leader at Liferay, the leading Java Portal vendor
Ed Burns is a senior staff engineer at Sun Microsystems and is the co-specification lead for JavaServer Faces. He is the co-author of JavaServer Faces: The Complete Reference and author of Secrets of the Rock Star Programmers.
Chris Schalk is a developer advocate and works to promote Google's APIs and technologies. He is currently engaging the international Web development community with the new Google App Engine and OpenSocial APIs.
Neil Griffin is committer and JSF Team Lead for Liferay Portal and the co-founder of The PortletFaces Project.
Ready-to-use code at www.mhprofessonal.com/computingdownload
Table of contents
- Cover Page
- JavaServer Faces 2.0
- Copyright Page
- Dedication
- Contents
-
Part I The JavaServer Faces Framework
- 1 Introduction to JavaServer Faces
- 2 Building a Simple JavaServer Faces Application
- 3 The JavaServer Faces Request Processing Lifecycle
- 4 The Facelets View Declaration Language
- 5 Managed Beans and the JSF Expression Language
- 6 The Navigation Model
- 7 The User Interface Component Model
- 8 Converting and Validating Data
- 9 The JSF Event Model
-
Part II Extending JavaServer Faces
-
10 Applying JSF: Introducing the Virtual Trainer Application
- A Quick Tour of the Virtual Trainer Application
- The Virtual Trainer Application Requirements
- The Virtual Trainer Application Architecture
- Facelet Pages
- Backing Beans
- Persistence and Transaction Architecture
- Navigation Concerns
- Creating a Simple Authentication System
- Revisiting JSFReg: Building the Registration System
- Building the Core Pages of the Virtual Trainer Application
- The UserRegistry and EventRegistry
- Accessing and Initializing the EventRegistry Instance
- Reading and Writing Event Instances
- JPA and the Entity Classes in Virtual Trainer
- Internationalizing the Virtual Trainer Application
- Final Comments on Virtual Trainer
-
11 Building Custom UI Components
- Deciding When to Build a Custom UI Component
- What Are UI Components?
- A Simple JSF UI Component
- The Code Behind the Markup of This Simple JSF UI Component
- Adding Behavior to a Composite Component
- The Parts of a UI Component
- A Noncomposite JSF Custom UIComponent
- State Management with Custom Components
- Extracting Rendering Code into a Renderer
- Advanced Composite Component Development
- Packaging JSF Components into a Self-Contained Jar
- Packaging a Composite Component into a Jar
- Packaging a Noncomposite Component into a Jar
- 12 JSF and Ajax
- 13 Building Non-UI Custom Components
- 14 Securing JavaServer Faces Applications
-
10 Applying JSF: Introducing the Virtual Trainer Application
-
Part III JavaServer Faces Tools and Libraries
-
15 Configuring JavaServer Faces Applications
- Understanding XML Schemas
- Understanding How Configuration Files Are Processed
- Ordering of faces-config.xml Files
- How the JSF Runtime Scans Classes for Configuration Annotations
-
The Faces Configuration Elements
- The absolute-ordering Element
- The action-listener Element
- The after Element
- The application Element
- The application-factory Element
- The attribute Element
- The attribute-class Element
- The attribute-name Element
- The base-name Element
- The before Element
- The behavior Element
- The behavior-class Element
- The behavior-id Element
- The client-behavior-renderer Element
- The client-behavior-renderer-class Element
- The client-behavior-renderer-type Element
- The component Element
- The component-class Element
- The component-family Element
- The component-type Element
- The converter Element
- The converter-class Element
- The converter-for-class Element
- The converter-id Element
- The default-locale Element
- The default-render-kit-id Element
- The default-validators Element
- The default-value Element
- The el-resolver Element
- The exception-handler-factory Element
- The external-context-factory Element
- The faces-config Element
- The faces-context-factory Element
- The facet Element
- The facet-name Element
- The factory Element
- The from-action Element
- The from-outcome Element
- The from-view-id Element
- The if Element
- The key Element
- The key-class Element
- The lifecycle Element
- The lifecycle-factory Element
- The list-entries Element
- The locale-config Element
- The managed-bean Element
- The managed-bean-class Element
- The managed-bean-name Element
- The managed-bean-scope Element
- The managed-property Element
- The map-entries Element
- The map-entry Element
- The message-bundle Element
- The name Element
- The navigation-case Element
- The navigation-handler Element
- The navigation-rule Element
- The null-value Element
- The ordering Element
- The others Element
- The partial-view-context-factory Element
- The phase-listener Element
- The property Element
- The property-class Element
- The property-name Element
- The property-resolver Element
- The redirect Element
- The referenced-bean Element
- The referenced-bean-class Element
- The referenced-bean-name Element
- The render-kit Element
- The render-kit-class Element
- The render-kit-factory Element
- The render-kit-id Element
- The renderer Element
- The renderer-class Element
- The renderer-type Element
- The resource-bundle Element
- The resource-handler Element
- The source-class Element
- The state-manager Element
- The suggested-value Element
- The supported-locale Element
- The system-event-class Element
- The system-event-listener Element
- The system-event-listener-class Element
- The tag-handler-delegate-factory Element
- The to-view-id Element
- The validator Element
- The validator-class Element
- The validator-id Element
- The value Element
- The value-class Element
- The var Element
- The variable-resolver Element
- The view-declaration-language-factory Element
- The view-handler Element
- The view-param Element
- The visit-context-factory Element
- Extension Elements
-
16 The Standard JSF Component Library
- A Brief Review of JSF, Facelets, and JSP Tag Nomenclature
-
Acquiring and Installing the Standard Libraries
- What You Get (Binary)
- What You Get (Source)
- The Tag Library Reference
- The Standard Core Library
- The f:actionListener Tag
- The f:ajax Tag (2.0)
- The f:attribute Tag
- The f:convertDateTime Tag
- The f:convertNumber Tag
- The f:converter Tag
- The f:event Tag (2.0)
- The f:facet Tag
- The f:loadBundle Tag
- The f:metadata Tag (2.0)
- The f:param Tag
- The f:phaseListener Tag (1.2, 2.0)
- The f:selectItem Tag
- The f:selectItems Tag
- The f:setPropertyActionListener Tag (1.2, 2.0 Only)
- The f:subview Tag
- The f:validateBean Tag (2.0)
- The f:validateDoubleRange Tag
- The f:validateLength Tag
- The f:validateLongRange Tag
- The f:validateRegex Tag (2.0)
- The f:validateRequired Tag (2.0)
- The f:validator Tag
- The f:valueChangeListener Tag
- The f:verbatim Tag
- The f:view Tag
- The f:viewParam Tag (2.0)
-
The Standard HTML Library
- The h:body Tag (2.0)
- The h:button Tag (2.0)
- The h:column Tag
- The h:commandButton Tag
- The h:commandLink Tag
- The h:dataTable Tag
- The h:form Tag
- The h:graphicImage Tag
- The h:head Tag (2.0)
- The h:inputHidden Tag
- The h:inputSecret Tag
- The h:inputText Tag
- The h:inputTextarea Tag
- The h:link Tag (2.0)
- The h:message Tag
- The messages Component
- The h:outputFormat Tag
- The h:outputLabel Tag
- The h:outputLink Tag
- The h:outputScript Tag (2.0)
- The h:outputStylesheet Tag (2.0)
- The h:outputText Tag
- The h:panelGrid Tag
- The h:panelGroup Tag
- The h:selectBooleanCheckbox Tag
- The h:selectManyCheckbox Tag
- The h:selectManyListbox Tag
- The h:selectManyMenu Tag
- The h:selectOneListbox Tag
- The h:selectOneMenu Tag
- The h:selectOneRadio Tag
- The Standard Facelets Templating Library (2.0)
-
The Standard Facelets Composite Component Library (2.0)
- Example Project
- The cc:actionSource Tag (2.0)
- The cc:attribute Tag (2.0)
- The cc:editableValueHolder Tag (2.0)
- The cc:extension Tag (2.0)
- The cc:facet Tag (2.0)
- The cc:implementation Tag (2.0)
- The cc:insertChildren Tag (2.0)
- The cc:insertFacet Tag (2.0)
- The cc:interface Tag (2.0)
- The cc:renderFacet Tag (2.0)
- The cc:valueHolder Tag (2.0)
-
15 Configuring JavaServer Faces Applications
-
A JSF Portlets
- Overview of Portlet 1.0 and 2.0
- JSF Portlet Development
-
ICEfaces Portlet Development
- ICEfaces Ajax with Partial Submit
- ICEfaces Direct-to-DOM RenderKit
- The ice:portlet Tag
- ICEfaces 1.x Portlet Bridge
- ICEfaces 1.x D2DFaceletViewHandler
- ICEfaces 1.x and Portlet Window States
- ICEfaces Portlets and Concurrent DOM Views
- ICEfaces 1.x Extended Request Scope
- ICEfaces Ajax Push and Inter-Portlet Communication
- ICEfaces Themes and Portal Themes
- ICEfaces Themes and Liferay Themes
- ICEfaces Ajax Bridge and Liferay Portal
- ICEfaces Portlets and Liferay Request Attributes
- PortletFaces
- Index
- Footnote
Product information
- Title: JavaServer Faces 2.0, The Complete Reference
- Author(s):
- Release date: November 2009
- Publisher(s): McGraw-Hill
- ISBN: 9780071625104
You might also like
book
JavaServer Faces
JavaServer Faces, or JSF, brings a component-based model to web application development that's similar to the …
book
Meilensteine der Rechentechnik
• Numerous recent discoveries of rare historical analog and digital calculators and previously unknown texts, drawings, …
book
Die UNIX-Story
Computerpionier Brian W. Kernighan war in der Entwicklung von UNIX beteiligt. In diesem lebendig illustrierten Buch …
book
JavaServer Pages, 3rd Edition
JavaServer Pages (JSP) has built a huge following since the release of JSP 1.0 in 1999, …