Business Component Development With EJBs, Java EE 5, (Self-Study Course)
Prerequisites
- Java Programming Language (CDJ-275-SE6)
- Developing Applications for the Java EE Platform (CDJ-310-EE5)
- Although not required, experience with distributed computing concepts in Java technology is an advantage
- Integrate existing Java code (for example, reuse existing classes created by other team members)
Course Objectives
- Implement business-tier functionality using EJB technology
- Describe best practices and other advanced issues in business component development with EJB technology
- Assemble and deploy EJB technology business-tier components on an application server
- Integrate an EJB technology-based application using the Java Messaging Service API
- Create and use Query objects using the Java Persistence Query Language
Product Description
- Examining EJB Applications
- Introduce the Java Platform, Enterprise Edition (Java EE)
- Examine the Java EE application architecture
- Implementing EJB 3.0 Session Beans
- Create session beans: Essential tasks
- Create session beans: Add life-cycle event handlers
- Package and deploy session beans
- Create a session bean client
- Implementing Entity Classes: The Basics
- Define entity classes: Essential tasks
- Manage the life-cycle of an entity instance
- Define entity beans: Add life-cycle event handlers
- Package and deploy entity classes
- Implementing Entity Classes: Modelling Data Association Relationships
- Examine association relationships in the data and object models
- Use relationship properties to define associations
- Implement unidirectional and bidirectional associations
- Implementing Entity Classes: Modelling Inheritance Relationships
- Examining entity class inheritance
- Inheriting from an entity class
- Inheriting from an abstract entity class
- Inheriting from a non-entity class
- Inheriting using an embedded superclass
- Examining Inheritance mapping strategies
- Define entity classes: Using an embedded class
- Define entity classes: Using a composite primary key
- Using the Java Persistence Query Language (QL)
- Examine the Java Persistence query language
- Create and use the SELECT statement
- Create and use the BULK UPDATE statement
- Create and use the DELETE statement
- Create and use Query objects
- Developing Java EE Applications Using Messaging
- Describe the roles of the participants in the JMS API messaging system
- Write a message producer
- Write an asynchronous message listener
- Write a synchronous message listener
- List the messaging capabilities and limitations of session, entity, and message-driven beans
- Developing Message-Driven Beans
- Describe the properties and life cycle of message-driven beans
- Create a JMS message-driven bean
- Create a non JMS message-driven bean
- Implementing Interceptor Classes and Methods
- Create business interceptor method in the enterprise bean class
- Create an interceptor class
- Associate multiple business interceptor methods with an enterprise bean
- Include life-cycle callback interceptor methods in an interceptor class
- Create entity life-cycle callback methods
- Implementing Transactions
- Describe the transaction demarcation task
- Implement Container-Managed Transactions (CMT)
- Interact programmatically with an ongoing CMT transaction
- Implement Bean-Managed Transactions (BMT)
- Apply transactions to messaging
- Handling Exceptions
- Introduce exceptions in Java EE applications
- Describe the exception path in a Java EE application environment
- Describe EJB container exception handling
- Handle exceptions in an enterprise bean's methods
- Handle exceptions in an enterprise bean's client code
- Review specific issues relating to exception handling in EJB technology applications
- Using Timer Services
- Create a timer callback notification
- Process a timer callback notification
- Manage timer objects
- Implementing Security
- Understand the Java EE security architecture
- Authenticate the caller
- Examine Java EE authorization strategies
- Use declarative authorization
- Use programmatic authorization
- Examine the responsibilities of the deployer
- Using EJB Technology Best Practices
- Define best practices and state the benefits of using EJB technology best practices
- Select and apply known patterns to Java EE application design