Skip Ribbon Commands
Skip to main content

EJB J-330 - J2EE Components: Enterprise JavaBeans


Duration: 4 Days




Delivery Method:

Software Assurance Value:

Microsoft CPE:

Course Information

Course Description

​This course explores the Enterprise JavaBean (EJB) Component Architecture for building multi-tier client/server applications. Student will learn how to write and deploy reusable, distributed components and take advantage of the services offered by the EJB infrastructure.

Topics include EJB containers and the application server, remote and home interfaces, session beans, entity beans, message beans and JMS, bean persistence, transaction processing options, security and deployment.
For an overview of all of our Java training, visit the Java Curriculum page. You will find descriptions of different skill levels and Java platforms (J2SE, J2EE) you may encounter as a Java Developer.

Course Objectives

Course Audience

​Developers who wish to use Enterprise JavaBean components to create distributed intranet and internet applications.

Course Outline

EJB and the J2EE Architecture

  • Evolution of Distributed Computing on the Web
  • The J2EE Solution
  • The Enterprise JavaBean
  • Roles in Enterprise JavaBeans Development
  • EJB Container and Application Server
  • Reference Implementation Services

Getting Started

  • Defining the Bean Class
  • Remote Interface
  • Writing Business Methods
  • Home Interface
  • Compiling
  • Creating the J2EE Application
  • Packaging the Enterprise Bean
  • Deploying the J2EE Application
  • The Client
  • Locating the Bean
  • Create an Enterprise Bean Instance
  • Invoking the Bean's Methods
  • Compiling the Client
  • Deploying the Client
  • Running the Client

The javax.ejb Package

  • The Remote Interface
  • The Home Interface
  • The Local Interface
  • The Local Interface Usage
  • Container Objects
  • SessionBean Interface
  • EntityBean Interface
  • MessageDrivenBean Interface
  • EJB Exceptions
  • EJB Context
  • Three Contexts
  • Other Interfaces

Session Beans

  • A Session Bean
  • What About State?
  • Stateless Session Beans
  • Life Cycle of a Stateless Session Bean
  • Stateful Session Beans
  • Life Cycle of a Stateful Session Bean
  • HttpSessions and Cookies


  • EJB Deployment Process
  • Anatomy of the Deployment Descriptor
  • Structural Data
  • Assembly
  • Environment Entities
  • Compile
  • Bundling

EJB Clients

  • Client Types
  • Web Components
  • The JNDI API
  • Lookup with JNDI
  • PortableRemoteObject.narrow()
  • Using the Bean

Entity Beans

  • An Entity Bean
  • Persistence Models
  • EntityBean Home Interface
  • Finder Methods
  • Primary Key
  • The Component Interface
  • Session Bean Clients
  • Life Cycle of an Entity Bean

Bean-Managed Persistence

  • Why BMP?
  • Create
  • Remove
  • Load
  • Store
  • EjbFindByPrimaryKey and other Finder
  • Methods
  • DBObjects

Container-Managed Persistence

  • Why CMP?
  • Two Layers of Responsibility
  • Coding Conventions in the Abstract Entity
  • Bean
  • Deploying a CMP Bean
  • ejb-jar.xml
  • Proprietary Deployment Descriptors
  • Container-Managed Relationships
  • EJBQL: Finders in CMP
  • Limitations of CMP


  • Transactions in EJB
  • Container-Managed Transactions
  • Transaction Support Attributes
  • Bean-Managed Transactions
  • SessionSynchronization

EJB Security

  • Security Issues
  • Authentication
  • Deploying a Secure Bean
  • Authorization
  • Container-Managed Security
  • Security and Deployment Descriptor
  • Bean-Managed Security
  • Bean-Managed Security and Deployment Descriptor


  • Introduction to JMS Concepts
  • What is JMS?
  • Parent Interfaces and GMD
  • JMS Definitions
  • Message Object
  • Multi-Threading and JMS Exception
  • PTP Domain and Interfaces
  • Pub/Sub Domain and Interfaces
  • JMS Server and Destination
  • Creating the Client
  • Handling the Message
  • Producing the Message

Message-Driven Beans

  • Message-Driven Beans
  • Asynchronous Processing
  • Comparing MDBs
  • MDB Interfaces
  • Deploying MDBs
  • MDB Deployment Descriptor Elements

Appendix A - Supporting Technologies

  • JDBC
  • XML
  • RMI
  • Servlets
  • Database Transaction Isolation Levels
  • The JSP Solution

Course Prerequisites

Before attending this course, students must have completed:
  • J-310, Java Server Pages
    J-320, Java Servlets
Course Schedule
This course is not scheduled yet.