Skip Headers
Oracle Application Server Containers for J2EE Enterprise JavaBeans Developer's Guide
10
g
(9.0.4)
Part Number B10324-01
Home
Index
Contents
Title and Copyright Information
Send Us Your Comments
Preface
1 EJB Overview
New Features of EJB 2.0
Local Interface Support
Home Interface Business Methods
Message-Driven Beans
Enterprise JavaBeans Query Language (EJB QL)
CMP Relationships
CORBA Support - RMI-over-IIOP
Changes in Defaults for Oracle Application Server 10
g
Invoking Enterprise JavaBeans
Implementing an EJB
Bean Implementation
Parameter Passing
Parameter Objects
Types of EJBs
Session Beans
Entity Beans
Message-Driven Beans
Difference Between Session and Entity Beans
Container Services for EJBs
2 EJB Primer
Develop EJBs
Create the Development Directory
Implement the EJB
Access the EJB
Create the Deployment Descriptor
Archive the EJB Application
Prepare the EJB Application for Assembly
Modify the Application.XML File
Create the EAR File
Deploy the Enterprise Application to OC4J
3 CMP Entity Beans
Entity Bean Overview
Transaction Requirements
Creating Entity Beans
Home Interface
Component Interfaces
Entity Bean Class
Primary Key
Defining the Primary Key in a Class
Defining an Auto-Generated Primary Key
Persistence Fields
Default Mapping of Persistent Fields to the Database
Explicit Mapping of Persistent Fields to the Database
Converstion of CMP Types to Database Types
Simple Data Types
Serializable Classes
Other Entity Beans or Collections
4 Entity Relationship Mapping
Transaction Requirements
Defining Entity-To-Entity Relationships
Choosing Cardinality and Direction
Requirements in Defining Relationships
Mapping Object Relationship Fields to the Database
Default Mapping of Relationship Fields to the Database
Explicit Mapping of Relationship Fields to the Database
Using a Foreign Key in a Composite Primary Key
How to Override a Foreign Key Database Constraint
5 EJB Query Language
EJB QL Overview
Query Methods Overview
Finder Methods
Select Methods
Deployment Descriptor Semantics
Finder Method Example
Specifying Finder Methods With EJB QL Syntax
Specifying Finder Methods With OC4J-Specific Syntax
Select Method Example
Oracle EJB QL Type Extensions: Date, Time, Timestamp, and SQRT
6 BMP Entity Beans
Creating BMP Entity Beans
Component and Home Interfaces
BMP Entity Bean Implementation
The ejbCreate Implementation
The ejbFindByPrimaryKey Implementation
Other Finder Methods
The ejbStore Implementation
The ejbLoad Implementation
The ejbPassivate Implementation
The ejbActivate Implementation
The ejbRemove Implementation
Modify XML Deployment Descriptors
Create Database Table and Columns for Entity Data
7 Message-Driven Beans
MDB Overview
MDB Example
MDB Implementation Example
EJB Deployment Descriptor (ejb-jar.xml) for the MDB
MDB Using OC4J JMS
Configure OC4J JMS in the XML files
Create the OC4J-Specific Deployment Descriptor (orion-ejb-jar.xml) to Use OC4J JMS
Deploying the MDB
MDB Using Oracle JMS
Install and Configure the JMS Provider
Configure the OC4J XML Files for the JMS Provider
Create the OC4J-Specific Deployment Descriptor to Use Oracle JMS
Deploy the MDB
Client Access of MDB
Using an Explicit Name for the JNDI Lookup
Using a Logical Name When Client Accesses the MDB
Windows Considerations When Using MDBs
Failover Scenarios When Using a RAC Database
8 Configuring EJB Application Security
Granting Permissions in Browser
Authenticating and Authorizing EJB Applications
Specifying Users and Groups
Specifying Logical Roles in the EJB Deployment Descriptor
Specifying Unchecked Security for EJB Methods
Specifying the runAs Security Identity
Mapping Logical Roles to Users and Groups
Specifying a Default Role Mapping for Undefined Methods
Specifying Users and Groups by the Client
Specifying Credentials in EJB Clients
Credentials in JNDI Properties
Credentials in the InitialContext
9 Advanced EJB Subjects
Sharing Classes
EJB Lifecycle Issues
When Does Stateful Session Bean Passivation Occur?
Configuring Pool Sizes For Entity Beans
Configuring Lazy Loading on CMP Entity Bean Finder Methods
Techniques for Updating Persistence
Entity Bean Concurrency and Database Isolation Modes
Database Isolation Modes
Entity Bean Concurrency Modes
Exclusive Write Access to the Database
Effects of the Combination of the Database Isolation and Bean Concurrency Modes
Affects of Concurrency Modes on Clustering
Configuring Environment References
Environment variables
Environment References To Other Enterprise JavaBeans
Environment References To Resource Manager Connection Factory References
Troubleshooting Common Errors
Out Of Memory Error During Deployment
Out of Memory During Execution
NamingException Thrown
Deadlock Conditions
ClassCastException
NullPointerException Thrown From Remote EJB
10 EJB Clustering
EJB Clustering Overview
Stateless Session Clustering
Stateful Session Bean Clustering
Combination of HTTP and EJB Clustering
Enabling Clustering For EJBs
Configure the Multicast Address for EJB Clustering
Configure EJB Replication for Stateful Session Beans
EJB Clustering Includes JNDI Namespace Replication
Load Balancing Options
Load Balancing Using Static Retrieval
DNS Load Balancing
11 Active Components for Java
Advantages of AC4J
AC4J Architecture Overview
AC4J Components Overview
Active EJBs
Interaction
Process
Reaction
AC4J Data Tokens
Data Bus
Installing and Configuring AC4J and the Database
Data Source Configuration
AC4J Example
Running the Example
Collecting the Response
Rerunning the Client
Explanation of the Example
Overview of Steps
Step 1: Client Sends an Asynchronous Request to the Purchase Order Service Active EJB
Step 2: Purchase Order Service Active EJB Processes the Client's takeOrder Request
Step 3: Purchase Order Service Active EJB Processes the processOrder Request
Step 4: Inventory and Credit Service Active EJBs Process Requests and Make Asynchronous Responses
Step 5: Asynchronous Responses Are Processed by the processOrderCallback Reaction
Step 6: Client Receives Purchase Order Number Asynchronously and Polls for Purchase Order Status
AC4J Active EJB Deployment
A OC4J-Specific DTD Reference
OC4J-Specific Deployment Descriptor for EJBs
Enterprise Beans Section
Assembly Descriptor Section
Element Description
B EJB 1.1 CMP Entity Beans
Creating Entity Beans
Home Interface
Remote Interface
Entity Bean Class
Persistent Data
Primary Key
Deploying the Entity Bean
Advanced CMP Entity Beans
EJB 1.1 Advanced Finder Methods
EJB 1.1 Object-Relational Mapping of Persistent Fields
C Migration From EJB 1.1 to EJB 2.0 Container Managed Persistence
Introduction to Migrating EJB 1.1 Applications to EJB 2.0
Use EJB 2.0 Deployment Descriptor Identification
Use Abstract Bean Implementations
Use Standard EJB 2.0 Relationships
Use Local Interfaces for Beans with Relationships
Use EJB Query Language (EJBQL)
Conclusion
D Third Party Licenses
Apache HTTP Server
The Apache Software License
Apache JServ
Apache JServ Public License
Index
Copyright © 2002, 2003 Oracle Corporation.
All Rights Reserved.
Home
Index