Audience
This course is for Java programmers who wish to use Enterprise Java Beans to develop distributed intranet and internet applications in the Oracle WebLogic AppServer.
Prerequisites
Delegates should have Java programming and development experience. Familiarity with JavaBeans, RMI, JDBC, Servlets and XML is useful.
This knowledge may be obtained from our Java Programming and XML Introduction courses.
Duration
4 days. Hands on.
Course Objectives
This intensive course explores the Enterprise Java Bean (EJB) Component Architecture for building multi-tier internet applications.
On completion of the course delegates will be able to:
- Write and deploy reusable, distributed components.
- Take advantage of the services provided by the Oracle WebLogic AppServer (formerly BEA WebLogic).
Course Content
EJB and the Java EE Architecture
Evolution of Distributed Computing on the Web.
The Java EE Solution.
The Enterprise JavaBean.
Roles in Enterprise JavaBeans Development.
EJB Container and Application Server.
Getting Started
Defining the Bean Class.
Remote Interface.
Writing Business Methods.
Home Interface.
Building with ANT.
Deployment.
Configured Deployment.
Automatic Deploy and Hot Deploy.
The Client.
Locating the Bean.
Creating an Enterprise Bean Instance.
Invoking the Bean's Methods.
Compiling and Running the Client Code.
The javax.ejb Package
The Remote Interface.
The Home Interface.
The Local Interface.
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.
Lifecycle of a Stateless Session Bean.
Stateless Deployment Descriptors.
Stateful Session Beans.
Lifecycle of a Stateful Session Bean.
Stateful Deployment Descriptors.
HttpSessions and Cookies.
Deployment and Deployment Descriptors
Web Application Structure.
Deploying a WebLogic Web Application.
Packaging an Enterprise Application.
EJB Deployment Process.
The Deployment Descriptor.
Structural Data.
Assembly.
weblogic-ejb-jar.xml.
weblogic-cmp-jar.xml.
Compile.
Bundling.
EJB Clients
Client Types.
Deploying a Web Application.
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.
Lifecycle of an Entity Bean.
Entity Beans and Local Interfaces.
Bean-Managed Persistence
Why BMP?
Create a Connection Pool.
Create a Datasource.
Create.
Remove.
Load.
Store.
EjbFindByPrimaryKey and other Finder Methods.
BMP Deployment Descriptors.
Container-Managed Persistence
Why CMP?
Two Layers of Responsibility.
Coding Conventions in the Abstract Entity Bean.
ejb-jar.xml.
weblogic-ejb-jar.xml.
weblogic-cmp-jar.xml.
Container-Managed Relationships.
Types of CMP Relationships.
EJBQL: Finders in CMP.
Cascading Delete.
Automatic Primary Key Generation.
Limitations of CMP.
Transactions
Transactions in EJB.
Container-Managed Transactions.
Transaction Support Attributes.
Bean-Managed Transactions.
Session Synchronization.
EJB Security
Security Issues.
Authentication.
Authorization.
Securing Web Applications.
Security and Deployment Descriptor.
Bean-Managed Security.
Bean-Managed Security and Deployment Descriptor.
JMSM
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 Setup.
JMS Destination and ConnectionFactory.
Creating the Subscriber.
Handling the Message.
Producing the Message.
Message Driven Beans
Message Driven Beans.
Asynchronous Processing.
Comparing MDBs.
MDB Interfaces.
MDB Deployment Descriptor Elements.
Appendix - Supporting Technologies
JDBC.
Database Transaction Isolation Levels.
XML.
RMI.
Servlets.
The JSP Solution.