WA1098 Servlets and JSP Development with WebSphere Studio Application Developer v5 Course Outline
Chapter 1 Introduction to WebSphere Studio Application Developer
  • The WebSphere Studio Family
  • Eclipse Platform
  • The WebSphere Studio Product Family
  • WebSphere Studio Site Developer Advanced
  • WebSphere Studio Application Developer
  • Key Features in WSAD v5.0
  • Key Features in WSAD v5.0
  • WebSphere Studio Application Developer Integration Edition
  • WebSphere Studio Enterprise Developer
  • Basic Tools of WebSphere Studio Family
  • WebSphere Studio Family vs. VisualAge for Java
  • Major Steps for Migrating VAJ Web Projects
  • Migrating VAJ Web Projects
Chapter 2 Introduction to J2EE and the WebSphere Platform
  • Java Web Applications
  • Java Web Application Architecture
  • J2EE Architecture
  • Web Application Programming Model – MVC
  • An MVC Example
  • The Infrastructure for Enterprise Web Applications
  • The IBM WebSphere Platform
  • WebSphere Studio Site Developer
  • WebSphere Studio Application Developer (WSAD)
  • Background of WSAD
  • Major Differences with VAJ –Class Source
  • Major Differences with VAJ –Class Bytecode
  • Major Differences with VAJ – EJB
  • IBM HTTP Server
  • Web Server Plug-in
  • WebSphere Application Server
  • What’s new in WebSphere Application Server v5.0
  • WebSphere Editions
  • WebSphere Edge Server v1.0
  • WebSphere Commerce Suite 5.4
  • WebSphere Site Analyzer
  • Services provided by WebSphere Application Server
  • WebSphere Application Server Architecture
  • WebSphere Administrative Topology
  • WebSphere Application Server Components
  • WebSphere Application Server Administrative Activities
  • WAS Administration tools
  • WSAD J2EE Development
  • WebSphere Test Environment in WSAD
  • WebSphere Test Environment – steps for test
  • Set Project Properties
  • Setup Server Properties
  • EJB Test Client in WSAD
Chapter 3 J2EE Programming with WSAD v5
  • WSAD Views and Editor Areas
  • Navigator View
  • Package Explorer
  • Outline View
  • Property View
  • Task View
  • Search View
  • Perspectives of WSAD Workbench
  • Basic Operations with WSAD Views and Perspectives
  • The Java Perspective
  • The Resource Perspective
  • The Web Perspective
  • The J2EE Perspective
  • The XML Perspective
  • The Data Perspective
  • The Server Perspective
  • The Debug Perspective
  • The XSL Debug Perspective
  • Create a Web Project
  • Create a Web Project
  • Set up Web Project Properties
  • Web Project Folders and File
  • Create a Servlet
  • Code Servlet Methods
  • Create a JSP
  • Editing JSPs
  • JSP Page Design in WSAD
  • Insert JSP Bean
  • Edit a Web Deployment Descriptor (web.xml)
  • Create Server Instance and Server Configuration
  • Configure Server Instance
  • Add a Web Project to Test Server
  • Start and Stop the Server
  • Open a WSAD Web Browser
  • Test a Servlet
  • Debug a servlet
  • Test a JSP
  • Debug a JSP
Chapter 4 Servlet Basics
  • History – CGI
  • Server Extension APIs
  • Java Servlet
  • Servlet Container
  • Servlet Responsibilities
  • J2EE and Servlet
  • The Servlet Class
  • An Example – Hello World
  • The Servlet Container
  • The Servlet API
  • Life Cycle – Initialization
  • Example Initialization
  • Life Cycle – Processing
  • Life Cycle – Destroy
  • User Input
  • Example – User Input
  • Output to Client
  • Servlet Error Handling
  • Threading Issues
  • Create a Web Project in WSAD
  • Create a Web Project
  • Create a Servlet
  • Code Servlet Methods
  • The Web Deployment Descriptor
  • Test the Servlet
  • Debug Servlets in the WebSphere Test Environment
