WA1598 Servlets and JSPs Development Using WebLogic Workshop Studio and WebLogic Server 9.2 Training and Courseware Course Outline
|
|
1. J2EE Overview
|
|
- Introduction
- Why Do We Need J2EE?
- J2EE Components
- J2EE Technologies
- Useful J2SE Technologies
- Application Artifacts
- J2EE Architecture
- J2EE 1.4 Version Levels
- J2EE Software Packaging
- Deployment Descriptor
- Enterprise Archive (EAR)
- Web Modules and WAR
- EJB Modules
- Building Module Dependency
|
| |
2. Overview of Web Applications
|
|
- Objectives
- Tiered Software Architecture
- Tiered Runtime Environment
- Tiered Architectures
- Presentation Layer
- Web Presentation Layer
- Business Logic Tier
- Tier Integration
- Java Web Applications
- Java Web Application Architecture
- J2EE Architecture
- Web Application Programming Model - MVC
- Model View Controller
- A Scenario of Using MVC
|
| |
3. Introduction To Workshop Studio
|
|
- Overview
- The Eclipse Platform
- Eclipse 3.0 Java IDE
- Views, Perspective and Editor Areas
- Basic Operations with Eclipse Views and Perspectives
- The Java Perspective
- The Debug Perspective
- Navigator View
- Build and Validation
- Templates and Code Completion
- Searching
- Workshop Studio
- BEA WebLogic Server
- Summary
|
| |
4. Servlet Basics
|
|
- Objectives
- History CGI
- Server Extension APIs
- Java Servlet
- Servlet Container
- Servlet Responsibilities
- J2EE and Servlet
- The Servlet Class
- The HttpServlet Class
- An Example Hello World
- The Servlet Container
- The Servlet API
- Life Cycle Initialization
- Life Cycle Initialization
- Example Initialization
- Life Cycle Processing
- Life Cycle Processing
- Life Cycle Destroy
- User Input
- Example User Input
- Output to Client
- Servlet Error Handling
- Threading Issues
- The Workshop Perspective
- Create a Web Project in WebLogic WorkShop Studio
- Create a Servlet in WebLogic WorkShop Studio
- Code Servlet Methods
- The Web Deployment Descriptor
- Add Web Project to Server
- Test the Servlet
- Debug Servlets in the Debug Perspective
|
| |
5. JavaServer Page (JSP) Basics
|
|
- Objectives
- 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 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 Scriptlets an Example
- JSP Comments
- JSP Predefined Variables
- The request Object
- The response Object
- The out Object
- Out an Example
- Creating a JSP
- Editing a JSP
- Testing a JSP
- Debugging a JSP
|
| |
6. Servlet Interaction Interface
|
|
- Objectives
- 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
- Using HttpSession
- Session Invalidation
- An Example of Session Tracking Code...
- An Example of Session Tracking Code
- An Example of Session Tracking Code
- An Example of Session Tracking Code
- An Example of Session Tracking Code
- An Example of Session Tracking Code
- An Example of Session Tracking Code
- HttpSession - URL Rewriting
- Summary
|
| |
7. Servlet Programming Advanced
|
|
- Objectives
- Key Issues for Web Application Development Productivity
- Web Application Programming Model MVC
- Model
- View
- Controller
- What is JDBC?
- JDBC Architecture
- JDBC: Basic Steps
- Loading a Driver
- DB2 UDB JDBC Drivers
- Oracle JDBC Drivers
- Create a Connection
- Connection
- Statement
- PreparedStatement
- ResultSet
- ResultSet
- 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
- Connection Pool Example
- Resource References
- JavaBeans
- MVC Implementation
- 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
- Display JavaBean Properties in JSP
|
| |
8. Using Java Beans with JSP
|
|
- Objectives
- 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
|
| |
9. Introduction to WebLogic Server 9.2
|
|
- Objectives
- WebLogic Server Instances
- The Java Virtual Machine
- JVM Providers
- Threads vs. Processes
- WebLogic Server Domains
- Servers And Domains
- Domain Configuration
- WebLogic Administration Domain
- Directory Structures
- Starting The Administrative Server
- The Administration Console
- Administrative Tasks
- Lock & Activate In The Admin Console
- WebLogic Server Deployments
- Format of Web Application
- Web Application Directory
- WEB-INF Directory
- Other Administrative Tools
- Managed Servers
- Starting A Managed Server
- Shutting Down Servers
- Deploying Applications From WebLogic Workshop Studio
- Summary
|
| |
10. Servlet Filters
|
|
- Objectives
- 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
|
| |
11. Servlet Event Listener
|
|
- What are Listeners
- Types of Listeners
- Writing a Servlet Context Listener
- Writing a Servlet Context Attribute Listener
- Writing a Session Activation Listener
- Writing a Session Attribute Listener
- Registering Listeners
- Lifecycle of Listeners
|
| |
12. 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
|
| |
13. 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
|
| |
14. JSP Custom Tag Development
|
|
- Objectives
- 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 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
- 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
|
| |
15. J2EE Security
|
|
- Security Functionality
- What Can You Secure in J2EE?
- Challenge Mechanism
- Basic Challenge
- Client Certificates
- Form-based Authentication
- User Registry
- J2EE Authorization Model
- Protecting Web Resources
- Protecting EJB Methods
- EJB Delegation Policies
- Delegation Scenario
- Defining Roles at Application Level
|
| |
16. Introduction to Web Services
|
|
- Objectives
- Service Oriented Architecture (SOA)
- Basic SOA
- SOA Runtime Implementation
- SOA Runtime Implementation
- SOA
- Web Services
- Typical Development Workflow
- Advantages of Web Services
- Web Services Business Models
- Case Study: Internal System Integration
- Case Study: Business Process Externalization
- SOAP
- UDDI
- Web Services Description Language (WSDL)
- Web Services Invocation Framework (WSIF)
- WSIF and WSDL
- Web Services Interoperability (WS-I)
- WS-I Deliverables
- Web Services Support in Eclipse/WTP
- Summary
|
| |
Appendix A. Enterprise JavaBean (EJB) Overview
|
|
- Objectives
- Needs for EJB
- Distributed Computing
- Distributed Transaction
- Distributed Security
- What are EJBs?
- Main Characteristics of EJBs
- EJB Remote Method Call
- EJB Architecture Components
- EJB Client
- EJB JAR File
- EJB Server
- EJB Container
- EJB Container - Persistence
- EJB Container - Transaction
- Enterprise Java Beans
- 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
- Remote v. Local EJBs
- EJB Application Development
- Deploying Enterprise Beans
- Major Components of Deployed EJBs
- Summary
|
| |
Appendix B. Basic Struts Programming
|
|
- The Action Class
- Action Life Cycle
- The ActionServlet Class
- The execute() Method
- Registering an Action
- The ActionMapping Class
- Accessing User Input
- Form Bean
- Registering Form Bean
- Form Bean Life Cycle
- HTML Form Example
- Accessing User Input
- Bean Scope
- Invoking Business Logic
- Passing Data to Model
- Using Separate DTO Classes
- Controlling Page Flow
- Redirecting the Browser
|
| |
Appendix C. JMS Overview
|
|
- Objectives
- Messaging Intro
- Messaging Example
- Messaging Components
- Messaging Types
- JMS (Java Messaging Service)
- Message Driven Beans (MDB)
- MDB as Message Consumer
- JMS Resources
- JMS Messaging Configuration Questions
- JMS Messaging Configuration Answers
|
| |