Home   |   Instructor-led Training   |   Self-Paced Learning                Email Us   Phone :
Contact Us   -   About Us          
 
Courses
A+ training
ADA training
Adobe training
AJAX training
AutoCAD training
Business Skills and Technology training
C++ programming training
Cisco training
Citrix training
Cognos training
ColdFusion training
COM/COM+ training
CORBA training
Corel training
Crystal Reports training
Data Mining training
DB2 training
Desktop Application Software training
Enterprise Architecture training
ITIL training
Java training
JBoss training
Legato training
Lotus training
Macintosh training
Mainframe programming training
Microsoft / MCT training
MS Access training
MultiMedia and design training
.NET training
Network+ training
Object oriented analysis and design training
Oracle training
Perl training
PHP training
PowerBuilder training
Professional Development training
Professional Soft Skills Workshops training
Project Management training
Rational training
SAS training
Security training
SharePoint training
SOA training
SQL Server training
Telecommunications training
Tivoli training
Unix/Linux/Solaris/AIX training
Visual Basic training training
Visual Foxpro training
VMware training
Web 2.0 training
Web Development training
WebLogic training
WebSphere training
Websphere MQ (MQSeries) training
Windows programming training
XML training
XML Web Services training
EJB 3.0 Development With JBoss
JBoss Training Overview

This course is an introduction to the Enterprise Java Beans (EJB 3) technology. It starts by introducing the concepts and is ideal for someone who has never programmed using EJB. The course rapidly picks up and ends with advanced concepts that students can use in real life to complete large scale EJB based projects. The labs are done using Eclipse 3.0 and JBoss IDE 1.6. JBoss 4 application server is used as the server runtime.

JBoss Training Audience

This course is intended for intermediate to advanced Java programmers. System architects will find the advanced concepts especially beneficial in designing a framework.

JBoss Training Prerequisites

Good Java programming knowledge. Be familiar with web application programming, including servlets and JSPs.

JBoss Training Learning Objectives

After completing this course, the student should be able to:

  • Understand the need for EJB
  • Understand the EJB 3.0 specification at an expert level
  • Understand how to develop, test, and deploy EJBs
  • Gain knowledge of EJB Design Patterns
  • Learn the industry secrets in EJB scalability
  • Learn how to develop all types of EJB beans using JBoss IDE.
JBoss Training Topics

  • Introduction to Java EE 5 and JBoss AS
  • EJB Overview
  • Session Beans
  • Entity POJO
  • Transactions
  • Security
  • Message-Driven Beans
  • EJB Design Patterns
JBoss Training Course duration

Five Days

JBoss Training Course outline

1. Java Enterprise Edition(EE) Overview
  • Objectives
  • Introduction to Java Platform
  • Java Community Process (JCP)
  • Introduction to Java EE
  • Why Move to Java EE
  • Java EE - New and Enhanced Features
  • Java EE Software Packaging
  • Java EE Technologies
  • Summary
2. Introduction to JBoss Eclipse IDE
  • Objectives
  • The Eclipse Platform
  • JBoss Eclipse IDE 1.6.0
  • Views, Perspective and Editor Areas
  • Basic Operations with JBoss 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
  • Summary
3. Enterprise JavaBeans (EJBs) Overview
  • Objectives
  • Need for EJBs
  • 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 Container
  • EJB Server
  • Enterprise JavaBeans
  • Session Beans
  • Entity Beans
  • Java Persistence API - Entities
  • Message-Driven Beans (MDBs)
  • EJB Specification
  • Summary
4. Stateless Session Beans
  • Objectives
  • Session Beans
  • Stateless Session Bean
  • Stateless Session Bean Pooling
  • Stateless Session Bean Examples
  • Stateful Session Bean
  • Stateful Session Bean Examples
  • Annotations
  • Stateless Session Bean Components
  • Example: Business Interface
  • Example: Bean Class
  • Alternative Example
  • Example: The Client
  • Business Interface Details
  • Bean Class Details
  • JNDI - Overview
  • Dependency Injection
  • Dependency Annotations
  • Injecting EJB References (@EJB)
  • Example: @EJB Field Level Injection
  • Injecting EJB References (@EJB) - Method Level Injection
  • The @Resource Annotation
  • Injecting Resources (@Resource) - Field Level Injection
  • Injecting Resources (@Resource) - Method Level Injection
  • A Full Example
  • Session Bean Lifecycle
  • Stateless Session Bean Lifecycle
  • Summary
