Topics
 
  • Develop and test Servlets
  • Develop and test JavaServer Pages (JSPs)
  • Develop and test Java EE applications following the Model/View/Controller architecture
  • Integrate business logic using Java Beans and Java Database Connectivity (JDBC)
  • Apply best practices to Servlet and JSP development
 
What you will learn
 

After completing this course, the student should be able to:

  • Use Eclipse as a truly, integrated development environment
  • Build Servlets according to the current Servlet 3.0 specification
  • Build JSPs according to the current JSP 2.2 specification
  • Build custom JSP tag libraries
  • Integrate Servlets and JSPs into a complete Java EE application
  • Test Servlets and JSPs using Eclipse
 
Audience
 

Java programmers who build server-side web applications interested in leveraging Eclipse to streamline their development cycle.

 
Prerequisites
 

You should understand essential concepts of Object-Oriented Programming and be able to write simple Java programs with assistance.

Course WA1278 - Introduction to Java Using Eclipse satisfies this requirement:
 
Duration
 

4 days

Download Sample Labs Lab Setup Guide

Outline for Servlet and JSP Programming with Tomcat 7 Using Eclipse Training

Chapter 1. Overview of Java EE 6

  • Java Platforms
  • Community Innovation
  • A Whole New Java EE Platform
  • The Java EE Specifications
  • Major Java EE Technologies
  • Java EE Application Packaging
  • Java Web Applications
  • Java Persistence
  • Java EE Business Components
  • Dependency Injection
  • Java Web Services
  • Java EE Application Architecture
  • Java EE Architecture Example
  • Summary

Chapter 2. Servlet Basics

  • History – CGI
  • Server Extension APIs
  • Java Servlet
  • Java EE and Servlet
  • New In Servlet 3.0
  • Servlet Container
  • Servlet Responsibilities
  • The Servlet Class
  • The HttpServlet Class
  • Servlet Configuration
  • An Example – Hello World
  • The Servlet Container
  • The Servlet API
  • Life Cycle – Initialization
  • Declaring Initialization Parameters
  • Example Initialization
  • Life Cycle – Processing
  • Life Cycle – Destroy
  • User Input
  • Example – User Input
  • Output to Client
  • Servlet Error Handling
  • Threading Issues

Chapter 3. Servlet Interaction Interface

  • Request
  • Request Parameters
  • Request Attributes
  • Request Headers
  • Request Path
  • Other Request Information
  • Response
  • Cookies
  • Components of a Cookie
  • Issuing Cookies
  • Retrieving Cookies
  • Deleting a Cookie
  • Servlet Context
  • Servlet Context Attributes
  • Resource
  • Session Tracking
  • Tracking Techniques
  • HTML Hidden Fields
  • Using HttpSession
  • Session Invalidation
  • An Example of Session Tracking Code...
  • An Example of Session Tracking Code…
  • HttpSession - URL Rewriting
  • Summary

Chapter 4. JavaServer Page (JSP) Basics

  • JavaServer Pages
  • A Simple Example - Hello.jsp
  • JSP Benefits
  • Evolution of Dynamic Content Technologies
  • How JSP Works
  • JSP Invocation
  • JSP Scripting Elements
  • The XML Syntax
  • JSP Directive
  • page Directive Attributes
  • page Directive – an Example
  • page Attribute – errorPage
  • page Attribute – isErrorPage
  • Using XML Syntax
  • Directives – include
  • Include – an Example
  • Include at compile time vs. at request time
  • Request time inclusion
  • 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

Chapter 5. Using Java Beans with JSP

  • What is a JavaBean?
  • Structure of a JavaBean
  • Life Cycle
  • Properties
  • Very Simple Bean
  • Using Java Beans in JSP
  • The <jsp:useBean> tag
  • Java Bean scope
  • <jsp:useBean> in Action
  • The <jsp:getProperty> tag
  • The <jsp:setProperty> tag
  • Mapping all the request parameters
  • Another Example
  • Mixing Scriptlets and Bean tags
  • Summary

Chapter 6. Model/View/Controller Pattern

  • Key Issues for Web Application Development Productivity
  • Web Application Programming Model – MVC
  • Model
  • View
  • Controller
  • JavaBeans
  • MVC Implementation
  • Request Dispatching
  • Request Dispatching - Forward vs. Include
  • Request Dispatching - forward Request to JSP
  • HTTP Redirection
  • Dispatch vs. redirection
  • Redirecting to a JSP
  • Supply Result Information to the JSP
  • A Simple Example
  • Display JavaBean Properties in JSP

