Java EE Development Using RAD v7.5.2 Course

Course Code: IN 1051
Course Abstract: Participants will enter the empowering world of Java EE development using Rational Application Developer v7.5.2 (RAD).  After completing this course, participants will feel comfortable creating, testing and debugging enterprise applications that conform to the Java EE 5 specification.  They will gain experience developing JSPs, custom tags, servlets, servlet filters and JavaBeans using Java EE design patterns and WebSphere best practices.  The concepts taught in this course are reinforced by hands-on lab exercises.
Audience: This course is designed for individuals who are programmers and developers.
Duration: 5 days
Learning Outcomes:

Upon completion of this course, the participant will be able to:

> Create applications
> Test applications
> Debug applications

Course Topics:

Web and Application Server Concepts
Web Application Design
Model-View-Controller and Multi-Tier Architecture
WebSphere Plugins
URLs, HTTP and SSL
HTTP Requests and Responses
Web Server and Application Server Roles
Request Processing

Java EE Architecture Overview
Enterprise Application Overview and Development Cycle
Java EE Architecture and Containers
Applet, Servlet and JSP Overviews
JDBC, JNDI and JTA
EJB, JMS and RMI Over IIOP
JavaMail, JAF, JAAS and JACC
XML and JAXP
New in Java EE 5
Web Services Support: JAX-RPC, SAAJ, Web Services for Java EE and JAXR
Java EE Connector, Management and Deployment
Development Roles and Deployment Descriptors

Introduction to Rational Application Developer
Development Tools
What’s New?
Workspaces and Perspectives
Enabling Roles and Capabilities
Creating Projects and Setting Project Properties
Building Projects
Adding Application Components
Using Editors and Views
View Toolbars and Fast Views
Customizing Perspectives and Creating User Defined Perspectives
Navigating the Workspace and Using Bookmarks
Working with the Tasks and Search Views
Using Working Sets and Local History
Getting Help and Using Cheat Sheets
Tips for Better Performance

RAD: Developing Java Applications
Java Perspective Overview and Enhancements
Java Project Settings
Java Editor Features: Folding, Code Assist, Content Assist, Importing
Source Commands and Refactoring
Errors and Warnings
Problems view and Quick Fix
Console
Shortcuts

Servlet Basics
What are Servlets and Why Use Them?
Web Container Responsibilities
HttpServlet
Servlet Lifecycle Methods
Servlet Invocation
Multithreading Issues
Registering Servlets by Name
Handling Requests and Responses
Response Content Methods
Reading a Post
Scope Attributes
Passing Data between Servlets
What are Filters and Servlet Event Listeners?

Servlet Programming
ServletRequest and ServletResponse Interfaces
HTTPServletRequest and HTTPServletResponse Methods
Retrieving the Request URI
Response Buffering
ServletContext Interface
The RequestDispatcher Interface
Retrieving Context Initialization Parameters
Forwards and Includes

RAD: Web Perspective
Creating Web Projects and Specifying
Project Configurations and Facets
Annotation-based Programming
Web Project Structure and Default Files
Creating Servlets, Filters and Listeners
Using the Properties View
Editing the Web Deployment Descriptor
Defining IBM Extensions and Bindings

RAD: Server Perspective
New Features
Test Environments
Server Types and Resources
Defining a Server
Running Applications on a Server
Defining the Target Server
Servers View and Actions
Editing the Server Configuration for WebSphere V6.1 and V7.0
Embedding Deployment Information in an Application
Reloading Resources Running on the Server
WebSphere Administration Command Assist
WebSphere V6 and V7 Profiles
Profile Management Tools

RAD: Debug Perspective
Debugger Features
Step-by-Step Debug Mode
Step Filtering
Breakpoints
Variables View
Remote Debugging
Debug Perspective Settings
Launch Configuration Settings

Application Assembly and Packaging
Java EE Components
Assembly Process
Packaging Checklist
Creating Enterprise Application Projects
Importing Resources
Adding Java EE Modules and Utility JARs
JAR Dependency Editor
Using the Application Editor
Deployment Descriptor Elements (EJB, Web, Connector, Client and Application)
IBM Extensions and Bindings
Exporting Resources

JSP Basics
What are JavaServer Pages and Why Use Them?
JSP Translation and Execution
JSP Syntax and JSP Elements
Standard Actions: useBean, setProperty, getProperty, include, forward and param
JSP and JavaBean Interaction
Scope Attributes
Calling JSPs from Servlets
Relative URLs

RAD: Creating JavaServer Pages
Creating a JSP
Page Designer Toolbars and Views
Using and Customizing the Palette View
Adding Basic HTML Tags, Tables and Form Tags
Inserting JavaBeans and Standard JSP Tags
Defining Styles and Editing Style Sheets
Page Properties
HTML Syntax Validation and Document Cleanup
Scripting Variables
Using Content Assist and the Quick Edit View
Using and Customizing the Snippets View

JavaServer Page Programming
JSP Documents
XML Syntax
Standard Actions: jsp:element, jsp:attribute, jsp:body, jsp:text and jsp:output
Directives: Page, Include and Taglib
Scripting Elements: Declarations, Scriptlets and Expressions
Implicit Objects
Error Handling
JSP Configuration
Internationalization