Chapter 5 Servlet Interaction Interface
  • Request
  • Request Parameters
  • Request Attributes
  • Request Headers
  • Request Path
  • Other Request Information
  • Response
  • Cookies
  • Setting Cookies
  • Servlet Context
  • Servlet Context Attributes
  • Resource
  • Session Tracking
  • Tracking Techniques
  • Cookies
  • Cookies – an Example
  • HTML Hidden Fields
  • URL Rewriting
  • Using HttpSession
  • Session Invalidation
  • An Example of Session Tracking Code
  • Session Details
  • URL Rewriting
Chapter 6 JavaServer Page Basics
  • JavaServer Pages
  • A Simple Example - Hello.jsp
  • JSP Benefits
  • Evolution of Dynamic Content Technologies
  • How JSP Works
  • JSP Invocation
  • Creating a JSP with WSAD
  • Editing a JSP with WSAD
  • Testing a JSP with WSAD
  • Debugging a JSP with WSAD
  • JSP Scripting Elements
  • JSP Directive
  • page Directive Attributes
  • page Directive – an Example
  • page Attribute – errorPage
  • page Attribute – isErrorPage
  • 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 7 Using JavaBeans 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
Chapter 8 JSP Programming Techniques
  • Error Handling
  • Example Exception Handling
  • Using an Error Page
  • Form Validation – Client Side
  • Form Validation – Server Side
  • Session Tracking
Chapter 9 Servlet Programming – Advanced
  • Key Issues for Web Application Development Productivity
  • Web Application Programming Model – MVC
  • What is JDBC?
  • JDBC Architecture
  • JDBC: Basic Steps
  • Loading a Driver
  • DB2 UDB JDBC Drivers
  • Create a Connection
  • Connection
  • Statement
  • PreparedStatement
  • ResultSet
  • Example JDBC Servlet With Transactions
  • Close the Connection
  • Need for Connection Pooling
  • Connection Pooling in JDBC 2.0
  • Connection Pooling
  • Basic Steps in Using JDBC Connection Pooling
  • Access a DataSource
  • Get a Connection
  • Release Connections
  • Monitoring Database Connection Pool Activity
  • Connection Pool Example
  • Creating a Data Source with WSAD
  • Java Beans
  • Create a Java Bean with WSAD
  • Add Attributes and Getters and Setters with WSAD
  • Web Applications
  • Request Dispatching
  • Request Dispatching - Forward vs. Include
  • HTTP Redirection
  • Dispatch vs. redirection
  • Integrating Servlet and JSP
  • Calling a JSP from a Servlet
  • Request Dispatching - forward Request to JSP
  • Supply Result information to the JSP
  • A Simple Example
Chapter 10 Web Applications and MVC
  • Tiered Architectures
  • Presentation Layer
  • Presentation Layer
  • Middle Tier
  • Model View Controller
  • Extensible Markup Language
  • XML
Chapter 11 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
  • Common filter tasks
  • Request and Response Wrappers
  • Task Overview
  • Example: Session Counter Filter
  • Create the Web Project
  • Create Web Resources
  • Create HitCountFilter
  • Create HitCountFilter
  • Code the filter
  • Check the Web Deployment Descriptor
  • Create the server
  • Test
Chapter 12 Assembling Web Applications with the WebSphere Application Assembly Tool
  • Assembling J2EE Application
  • J2EE Enterprise Application Assembly Modules
  • J2EE Application Assembly
  • Web Modules
  • Configuring Web Applications
  • Creating a context parameter
  • Configuring security
  • Example: protecting content
  • Configuring an authentication mechanism
  • EJB Modules
  • Enterprise Application Modules
  • Creating a Web Module
  • Application Assembly Tool
  • Tasks for assembling J2EE application with the AAT
  • Launching the AAT
  • The Interface of the AAT
  • Creating a Web Module –The Create Web Module Wizard
  • Creating a Web Module –Add Files
  • Creating a Web Module – Add Web Components
  • Creating a Web Module – Specifying Servlet mappings
  • Creating a Web Module – Specifying Other Properties
  • Creating an Application
  • Add a Web Module