Chapter 7. Working with Databases

  • What is JDBC?
  • JDBC Architecture
  • JDBC: Basic Steps
  • JDBC Driver
  • DB2 UDB JDBC Drivers
  • Oracle JDBC Drivers
  • Create a Connection
  • Connection
  • Statement
  • PreparedStatement
  • Advantages of Prepare Statement
  • ResultSet
  • ResultSet…
  • Example JDBC Servlet With Transactions
  • Close the Connection
  • Need for Connection Pooling
  • Connection Pooling in JDBC
  • Connection Pooling
  • Basic Steps in Using JDBC Connection Pooling
  • Access a DataSource
  • DataSource @Resource Injection
  • Get a Connection
  • Release Connections
  • Connection Pool Example
  • Resource References

Chapter 8. JSP Expression Language and Standard Tag Library

  • JSP Expression Language (EL)
  • Basic Usage
  • Unified Expression Language
  • Built-in Objects
  • Working With Arrays and Maps
  • Operators
  • Full Example
  • JSP Standard Tag Library (JSTL)
  • Basic Tags
  • Condition Tags
  • Iterator Tags
  • Internationalization (I18N)
  • Setting Preferred Locale
  • Specifying Resource Bundle
  • Display Translated Text
  • Display Number
  • Display Date
  • Function Tags
  • Function Syntax
  • fn Functions
  • JDBC Tags
  • Specify Data Source
  • Performing a Query
  • Display Result

Chapter 9. Servlet Filters

  • What is a filter?
  • Why use a filter?
  • Uses for Filtering
  • Features of filters
  • The Filter interface
  • How a filter works
  • In what order?
  • A Simple Logging Filter
  • Configuring the filter
  • Mapping the filter
  • The Web Deployment Descriptor
  • Configuring Filters with Annotations
  • Common filter tasks
  • Request and Response Wrappers

Chapter 10. Servlet Event Listener

  • What are Listeners
  • Types of Listeners
  • Writing a Servlet Context Listener
  • Writing a Servlet Context Attribute Listener
  • Writing a Servlet Request Listener
  • Writing a Request Attribute Listener
  • Writing a Session Activation Listener
  • Writing a Session Attribute Listener
  • Registering Listeners
  • Lifecycle of Listeners

Chapter 11. JSP Custom Tag Development

  • What is Custom Tag?
  • Why Develop Custom Tags?
  • The Nature of a Custom Tag
  • Tag Body
  • Fragment Attribute
  • Dynamic Attributes
  • Tag Library Descriptor (TLD)
  • Tag Implementation Options
  • The Tag File Approach
  • Example Tag File
  • The Tag Directive
  • Defining Attributes
  • Working With Variables
  • Working With Fragment Attributes
  • Packaging Tag Files
  • Creating the TLD File
  • Using a Tag File From a JSP
  • The Simple Tag API
  • Example Tag Class
  • Life Cycle of a Simple Tag
  • The JspContext Object
  • Dealing With the Body
  • Implementing an Iteration Tag
  • Accessing a Parent Tag
  • Working With Fragment Attributes
  • The TLD File
  • Defining a Tag
  • Packaging a Tag Library
  • Using a Tag Library

Chapter 12. Introduction to JavaServer Faces 2.0

  • What is JavaServer Faces (JSF)?
  • Why Use JSF?
  • Nature of a JSF Application
  • JSF Implementations
  • JSF and MVC
  • Faces Servlet
  • Faces Servlet URL Mapping
  • Managed Bean
  • The View Layer
  • XML Validity of a Page
  • A Simple JSF Application
  • The Input Form: form.xhtml
  • The Result: thanks.xhtml
  • The Controller: AddressBean
  • How Does the Application Work?
  • Under the Covers: The Rendered Form HTML
  • Under the Covers: The Layout Tree
  • Additional References
  • Summary

Chapter 13. Basic Managed Bean and JSF Expression and Scope

  • Introduction
  • JSF Expression Language (EL)
  • Simple Value Property
  • Complex Value Property
  • Method Expression
  • 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