5. Stateful Session Beans
  • Objectives
  • Stateful Session Bean
  • Stateful Session Bean Examples
  • Stateful Session Bean Components
  • Stateful Session Bean Example
  • Stateful Session Beans
  • Session Bean Lifecycle
  • Stateful Session Bean Lifecycle
  • Summary
6. Entities and Java Persistence API
  • Objectives
  • Data Persistence
  • Java Persistence API
  • Entities
  • Session Beans Vs Entities
  • Entities
  • Persisting and Retrieving Data
  • Entities - Example
  • Descriptor File META-INF/persistence.xml
  • Accessing Entities
  • Persistence Context
  • Working With the EntityManager Interface
  • Accessing Entities Using Stateless Session Beans
  • Updating Data
  • Entity Lifecycle
  • Life-Cycle Callbacks
  • Example: Internal callback
  • External Callback Class
  • Listener Class - Example
  • Synchronizing with Databases
  • Entity Lookup
  • EJBQL (EJB Query Language)
  • EJB Query Language
  • EJBQL: Simple examples
  • EJBQL: SELECT clause
  • EJBQL: SELECT clause
  • EJBQL: FROM clause
  • EJBQL: WHERE clause
  • EJBQL: WHERE clause
  • EJBQL: WHERE clause
  • EJBQL: WHERE clause
  • Using EJBQL - Dynamic Query
  • Using EJBQL - Named Query
  • Summary
7. Entity Relationships
  • Objectives
  • Persistent Data
  • Singleton Mappings
  • Relationships
  • Relationship Usage (Java Side)
  • Cardinality And Direction
  • Entities and Relationships
  • Annotating the Entity: 1-1
  • Inserting A Relationship
  • Table Relationship
  • Cascading
  • Cascade Attributes
  • Bi-directional Relationships
  • Bi-directional Tables
  • Other Relationship Cardinalities
  • 1:M - Java Collections
  • One-to-Many: Java Side
  • Annotating the 1:M
  • Table Relationship
  • Many-To-Many Relationships
  • Annotate the Relationship
  • Many to Many: Java Side
  • Table Relationship
  • Relationships and Queries
  • Fetching Optimizations
  • Lazy vs. Eager Initialization
  • Lazy Initialization
  • Summary
8. Entity Inheritance
  • Objectives
  • Inheritance
  • Inheritance Example
  • Inheritance and Entities
  • Inheritance Strategies
  • Inheritance Strategy 1: Single Table Per Class Hierarchy
  • Single Table Per Class Hierarchy
  • Table Structure: Single Table Per Class Hierarchy
  • Pros and Cons
  • Strategy 2: Table Per Concrete Class
  • Table Per Concrete Class
  • Table Per Concrete Class: JBoss Warning
  • Table Structure: Table Per Concrete Class
  • Table Per Concrete Class: Pros and Cons
  • Strategy 3: Joined Subclasses
  • Joined Subclasses
  • Table Structure: Joined Subclasses
  • Joined Subclasses: Pros and Cons
  • Which Approach To Use?
  • Summary
9. 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
  • The JMS Interfaces
  • 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.jms.MessageListener
  • javax.jms.Message
  • Specialized Message Types
  • Lifecycle
  • Message Driven Bean - Example
  • Message Driven Bean - Client Example (JSP)
  • 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
