
Java EE 6 Web Application Programming - WEBSPHERE 8 / RAD 8 |
|
Outline
1- OVERVIEW OF SERVLETS
- Java Servlet
- Java EE and Servlet
- Servlet Responsibilities
- The Servlet Container
- The Servlet Class
- The HttpServlet Class
- Servlet Configuration – web.xml
- Servlet Configuration – Annotations
- Life Cycle – Request Processing
- User Input
- Example – User Input
- Request
- Request Parameters
- Request Attributes
- Response
- Tracking User State
- Tracking Techniques
- Using HttpSession
- Session Invalidation
- Summary
2 -OVERVIEW OF JAVASERVER PAGES (JSP)
- JavaServer Pages
- A Simple Example - Hello.jsp
- JSP Benefits
- How JSP Works
- JSP Scripting Elements
- JSP Directive
- JSP Declarations
- Declarations – an Example
- JSP Expressions
- JSP Expressions – an Example
- JSP Scriptlets
- JSP Scriptlets – an Example
- JSP Comments
- JSP Predefined Variables
- The request Object
- The response Object
- The out Object
- Out – an Example
- MVC Implementation
- Request Dispatching - Forward Request to JSP
- Using Java Beans in JSP
- Summary
3 -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
- Facelets
- Facelets in JSF 2
- A Simple JSF Application
- The Input Form: form.xhtml
- The Result: thanks.xhtml
- 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
- Summary
4 - BASIC JSF 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
- Define a Form
- Labels and Images
- Buttons
- Links
- Adding Parameters to Links
- Text Input
- Simple Check Box
- Check Box Group
- Check Box Group Example
- Radio Button
- List Boxes
- Dynamic List Box
- Example
- Another Example
- JSF Core Library
- JSF Core Library - Components
- Summary
5 - MANAGED BEAN SCOPES IN JSF
- Managed Bean Scopes
- Implications of Various Scopes
- View Scoped Managed Beans
- Defining Managed Bean Scope
- Getting Rid of the Session
- Application Scope
- "None" Scope
- Custom Scopes
- Summary
6 -OVERVIEW OF CONTEXT AND DEPENDENCY INJECTION
- Once upon a time
- What is CDI?
- The JSRs
- CDI Example
- What Good is DI
- Old Bean Scope
- CDI Bean Scope
- Other Advanced Features of CDI
- CDI Implementation
- Summary
7 - DEFINGING CDI BEANS
- Requirements of Bean Classes
- Bean Initialization Methods
- beans.xml
- Managed Bean Type
- Using Beans with EL
- Beans Have Default Names
- Bean Scopes
- EJBs in CDI
- Summary
8 - JSF INTEGRATION, SCOPE AND CONTEXT
- CDI Beans in JSF
- JSF Example
- Introduction to Scopes
- Normal and Pseudo- scopes
- Declaring Scope of a Bean
- Scope Boundaries
- Instance Sharing
- Conversation Scope
- Use Cases of Conversation Scope
- Starting and Ending Conversations
- Propagating Conversations
- How Dependent Scope Works
- Forcing a Dependent Instance
- Summary
9 - ADVANCED MANAGED BEANS
- @ManagedProperty Annotation
- 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
- Summary
10 - 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 Event: Example
- 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
- Summary
11 - JSF NAVIGATION
- JSF Navigation
- Example Action Listener
- faces-config.xml File
- JSF Navigation
- Choosing Between Redirect & Direct Rendering
- Navigation Rules: Example
- Navigation: Scenarios
- Summary
12 -JSF GET REQUESTS AND VIEW PARAMETERS
- Using GET Requests with JSF
- POST-Redirect-GET (PRG) Pattern
- Implementing PRG Pattern With JSF
- Defining View Parameters
- New <h:link> and <h:button> Tags
- Passing Request Parameters
- Passing Request Parameters from POST Action Methods
- Causing Redirection
- Using a PreRenderView Event
- The Flash Object
- Summary
13 - OVERVIEW IF ENTERPRISE JAVABEANS (EJB)
- Need for EJBs
- Distributed Computing
- Distributed Transaction
- Distributed Security
- What are EJBs?
- Main Characteristics of EJBs
- EJB Client
- EJB Container
- Enterprise JavaBeans
- Session Beans
- Message-Driven Beans (MDBs)
- Stateless Session Bean
- Annotations
- Stateless Session Bean Components
- Example: Business Interface
- Example: Bean Class
- Business Interface Details
- Summary
14 - OVERVIEW IF JAVA PERSISTENCE API
- Data Persistence
- Java Persistence API
- Entities
- Session EJB vs JPA Entities
- Entities
- Persisting and Retrieving Data
- Accessing Entities
- EntityManager & Persistence Unit
- Persistence Context
- Entities - Example
- persistence.xml – Hibernate Provider
- persistence.xml – Open JPA Provider
- persistence.xml - Toplink
- Entity Instance Lifecycle
- Creating EntityManager in Session EJB
- Creating EntityManager in a Plain Java Class
- Working With the EntityManager Interface
- Transaction Basics
- Summary
15 - JSR 303 BEAN VALIDATION
- Validation in Applications
- Using Validation
- Built-in Validation Constraints
- Using Constraints
- Showing Error Messages in JSF
- Custom Validation Messages
- Externalizing Validation Messages
- External Message Example
- Defining Custom Constraints
- Custom Constraint Example
- Interface
- Validator
- Custom Constraint in JSF
- Bootstrapping Validation
- The Validator API
- Validation Groups
- Group Example
- Using Bean Validation in JPA 2.x and JSF 2.x
- Summary
16 - ADVANCED JSF USER INTERFACE COMPONENTS
- HTML Panel
- Applying Styles
- Grouping Components
- Data Table
- Using a Data Table
- Data Table Model
- Using a Data Table
- Displaying a Header and Footer Row
- Applying Styles
- Adding Links to a Row
- Using Component Binding
- Handling Action
- Using the Data Table Model
- Handling Action
- Summary
17- USING JSTL WITH JSF
- Introduction to JSTL
- Using JSTL with JSF
- The <c:out> Tag
- The <c:if> Tag
- The <c:choose> Tag
- The <c:forEach> Tag
- <c:forEach> or <h:dataTable>?
- Summary
18 - USING AJAX WITH JSF
- Integrated AJAX Support in JSF 2.0
- Challenges of AJAX with JSF
- AJAX Handling in JSF 2.0
- AJAX Handling in JSF 2.0 (cont'd)
- Request Lifecycle for AJAX Requests
- JSF JavaScript API
- New <f:ajax> Tag
- Partial Page Rendering
- Third Party JSF Libraries with AJAX
- Component Libraries Available
- Summary
19 - 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
- Summary
20 - FACELETS PAGES AND TEMPLATES
- Facelets
- Facelets in JSF 2
- Using Facelets
- Page Templates
- Define a Page Template
- Define a Template Client
- Run the Template Client
- Summary
21 -FACELETS COMPOSITE COMPONENTS
- Simplified Custom JSF Components
- Defining a Library of Composite Components
- Referencing the Library
- Defining a Composite Component
- Using a Composite Component
- Simple Text Inclusion
- Defining and Setting Component Attributes
- Value Attributes
- Other Composite Component Features
- Summary
|