WebSphere Training Overview
This three day course is intended for System Administrators who will be installing and tailoring WebSphere MQ V6 on the distributed platforms (AIX, Windows, UNIX, Sun Solaris, Linux, AS/400,…). Most of the course contents also apply to other platforms such as z/OS, Tandem and VSE. The students learn how to install WebSphere MQ, set up Queue Managers, define and manage Queues, Message Channels, Distributed Queuing, Clusters and learn the basic problem determination techniques. The course also helps to prepare for the IBM MQ Certification tests. It is using machine exercises specific to the AIX platform.
In addition to AIX the course and the machine exercises can be set up for the following platforms:
WebSphere MQ V6 System Administration for Linux
WebSphere MQ V6 System Administration for Windows (Windows 2003, 2000, XP)
WebSphere MQ V6 System Administration for Sun Solaris
WebSphere MQ V5 System Administration for AS/400 (iSeries)
WebSphere Training Audience
System administrators responsible for the setup and maintenance of WebSphere MQ systems on AIX, Windows, UNIX, Sun Solaris or AS/400 platforms.
WebSphere Training Prerequisites
WA1043 Technical Introduction to WebSphere MQ.
WebSphere Training Topics
- A review of WebSphere MQ concepts
- Installation and configuration – Windows considerations
- MQI calls
- Triggering setup
- Queue manager setup
- Distributed queue management
- Problem determination
- Transaction and recovery support
- WebSphere MQ client
- Security
- Queue manager clustering
WebSphere Training Learning Objectives
Upon the completion of this course, the student should be able to:
- Plan the implementation of WebSphere MQ on Windows
- Install WebSphere MQ on Windows
- Perform simple customization and administration tasks
- Implement triggering
- Setup for Distributed queuing
- Setup for Clustering
- Implement WebSphere MQ Client access
- Implement basic restart and recovery procedures
- Perform basic problem determination
- Setup security for queues, data access and for administration using role-based security
WebSphere Training Course duration
Three Days
WebSphere Training Course outline
1. Introduction to J2EE and the J2EE Application Server 1.4
- Overview
- Java Web Applications
- Java Web Application Architecture
- J2EE Architecture
- Web Application Programming Model – MVC
- An MVC Example
- The Infrastructure for Enterprise Web Applications
- The J2EE 1.4 SDK
- J2EE EAR File Structure
- J2EE Application Server - Tools
- Starting the J2EE Server
- Stopping the J2EE Application Server
- Starting the Admin console
- Deploying Applications – Application Deployment Tool
- The Verifier
- PointBase Database & Console
- PointBase Console
- Application Server Logs
- Summary
2. Introduction to Eclipse IDE and Open Source Servers
- Objectives
- 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
- Package Explorer
- Outline View
- Problems View
- Tasks View
- Build and Validation
- Import and Export Project
- Templates and Code Completion
- Searching
- Setup Compiler Class Path
- JRE Switching
- MyEclipse 3.8
- MyEclipse - Visual HTML Designer
- MyEclipse – JSP Development
- MyEclipse – EJB Support
- MyEclipse – Struts Modeler
- MyEclipse – XML Editor
- MyEclipse – Application Connector
- Summary
3. 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
- Example Initialization
- Life Cycle – Processing
- Life Cycle – Destroy
- User Input
- Example – User Input
- Output to Client
- Servlet Error Handling
- Threading Issues
4. 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 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
5. JSP Expression Language and Standard Tag Library
- JSP Expression Language (EL)
- Basic Usage
- Built-in Objects
- Working With Arrays and Maps
- Operators
- Full Example
- JSP Standard Tag Library (JSTL)
- Run Time Version
- Basic Tags
- Condition Tags
- Interator Tags
- Internationalization (I18N)
- Setting Preferred Locale
- Specifying Resource Bundle
- Display Translated Text
- Display Number
- Display Date
- JDBC Tags
- Specify Data Source
- Performing a Query
- Display Result
- Pagination Example
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…
- 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…
- 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 tag
- Java Bean scope
- in Action
- The tag
- The tag
- Mapping all the request parameters
- Another Example
- Mixing Scriptlets and Bean tags
9. 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
10. Session Bean
- Objectives
- Session Beans
- Stateless Session Bean
- Stateful Session Bean
- Components of Session Beans
- Home Interfaces
- Remote interface
- Local interface
- The Session Bean Class
- ejbCreate() Method
- Business Methods
- A Simple Stateless Session Bean Example
- A Simple Stateful Session Bean Example
- Session Context
- EJB Context
- EJB Context…
- Session Bean Lifecycle
- Lifecycle - Stateless
- Lifecycle - Stateful
- Lifecycle – Stateful
- Lifecycle - Stateful
- Concurrency Issues
- Invoking Session Beans from client Application
- Looking Up a Home Object
- Create an EJB Object
- Calling business methods
11. Entity Bean
- Objectives
- Entity Beans
- Entity Bean Components
- Container
- Container…
- Primary Key Class
- A Primary Key Class Example
- (Remote) Home Interface
- (Remote) Home Interface…
- Local Home Interface
- Remote Interface
- Local Interface
- Entity Bean Class
- Entity Instance
- Entity Object Lifecycle
- Bean Instance Lifecycle
- Bean Instance Lifecycle…
- Persistence
- Bean Managed Persistence
- Container Managed Persistence
- Writing BMP Bean
- Writing BMP Bean…
- A BMP Bean Example
- A BMP Bean Example…
- Writing a CMP Bean
- Writing a CMP Bean…
- Indicating Persistent Fields
- Writing finder methods
- EJB Query Language
- EJBQL: Simple examples
- EJBQL: SELECT clause
- EJBQL: SELECT clause…
- EJBQL: FROM clause
- EJBQL: WHERE clause
- EJBQL: WHERE clause…
- EJBQL: Watch out!
- Using EJBQL in a CMP bean
- Business Methods
- EntityContext
- Writing CMP Beans
- Defining and Mapping CMP Fields
- A CMP Entity Bean Example
12. Best Practices
- Objectives
- Remove Stateful Session Beans
- Reduce the Transaction Isolation Level where possible
- Access Entity Beans from Session Bean
- Reuse EJB Homes
- Avoid two-phase commit if possible
- Avoid transactions for non-transactional methods
- Avoid Stateful Session EJBs
- CMP Pooling
- Do not store large Object Graphs in HttpSession
- Release HTTP Sessions
- Use JDBC Connection Pooling
- Release JDBC Resources
- Avoid String Concatenations
- Minimize Synchronization
13. J2EE Design Patterns
- EJB Design Patterns
- Types of EJB patterns
- Session Façade Pattern
- Session Façade
- Session Facade
- Session façade pattern shortcomings
- Message Façade Pattern
- Message Façade
- Message façade pattern shortcomings
- EJB Command pattern
- EJB Command
- EJB Command pattern shortcomings
- Generic Attribute Access pattern
- Generic Attribute Access
- Data Transfer Object (DTO)
- Data Transfer Rowset
- Version Number pattern
- Version Number Pattern
- Fast Lane Pattern
- Data Access Command Beans
- EJBHomeFactory
- Business Delegate
- Sequence Blocks
- Stored Procedures for Autogenerated Keys
- Summary
Appendix A. Message-Driven Beans
- Objectives
- The Trouble with RMI/IIOP
- Messaging to the Rescue
- Messaging Features
- Message-Oriented Middleware
- Messaging Domains
- Publish/Subscribe
- Point-to-Point
- Java Message Service
- JMS Programming: Overview
- JMS Programming: Overview…
- The JMS Interfaces
- JMS Programming: Example
- JMS Programming: Example…
- Integrating JMS and EJB
- Message-Driven Beans Are Different From Other EJBs
- Message-Driven Beans Cannot Talk to Their Clients
- Message-Driven Beans are Stateless
- Durable Subscription
- Message-Driven Bean Interfaces
- javax.ejb.MessageDrivenBean
- javax.jms.MessageListener
- javax.jms.Message
- Lifecycle
- Example: Message Counter
- Class MessageCounter
- Class MessageCounter…
- Working With Messages
- Processing the Message
- Deployment Descriptor Entry
- Binding the Queue or Topic
- Transactions
- Security
- Load Balancing
- Clustering and Topics
- Clustering and Queues
- A Few Tips
- Poison Messages
- How the Programmer Can Avoid Poison Messages
- How the System Administrator Can Avoid Poison Messages
- Building a Response
- Potential Problems
- A Simple Alternative
- Type Checking and Messages
- Testing Message-Driven Beans
- Summary
- References
Appendix B. Custom Tag Libraries
- Introduction
- Tag Attributes
- Tag Body
- Tag Library Descriptor
- Tag Library Descriptor Details
- carPrice.tld
- The Java Server Page
- Writing a Simple Tag Handler Class
- Tag Handler Life Cycle
- Rendering Content
- Implementing Empty Body Tag
- Example: CarPriceHandler
- CarPriceHandler…
- carPrice.jsp
- Implementing a Tag With Unprocessed Body
- Handling Tag Bodies
- Implementing Body Processing
- Example: Body Tag Support
- Implementing an Iteration Tag
- Nested Tags
- Summary
Appendix C. Java Messaging Service
- Introduction
- Messaging Models
- Components of Point-to-Point Messaging
- Components of Point-to-Point Messaging (cont.)
- Implementing a Sender
- Example Sender Servlet
- Example Sender Servlet (cont.)
- Example Sender Stateless Session EJB
- Example Sender Stateless Session EJB (cont.)
- Listener Types
- Listener Design Decisions
- Implementing a JMS Receiver
- Implementing a Receiver (cont.)
- Example: Synchronous Receipt
- Components of a Pub-Sub Model
- Components of a Pub-Sub Model (cont.)
- Example Topic Publisher
- JMS Programming in RAD
- Configuring MQ Simulator and Embedded Messaging
- Configuring WebSphere MQ
- Configuring WebSphere MQ (cont.)
Minimum Hardware Requirements
- 256 MB of memory or more
- 4GB hard disk space minimum
- CD-ROM drive
- LAN Adapter
- Networked
Minimum Software Requirements
- The operating systems supported by WebSphere MQ for AIX, Version 6.0 are:
- AIX5L V5.2 (plus maintenance Level 3)
- AIX5L V5.3
- TCP/IP support
- WebSphere MQ V6 for AIX (Client must provide the product CD.)
|