| 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
|
|