10. EJB Timer Service
  • Objectives
  • Container Managed Timer Service
  • EJB Timer Service
  • Interaction between Timer Service and EJB
  • Timer Service API
  • The TimerService Interface
  • Obtaining the Timer Service
  • Creating a Timer
  • Getting All Timers
  • The Timeout Callback method
  • The Timer Interface
  • Example: TimerTestBean
  • Timer and Transaction
  • Limitations of EJB Timer Service
  • Summary
11. Transactions
  • Objectives
  • Need for Transactions
  • Transactions
  • ACID Properties
  • Transaction Components
  • Distributed Transactions
  • Distributed Transaction Components - Two Phase Commit
  • Java Transaction API (JTA)
  • Object Transaction
  • EJB Transaction Basics
  • Transaction Propagation
  • Transaction Outcome
  • Container Managed Transaction
  • Container Managed Transaction - Example
  • Transaction Attributes Support
  • Bean Managed Transaction
  • Bean Managed Transaction - Example
  • Client Managed Transaction
  • Transaction Isolation
  • Isolation Level
  • Summary
12. EJB Security
  • Objectives
  • Introduction
  • How EJB Security Works
  • Protecting Web Resources
  • Setting Method Permission
  • Defining Roles
  • Specify Methods Permission
  • Disable Security Check
  • Excludes List
  • Security Identity (Delegation Policy)
  • Programmatic EJB Security
  • Declaring Roles Using Annotations
  • Declaring Roles Using Deployment Descriptor
  • Summary
13. Interceptors
  • Objectives
  • Introduction
  • Interceptors
  • Internal Interceptor
  • Example: Internal Interceptor
  • External Interceptors
  • Default Interceptor - Example
  • Another Example
  • Class-Level Interceptor - Example
  • Setting Class Level Interceptors
  • Pre & Post Processing with Interceptors - Example
  • Excluding Default and Class Level Interceptors
  • Interceptors on Lifecycle Callbacks
  • Blocking Calls to Business Method Example
  • Summary
14. Web Service Access to EJBs
  • Objectives
  • Web Service and EJBs
  • Operation and Implementation
  • WSDL
  • Typical Development Workflow
  • Advantages of Web Services
  • Web Services and EJB
  • Web Service Clients
  • JAX-RPC Overview
  • JAX-RPC Framework
  • Java to XML Data Conversion
  • Main Goals of JAX-RPC
  • JAX-RPC Server
  • WSDL Overview
  • WSDL Document Tags
  • Web Service EJBs
  • Annotate The Session Bean
  • Annotate the Methods
  • Service Endpoint Interface
  • Package and Deploy
  • Summary
15. EJB Deployment
  • Packaging EJB JAR File
  • The Bean Classes
  • Dependent Classes
  • Business Interfaces
  • Client JAR File
  • The Deployment Descriptor
  • Basic Deployment Descriptor
  • Configuring a Session EJB
  • Configure Assembly Description
  • JBoss EJB Deployment
  • Specify JNDI Name of a EJB
  • Specify Instance Pooling
  • Configure Resources
  • Deploying to JBoss
16. Introduction to EJB Design Patterns
  • Objectives
  • Patterns Overview
  • EJB Design Patterns
  • EJB Design Pattern
  • EJB Layer Patterns
  • Session Fa ade Pattern
  • Common Issues and Mistakes
  • Message Fa ade Pattern
  • Command Pattern
  • Common Issues and Mistakes
  • Summary
17. More EJB Design Patterns
  • Objectives
  • Inter-Tier Data Transfer Patterns
  • Data Transfer Object Pattern
  • Custom Data Transfer Object Pattern
  • Cached RowSet Pattern
  • Common Mistakes and Issues
  • Transaction and Persistence Patterns
  • Version Number Pattern
  • Fast Lane Pattern
  • Read for Update Pattern
  • Summary

Contact Information
WINTRAC INC. - the one stop shopping center for IT training.
16523 S.W. McGwire Ct. Beaverton OR -97007
Phone: (503) 259-0312
Fax: 707-598-2268
Email: sales@wintrac.com

Send mail to webmaster@wintrac.com with questions or comments about this web site.
Copyright © 2008 Wintrac Inc.