Consulting Training Blog Careers About Us Contact Us

Complete JSF using RAD Training

Course ID: WAS1699
Duration: 5 Days

Upcoming Classes

Sorry, nothing scheduled right now. Click the Get Notified button below to be alerted when a class is scheduled.

Get Notified

On Site/Private

Can't find a class that fits right for you? Contact us to inquire about scheduling your own private class

Contact Us


This training course introduces the developer to the JSF architecture and provides the basis for planning, developing, and deploying Web based applications using the JSF framework. After taking this class, the developer will be able to quickly construct dynamic server-side web pages using JSF.


Bring This Course To You

For groups of 5 or more, let Intertech bring this course to your location. Customized versions tailored towards your objectives are also available.

Learn More

Learning Objectives

  • Become familiar with the JSF tags for the commonly used HTML components in a form.
  • Learn how to write event handler methods in a managed bean.
  • Learn how to register the event handler method with a GUI component.
  • Write navigation rule in faces-config.xml.
  • Control the sequence of page display based on certain business logic.
  • Add very basic validation to the intro.jsp page
  • Display objects in an ArrayList in a data table. 


Participants should already have a solid understanding of Java programming and understand the basics of XML. The course also assumes a basic understanding of HTML syntax and JavaServer Pages syntax. Understanding of Enterprise Java Beans (EJB) is also a plus.

Course Outline

Java Enterprise Edition (EE) Overview

  • Objectives
  • Introduction to Java Platform
  • Java Community Process (JCP)
  • Introduction to Java EE
  • Why Move to Java EE
  • Java EE - New and Enhanced Features
  • Java EE Software Packaging
  • Java EE Technologies

Introduction to Rational Application Developer (RAD) v7.5

  • The RAD 7.5 Product
  • Eclipse Platform
  • Rational Web Developer
  • Rational Application Developer
  • Key Features in RAD v7.5
  • Views, Perspective, and Editor Areas
  • Basic Operations with RAD Views and Perspectives
  • The Java Perspective
  • The Debug Perspective
  • Navigator View
  • Package Explorer
  • Outline View
  • Task and Problems View
  • Build and Validation
  • Import and Export Project
  • Code Completion, Templates and Snippets
  • Searching
  • Setup Compiler Class Path
  • JRE Switching
  • Refactoring
  • Changing Class Name
  • Changing Method Name
  • Changing Variable Name
  • Moving a Class to a Different Package
  • Extracting Code to a Method
  • Pull Up and Push Down Methods
  • Migrating Workspace from RAD v6 or WSAD v5.1.2
  • Project Interchange Feature

Introduction to JavaServer Faces

  • What is JavaServer Faces (JSF)?
  • Why Use JSF?
  • Nature of a JSF Application
  • The Sun Reference Implementation (RI)
  • JSF and MVC
  • Faces Servlet
  • Managed Bean
  • The View
  • A Simple JSF Application
  • The Input Form: form.jsp
  • The Result: thanks.jsp
  • The Controller: AddressBean
  • Page Flow or Navigation Rule
  • How Does the Application Work?
  • Under the Covers: The Rendered Form HTML
  • Under the Covers: The Layout Tree

Managed Bean

  • What is a Managed Bean?
  • Why Do You Need Managed Beans?
  • Managed Bean As a Controller
  • Registering a Managed Bean
  • Lifecycle of a Managed Bean
  • Initializing a Managed Bean
  • What Scope to Use?
  • Value Binding
  • Property Data Conversion
  • Advanced Property Types
  • Component Binding
  • Other Binding Types
  • Basic Input Processing
  • Advanced Input Processing
  • JSF Expression Language
  • Language Basics
  • Use of Expression in JSF
  • Basic Expression
  • Property Access Expression
  • Map Access Expression
  • Complex Access Expression
  • Predefined Objects
  • Operators

User Interface Components

  • JSF UI Components
  • JSF Component Tag Libraries
  • Using the Tag Libraries
  • HTML Tag Library
  • Identifying Components
  • Component Identifier
  • Client Identifier
  • Form Input Field Names
  • Labels and Images
  • Create a Form
  • Buttons
  • Links
  • Adding Parameters to Links
  • Text Input
  • Simple Check Box
  • Check Box Group
  • Radio Button
  • List Boxes
  • Dynamic List Box
  • JSF Core Library
  • JSF Core Library - Components
  • JSF Component Model
  • Base Class Hierarchy
  • Useful Base Classes
  • Useful HTML Classes

JSF Event Handling

  • Request Processing Phases
  • Action Request Processing Phases
  • JSF Event & Listener Model
  • JSF Event Classes
  • Event Classes
  • Event Classes: Hierarchy
  • Action Event Handling
  • Action Listener
  • Value Change Event
  • Value Change Event Handler
  • Listener Classes
  • Listener Interfaces
  • Listener Classes: Hierarchy
  • Action Listener Class
  • Value Change Listener Class
  • Phase Event Listener
  • Request Processing Lifecycle
  • Phase Identifiers