JSP Expression Language
Benefits
Expression Syntax
Variable Resolution
Implicit Objects
Literals and Reserved Words
Using and Declaring Custom Functions
Considerations
Unified EL

JSTL
JSTL Features
Core Actions: Variable Support, Conditional Processing and Iteration
Core Actions: Error Handling, URL Manipulation and Exposing Variables
Understanding Locales and Resource Bundles
Internationalization: Defining the Default and Fallback Localization Contexts
Internationalization: Overriding the Client’s Locale and Displaying Localized Messages
Internationalization: Customizing the Time Zone and Formatting Numbers and Dates
XML: Parsing, Transformation and XPath Expressions
SQL Actions: Creating Data Sources and Transactions
SQL Actions: Executing SQL Statements and Specifying Parameters
JSTL Functions: String Manipulation and Collection Support

JSP Tag Extensions
Tag Extension Features
Tag Types: Simple and Classic
Classic Tag Handlers: Tag, IterationTag and BodyTag
Classic Tag Handler Lifecycles
Convenience Classes: TagSupport and BodyTagSupport
The TryCatchFinally and DynamicAttributes Interfaces
Defining SimpleTag Handlers
Simple Tag Handler Lifecycle
The SimpleTagSupport and TagAdapter Classes
Packaging Tag Libraries and Defining Tag Library Descriptors
Referencing Tag Libraries in the Web Deployment Descriptor
Immediate and Deferred Attributes in JSP 2.1 Tags
Using Custom Tags in a JSP

JSP Tag Files
Benefits
Tag File Basics
Scopes and the JspContext
JSP Fragments
Tag File Actions: jsp:invoke and jsp:doBody
Directives: Tag, Attribute and Variable
Variable Attributes and Scope
Implicit Objects

Design Considerations: Controlling Application Flow
Web Application Design
Controller Servlets
Site Design
Handling Responses and Managing State
Handling Errors and Invalid Transitions
Controlling Page Caching
HTTP Headers
Memento Design

RAD: Data Perspective
Using the Database Explorer
Creating and Connecting to a Database
Creating Data Development and Data Design Projects
Working with Data Diagrams
Adding a Table or View
Adding Keys, Columns, Indexes and Relationships
Generating DDL and Deploying From RAD
SQL Results View

Java Database Connectivity
JDBC Specification Enhancements
Using the DriverManager
Connection Management
Using & Deploying a Data Source
Getting & Closing Connections
Executing Statements, Prepared Statements and Stored Procedures
Result Sets: Moving the Cursor and Retrieving Data
Error Handling and SQLExceptions
Improving JDBC Efficiency
Transactions

JSF Basics
JSF Architecture
JSF Application Components
Development Steps
UI Component Model
Page Development
HTML UI Components and Faces Client Components
Navigation Model, Navigation Rules and Navigation Cases
Binding, Developing and Declaring Backing Beans
Faces Request Life Cycle

RAD: Developing JSF Applications
New JSF Features
Faces Projects
Creating a Faces JSP
Input Components and Enhanced Faces Components
Displaying Error Messages
Using the Quick Edit, Properties and Page Data Views
Editing Page Code
Adding Navigation Rules
Defining Validation and Behavior

Web 2.0
AJAX Overview
Advantages and Disadvantages
Using AJAX with Enhanced JSF Components
Adding Panel Components
AJAX Request Types
Configuring Parameters and Specifying Events
Defining Dynamic Behavior

Using Cookies and Sessions to Manage Application Data
The HttpSession Interface
Managing Session Data
Session Tracking Mechanisms
Sessions at Runtime: Client & Server
Invalidating a Session
The Serializable Interface
HttpSession Thread Safety and Events
Sending and Retrieving Cookies
Cookie Attributes
Proper Usage of Cookies
Distributable Web Applications

Servlet Event Listeners
Implementing and Deploying Listeners
Implementing the ServletContextListener Interface
The ServletContextAttributeListener Interface
Responding to HttpSessionEvents
The HttpSessionAttributeListener and ServletRequestAttributeListener Interfaces
Session Activation and Binding Listeners
Receiving ServletRequest Notifications
Thread Considerations

Filters
The Filter Interface
Filter Deployment and Lifecycle
Performing Filtering Tasks
Filter Chain Invocation
Wrapping Requests and Responses
Accessing the Filter Configuration Object
Implementing the Destroy () Method

Deploying to WebSphere
WebSphere Architecture
Web Server Plug-ins
Containers
Virtual Hosts
Application Server Services
Data Access
Default Messaging Provider
Web Services Support
WebSphere Administration Architecture
Cells, Clusters, Nodes and Node Agents
Administrative Console: Logging In, Navigating the Workspace and Saving Changes
Managing Servers, Virtual Hosts, Deployed Applications and Shared Libraries
Application Installation

Prerequisites: Java programming experience and familiarity with HTML is required.
Note: All fields are required
At the present time we do not offer training for individuals or groups less then 6 individuals. We apologize for any inconvenience.


We Value Your Privacy!

Ready to get started or in need of more information? Contact us today.

Go To Blog Virtual Learning