Chapter 13 Installing J2EE Applications on WebSphere Application Server v5
  • Application Administration Tasks
  • Launching the Administrative Console
  • The Administrative Console
  • Installing an Enterprise Application into WebSphere Application Server
  • Saving the Master Configuration
  • Configuring the Web Server plugin
  • WebSphere Applications on the file system
  • Enterprise Application Configuration Settings
  • Resources
  • Web Container
  • Session Management
  • Managing Applications
  • wsadmin
  • Java Management Framework
  • The wsadmin environment
  • Common AdminControl commands
  • Common AdminConfig commands
  • Common AdminApp commands
Chapter 14 Custom Tag Libraries
  • The taglib directive
  • Components of a tag library
  • Tag Library Descriptor
  • Tag Handler Class
  • Tag handler life cycle
  • The Java Server Page
  • Example: Car Price
  • Tag Library Descriptor Details
  • carPrice.tld
  • Tag Handler class
  • CarPriceHandler
  • CarPriceHandler
  • carPrice.jsp
  • Packaging a Tag Library Within the Web Application
  • The Struts Tag Library
  • Struts Bean Tags
  • Handling Tag Bodies
  • Example: Body Tag Support
Chapter 15 Introduction to Struts
  • Review: MVC Model
  • What is Struts?
  • Struts Flow
  • Components in Struts
  • The Model
  • The View
  • The Controller
  • Struts Flow
  • struts-config.xml
  • struts-config.xml Content
  • data-sources
  • form-beans
  • global-forwards
  • action-mappings
  • Sample struts-config.xml
  • Web Deployment Descriptor
  • Struts and the Web Deployment Descriptor
  • web.xml Content
  • Steps to Configuring Struts in web.xml
  • Step 1. Configuring the Action Servlet Instance in web.xml
  • Action Servlet Config Example
  • Step 2. Configuring the Action Servlet Mapping in web.xml
  • Prefix Mapping Example
  • Extension Mapping Example
  • Step 3. Configuring the Struts Tag Libraries in web.xml
Chapter 16 JSTL
  • Struts Tags
  • JSTL – what does it provide?
  • Core JSTL Tags
  • Core JSTL Tags- continued
  • Formatting tags
  • I18N tags
  • More formatting
  • Database tags
  • XML Tags
  • The JSTL Expression Language
  • JSTL EL
  • JSTL Opeartors
  • JSTL Implicit objects.
  • More implicit objects
Chapter 17 Overview
  • Needs for EJB
  • Distributed Computing
  • Distributed Transaction
  • Distributed Security
  • What are EJBs?
  • Main Characteristics of EJBs
  • EJB Technologies
  • CORBA Object Distribution
  • RMI over IIOP
  • EJB Architecture Components
  • EJB Client
  • EJB JAR File
  • EJB Server
  • EJB Container
  • EJB Container - Persistence
  • EJB Container - Transaction
  • Enterprise Java Beans
  • Message-Driven Beans are Different
  • Session Beans
  • Entity Beans
  • EJB Classes and Interfaces
  • Basic Components of Entity and Session Beans
  • EJB Home Interface
  • An EJB Home Interface Example
  • EJBHome Object
  • EJB Remote Interface
  • Remote Interface Example
  • EJB Local Home Interface
  • EJB Local Interface
  • Remote EJB Objects
  • Local EJB Objects
  • EJB Implementation Class
  • EJB Container - Relationships
  • EJB Container – Relationships
  • How do (remote) EJBs Work
  • Remote v. Local EJBs
  • EJB Application Development
  • Deploying Enterprise Beans
  • Major Components of Deployed EJBs
  • WebSphere EJB Server Architectural Overview
Appendix A Tag Handlers
  • Tag Library API
  • Tag Interface
  • BodyTag Interface
  • Tag Handler Class
  • Tag Handler Lifecycle
  • TagSupport Class
  • The pageContext variable
  • An example
  • Exception Handling
Appendix B Advanced Tag Library Features
  • Manipulating Tag Body
  • Repeating over Tag
  • Nested Tags