JSF Navigation

  • Example Action Listener
  • faces-config.xml File
  • JSF Navigation
  • Navigation Rules
  • Choosing Between Redirect & Direct Rendering
  • Navigation: Scenarios


  • Standard Validators
  • f:validatelength
  • f:validatedoublerange
  • f:validatelongrange
  • Checking for Required Values
  • Showing Validation Error Messages
  • Customizing Standard Error Messages
  • Standard Validation Error Messages
  • Validation Process
  • Sequence Diagram
  • Bypassing Validation
  • Immediate Command Components
  • Immediate Input Component
  • Accessing User Input
  • Advanced Error Handling

Advanced GUI Components

  • HTML Panel
  • Applying Styles
  • Grouping Components
  • Data Table
  • Using a Data Table
  • Data Table Model
  • Displaying a Header and Footer Row
  • Applying Styles
  • Adding Links to a Row
  • Using Component Binding
  • Handling Action

JSF Techniques

  • A Typical Application
  • The Create Form
  • Create Action Method
  • Listing Items
  • Editing an Item
  • Adding the Edit Link
  • The Edit Form
  • Update Item
  • Things to Keep in Mind

Unified Expression Language

  • Value Expressions
  • Method Expressions
  • Chained Resolution
  • Operators [] and .
  • Arithmetic Operators
  • Relational Operators
  • Logical Operators
  • Test for Empty Collection
  • Conditional Operator
  • Order of Evaluation
  • Introduction to JSTL
  • Using JSTL with JSF
  • The c:out Tag
  • The c:if Tag
  • The c:choose Tag
  • The c:foreach Tag
  • International Text Display Tags

Custom Components

  • Requirements To Develop Custom Components
  • Classes Useful to Custom Component Developer
  • javax.faces.component.UIComponent
  • Decoding
  • UIComponentTag
  • Implementing Custom Component Tags
  • FacesContext
  • javax.faces.application.Application
  • javax.faces.context.ResponseWriter
  • javax.faces.component.EditableValueHolder
  • Tag Library: TLD
  • Faces Configuration File: faces-config.xml
  • External Renderer
  • Render Defined in faces-config File
  • Implementing the Renderer
  • Event Listeners
  • Using ActionListener in JSP
  • ActionListener in the Java Code
  • ActionListeners in JSF
  • Create Input Form
  • Input Form (Code)
  • Update faces-config.xml
  • ActionEvent Handling

Data Conversion Model

  • Different Viewpoints of Data
  • Process of Conversion
  • Why Local Values?
  • Types of Standard Converters
  • Standard Converters with JSF
  • Three Ways to Use Standard Converters
  • Bind UI Component to Backing Bean Property
  • Use converter Attribute on the UI Component
  • Use f:converter Tag with ConverterId Attribute
  • Usage of Standard Converters
  • Output of Using Standard Converters
  • Converter Attribute
  • Standard Converters to Display Output
  • Standard Converters: Screen Shot
  • Conversion Errors
  • Displaying Error Messages
  • Conversion Tag
  • Conversion Error: Display
  • Custom Converter
  • Registering the Converter
  • Using the Registered Converter

Introduction to Facelets

  • Constructing and Rendering a View (JSP way)
  • Facelets
  • Getting Facelets
  • Using Facelets
  • Page Templates
  • Define a Page Template
  • Define a Template Client

Custom Validators

  • Validation Review
  • Custom Validators
  • The Validator Interfaces
  • Creating a Custom Validator
  • Creating a JSP Custom Tag
  • The ValidatorELTag Class
  • Create the TLD File
  • Using the Custom Tag
  • Validation from Managed Bean
  • Add Validation Logic
  • Use the Managed Bean Validator

Internationalizatin (I18N)

  • Internationalization
  • I18N
  • Locales
  • Default Locales
  • Resource Bundles
  • Updating Faces-Config.xml
  • Updated faces-config.xml
  • Loading the Bundle
  • Display Localized Text
  • Update faces-config.xml
  • JSP
  • View the JSP
  • Benefits
  • Parameterized Messages
  • Displayiing Parameters
  • Parameterized Messages
  • Changing the Locale

MyFaces Tomahawk

  • What is Tomahawk?
  • Tomahawk Compatibility
  • Adding Tomahawk Support
  • Add Tomahawk Libraries
  • Update web.xml
  • Declare the Tomahawk Taglib
  • Tomahawk Features
  • JSCookMenu
  • Date Input
  • Data Scroller
  • File Upload
  • Tree2
  • Tabbed Panes

Free Resources from Intertech

Complete Guide to Becoming a Full Stack Developer

Free Book Chapter: Spring Web

Introduction to Groovy Whitepaper