Course Number: JAVA.052
Duration: 5 days (full-day sessions) OR Weekend/Evening sessions
Training Overview: This course teaches Java web developers how to use JavaServer Faces in their web applications. Attendees will learn the standard JSF tag libraries and write managed beans and event handlers. They will also write configuration files for managed beans and navigation in XML. Data table components are used to easily display data from databases and other sources in an HTML table. The course ends by covering the topics of validation and conversion, including customization of these phases.
Location and Pricing: Most of our courses are conducted online OR at our training facility and are customized to meet our students needs. We also provide customized onsite training at our clients' locations. Pricing for an online course depends on if its a weekend/evening course or a full day course. The weekend/evening courses are most cost-effective as they are spread over a period of weeks giving you ample time to complete the hands-on exercises. To receive a customized proposal that will fit your schedule and price quote, please contact us 
Training Prerequisites: All attendees should have a solid foundation in Java programming and prior hands-on experience developing JavaServer Pages. Beyond this, the class can be customized to any level of Java and JSP familiarity.
Training format: This class is 60% lecture, 40% hands-on, with one-on-one dedicated time-slots with the instructor.
Training Materials: All students receive a copy of related courseware / material.
Software Needed on Each Student PC:
- Any operating system that supports Java 1.5.0 or later
- Java SE SDK 1.5, 1.6, or later
- Java IDE of your choice (We will advise on specific versions of the software required based on your standard development and production environments.)
- Additional software - please contact us for a detailed setup sheet
Training Objectives:
- To understand the purpose and scope of the JSF architecture
- To build Web applications using JSF's FacesServlet, faces-config.xml, and the JSF request/response lifecycle.
- To use the JSF custom tag libraries to build JSF views as JSPs.
- To use managed beans to encapsulate not only server-side form handling but also client-side presentation logic.
- To implement control logic as JSF event listeners or action methods.
- To use validators and converters to implement a validation phase for a JSF application.
Training Outline:
- Overview
- Java EE and Web Applications
- Perspectives: Servlets and JSP
- The Model/View/Controller Pattern
- Perspectives: MVC Frameworks
- The Command Pattern
- Perspectives: AWT and JFC
- JSF Value Proposition
- JSF Configuration
- Lifecycle and Page Navigation
- The JSF Request/Response Cycle
- Lifecycle Phases
- The FacesContext Class
- Who Does What
- View Selection
- Navigation Rules
- Outcomes
- User Interface Components
- The Composite View Pattern
- The UIComponent Class
- Behavioral Interfaces
- The Core and HTML Tag Libraries
- Relationship to CSS
- ID, Client ID, and Label
- The UISelectItem(s) Class
- Navigating the UI Tree
- Managed Beans
- JavaBeans and JSF
- Backing Beans
- The Factory Pattern
- Managed Beans
- Coarse-Grained Beans
- The Unified Expression Language
- Value Expressions
- Dependency Injection
- Bean Scopes
- Events and Controllers
- The Observer Pattern
- JSF Event Model
- Event Types and Timing
- Event Queueing
- ActionEvent and ActionListener
- Action Methods
- Connecting Controllers to Beans
- Dynamic Outcomes
- ValueChangeEvent and ValueChangeListener
- Limitations of FacesListeners
- Converters
- The Adapter Pattern
- The Converter Interface
- Standard Converters
- Working with Enumerated Types
- Timing of Conversion
- Custom Converters
- Configuring Converters
- Validators
- Validating Input
- The Validator Interface
- Standard Validators
- Producing Error Messages
- Message Keys
- Presenting Error Messages
- Custom Validators
- Validating Multiple Inputs
- Using a PhaseListener
- Data Tables
- Managing Tabular Data
- The JSF Data Table
- Columns
- Facets
- Limitations and Strategies
- Nesting Tables
- Final Overview
|