Servlet/JSP Development using Rational Application Developer v6.0
Onsite/Virtual Instructor-Led Format



Audience
Java developers, web page designers and other professionals that will be designing, developing and implementing web applications using JavaServer Pages, servlets, Enterprise JavaBeans using Rational Application Developer v6.0.
   

Duration

5 Days
   
Course Abstract
This course will integrate a combination of instructor-led discussions and interactive workshops to demonstrate the development and testing of server-side applications using J2EE component model. This course will focus on illustrating the use of the Rational Application Developer product for developing servlets, JavaServer Pages and Enterprise JavaBeans. Additionally, the role of the WebSphere Application Server v6.0 for testing, use of WAR, JAR and EAR files, debugging and deployment will be highlighted. Each student will learn the best practices solution for developing J2EE applications using Model-View-Controller framework and the separation of servlets, JSPs and JavaBean components.
   
Objectives

Upon conclusion participants will have acquired these skills:

  • Understand the role of the RAD v6.0 tool
  • Depict the usage of RAD projects and perspectives
  • Illustrate the J2EE 1.4 component model and role in designing server-side applications
  • Develop, debug and test servlet components with Servlet v2.4
  • Depict development of servlet filters
  • Illustrate usage of JavaServer Pages using JSP v2.0
  • Integrate JavaBeans with the servlet/JSP development model
  • Demonstrate usage of custom JSP tags and tag libraries
  • Understand role of JDBC to establish connectivity to relational structures
  • Management of state data using sessions and request objects
  • Role of Session Manager for storing state or shopping cart information
  • Use of existing Enterprise JavaBeans for application business logic (Entity, Session and Message)
  • Administer and manage WebSphere Application Server using the Server perspective in RAD
  • Demonstrate packaging of JAR, WAR and EAR components
  • Deploy Enterprise applications to WebSphere Application Server in RAD
   
Class Format Lecture via WebEx and hands-on Labs using remote access machines
   
Prerequisites

Each student should have a basic understanding of the internet and have been exposed to the Java programming language.

Course Topics

The following list represents the sections and topics discussed in this virtual instructor-led course offering.

 

WebSphere Overview

  • N-tier architecture
  • Model-View-Controller
  • WebSphere products
  • Browser role
  • HTTP Server
  • Application Server
  • Standalone vs Network Deployment administration
  • RAD Suite
  • J2EE platform
  • J2EE APIs
  • J2EE services:
    • JNDI
    • JDBC
    • JMS
    • Security
    • JTA/JTS
  • J2EE packaging
  • Application lifecycle

JavaServer Pages

  • JSP Components
  • JSP & Servlet integration
  • Servlet/JSP model
  • JSP request cycle
  • Operational model
  • JSP translations
  • Forwarding
  • JSP methods: jspInit, jspService and jspDestroy
  • JSP Tags and scripting elements
  • Implicit objects
  • Directives
  • Declarations
  • Expressions
  • Scriptlets
  • JSP Action tags
  • JavaBean integration
  • useBean Scope attribute
  • Development using WSAD

RAD IDE

  • Understanding Eclipse
  • Multiple document interface
  • RAD product family
  • Plug-in architecture
  • Java development features
  • Web development
  • XML capabilities
  • Server configuration
  • Deployment Descriptors
  • Projects and Perspectives
  • WSAD folder structure
  • Java and XML editor
  • Search capabilities
  • Web Services toolset
  • Import/Export projects
  • Utilizing Perspectives
  • Navigation panel

JavaBeans

  • Bean types: Visual, Non-visual and Repository
  • JavaBean rules
  • Implementation strategies
  • Components: properties, methods and events
  • Evolution of JavaBeans
  • Integration with Web Services
  • Servlet/JSP model usage
  • Use with HttpSessions
  • JavaBeans and JSPs
  • Use of JSP action tags
    • useBean
    • getProperty
    • setProperty
  • Role of Scope

RAD Debugger

  • Debugger role
  • Debug perspective
  • Debugger preference settings
  • Initiating debugger
  • Suspended threads
  • Execution controls
  • Inspecting expressions
  • Breakpoints
  • Exception handling

JSP Tag Libraries

  • Custom Tag libraries
  • Tag Handler classes
  • Tag Library Descriptor file
  • taglib page directive
  • Defining TLD entries
  • Deploying Tag libraries
  • Using web.xml aliases
  • JSP Standard Tag Libraries
  • JSTL Expression language

Servlet Development

  • Servlet Evolution
  • Characteristics
  • Statement blocks
  • Stateless vs Stateful
  • Servlet message structure: HTTP header & FORM data
  • Web Container: Instance Pool, JVM and JRE roles
  • Lifecycle
  • HTML FORM interaction: ACTION and METHOD parameters
  • POST vs GET processing
  • Reading POST data
  • Java Servlet API
  • init and destroy methods
  • Parameters vs Attributes
  • Development in RAD
  • Servlet Operational model
  • Deployment and testing

JDBC Concepts

  • JDBC API
  • Role of JDBC drivers
    • Type 1-4 Drivers
    • Standard vs XA drivers
    • Two-phase commit compliant
  • Defining JDBC resource provider to WebSphere application server
  • JDBC v1.0 vs JDBC v2.0
  • Connection pooling
    • Min & max settings
    • Timeout
    • Statement caching
    • Reap settings
  • Use of DataSource objects
  • Namespace lookups
  • Creating Connections
  • Managing ResultSets
  • Data type conversions

 

Exception Handling

  • Defining Exceptions
  • Error vs Exception classes
  • Runtime exception errors
  • throws statement
  • try/catch blocks
  • finally block
  • Execution patterns
  • throw statement
  • Creating Exception classes

Struts Applications

  • MVC design pattern
  • Servlet/JSP and JSP models
  • Struts architecture
  • ActionServlet
  • Action
  • ActionForm
  • ActionForwards
  • ActionError
  • WSAD implementation
  • struts-config.xml
  • Web Diagram tool

J2EE Applications

  • Web Application structure
  • Context paths
  • WEB-INF files
  • Servlet Context
  • web.xml entries
  • Servlet mapping
  • Taglib alias
  • Security constraints

Security Concepts

  • WebSphere Security overview
  • Security Model
    • JAAS
    • LTPA
    • SWAM
    • Tag Authenticator Interceptors
    • LDAP/Local OS
    • CSIv2
  • Security Roles
  • Defining Security Constraints
  • web.xml security tags
  • Mapping roles to groups

Session Data

  • Session support
  • WebSphere Session management
  • Retrieve HttpSession
  • Invalidation
  • Accessing existing sessions
  • RequestDispatcher
  • Servlet Contexts
  • Session configuration
  • Persistent Session types
  • WebSphere internal messaging: Peer-to-Peer vs Client/Server
  • Session affinity
  • Cookies

 

Servlet Filters

  • Filter model and API
  • Configuring filters
  • Filter mapping using web.xml
  • Development using RAD
  • Request & Response wrappers