Introduction and Roadmap
Document Scope and Audience
Guide to this Document
Related Documentation
Samples and Tutorials for the EJB Developer
Avitek Medical Records Application (MedRec) and Tutorials
EJB Examples in the WebLogic Server Distribution
Additional EJB Examples Available for Download
New and Changed EJB Features in This Release
Understanding Enterprise JavaBeans
How Do Applications Use EJBs?
Session EJBs Implement Business Logic
Entity EJBs Maintain Persistent Data
Message-Driven Beans Implement Loosely Coupled Business Logic
EJB Anatomy and Environment
What Makes up an EJB?
The EJB Container
EJB Deployment Descriptors
EJBs, Clients, and Application Objects
EJB Communications
WebLogic Server Value-Added EJB Features
Performance-Enhancing Features for WebLogic Server EJBs
CMP Beans Increase Developer Productivity
Reliability and Availability Features
Securing EJBs
Designing Enterprise Java Beans
Choosing the Right Bean Type
Session Beans
Entity Beans
Message-Driven Beans
Persistence Management Alternatives
Use Container-Managed Persistence (CMP) for Productivity and Portability
Use Bean-Managed Persistence (BMP) Only When Necessary
Transaction Design and Management Options
Understanding Transaction Demarcation Strategies and Performance
Transaction Isolation: A Performance vs. Data Consistency Choice
Satisfying Application Requirements with WebLogic Server EJBs
Implementing Enterprise Java Beans
Understanding the EJB Development Process
EJB Development Task Guide
Create a Source Directory
Create EJB Classes and Interfaces
Compile Java Source
Generate Deployment Descriptors
Edit Deployment Descriptors
Generate EJB Wrapper Classes, and Stub and Skeleton Files
Package
Deploy
Solving Problems During Development
WebLogic Server Tools for Developing EJBs
WebLogic Workshop
Administration Console
javac
EJBGen
WebLogic Builder
DDInit
WebLogic Server Ant Utilities
weblogic.Deployer
appc
DDConverter
Comparison of EJB Tool Features
Session EJBs
Stateless Versus Stateful Session Beans
Pooling and Caching for Stateless Session EJBs
Pooling for Stateless Session EJBs
Caching for Stateful Session EJBs
Stateful Session EJB Creation
Stateful Session EJB Passivation
Concurrent Access to Stateful Session Beans
Design Decisions for Session Beans
Choosing Between Stateless and Stateful Beans
Choosing the Optimal Free Pool Setting for Stateless Session Beans
Implementing Session Beans
Entity EJBs
Using Primary Keys
Specifying Primary Keys and Primary Key Classes
Guidelines for Specifying an Entity Bean's Primary Key
Automatically Generating Primary Keys
Using Container Managed Relationships
Specifying Relationship Cardinality in ejb-jar.xml
Relationship Directionality
Using Cascade Delete for Entities in CMRs
Choosing a Concurrency Strategy
Entity Bean Pooling and Caching
Pooling for Entity EJBs
Caching for Entity EJBs
Removing Beans from Cache
Entity EJB Lifecycle Transitions
Controlling Entity Caching
CMP Entity Bean Descriptors Element by Feature
Container-Managed Relationship Elements
Primary Key Elements
Message-Driven EJBs
Pooling for Message-Driven EJBs
How WebLogic Server Processes MDBs
MDBs Support Concurrent Processing for JMS Destinations
Message-Driven Beans Design Decisions
Co-Location and JMS Destination Distribution
Non-Distributed Queues versus Non-Distributed Topics
Ensuring Message Receipt Order
Message Receipt, Acknowledgement and Redelivery
Message-Driven Bean Migratable Service
Implementing Message-Driven Beans
Using the Message-Driven Bean Context
Configuring Message-Driven Beans for Foreign (Non-BEA)
JMS Providers
WebLogic-Specific Configurable Behaviors for MDBs
Configuring Transaction Management Strategy for an MDB
Configuring an MDB to Listen on a JMS Distributed Destination
Reconnecting to a JMS Destination
Configuring a Security Identity for a Message-Driven Bean
Deployment Guidelines for Enterprise Java Beans
Before You Deploy an EJB
Understanding and Performing Deployment Tasks
Deployment Guidelines for EJBs
Deploy EJBs as Part of an Enterprise Application
Deploy EJBs that Call Each Other in the Same Application
Deploy Homogeneously to a Cluster
Redeploying an EJB
Redeploying an Individual EJB Implementation Class
Disabling EJB Deployment Warning Messages
weblogic-ejb-jar.xml
Deployment Descriptor Reference
Document Type Definitions and DOCTYPE Header Information
2.0 weblogic-ejb-jar.xml File Structure
2.0 weblogic-ejb-jar.xml Elements
weblogic-cmp-jar.xml Deployment Descriptor Reference
2.0 weblogic-cmp-jar.xml Deployment Descriptor File Structure
2.0 weblogic-cmp-jar.xml Deployment Descriptor Elements
Function
EJBGen Reference
Running EJBGen
EJBGen Distribution and Examples
Invoking EJBGen
Using Key EJBGen Features
Examples of EJBGen Tag Usage
A Sample Bean File Annotated with EJBGen Tags
Mapping an Entity Bean to Several Tables with EJBGen
Specifying Relationship Caching with EJBGen Tags
Specifying Relationships with EJBGen Tags
EJBGen Tag Reference
EJB Query Language (EJB-QL) and WebLogic Server
EJB QL Requirement for EJB 2.0 Beans
Using the EJB 2.0 WebLogic QL Extension for EJB QL
upper and lower Functions
Using ORDERBY
Using Subqueries
Using Aggregate Functions
Using Queries that Return ResultSets
Using Oracle SELECT HINTS
Properties-Based Methods of the Query Interface
Migrating from WLQL to EJB QL
Known Issue with Implied Cross Products
EJB QL Error-Reporting
Visual Indicator of Error in Query
Multiple Errors Reported after a Single Compilation
appc and ejbc Reference
appc
Advantages of Using appc
appc Syntax
Designating Alternative Deployment Descriptors
appc Options
appc and EJBs
ejbc
Advantages of Using ejbc
ejbc Syntax
ejbc Arguments
ejbc Options
Important Information for EJB 1.1 Users
Writing for RDBMS Persistence for EJB 1.1 CMP
Finder Signature
finder-list Stanza
finder-query Element
Using WebLogic Query Language (WLQL) for EJB 1.1 CMP
WLQL Syntax
WLQL Operators
WLQL Operands
Examples of WLQL Expressions
Using SQL for CMP 1.1 Finder Queries
Tuned EJB 1.1 CMP Updates in WebLogic Server
Using is-modified-method-name to Limit Calls to ejbStore()
5.1 weblogic-ejb-jar.xml Deployment Descriptor File Structure
5.1 weblogic-ejb-jar.xml Deployment Descriptor Elements
caching-descriptor
persistence-descriptor
clustering-descriptor
transaction-descriptor
reference-descriptor
transaction-isolation
security-role-assignment
1.1 weblogic-cmp-jar.xml Deployment Descriptor File Structure
1.1 weblogic-cmp-jar.xml Deployment Descriptor Elements
RDBMS Definition Elements
EJB Field-Mapping Elements
Finder Elements