1. Introduction to J2EE and JBoss AS |
|
- Java Web applications
- Java Web application architecture
- J2EE architecture
- Web application programming model - MVC
- A scenario of using MVC
- Typical services provided by application servers
- Web application development and deployment
- EAR projects
- EJB projects
|
|
2. Overview |
|
- Needs for EJB
- Distributed computing
- Distributed transaction
- Distributed security
- What are EJBs ?
- Main characteristics of EJBs
- Foundational technologies of EJBs
- EJB architecture components
- EJB client
- EJB JAR file
- EJB server
- EJB container
- Enterprise JavaBeans
- Session beans
- Entity beans
- EJB classes and interfaces
- Basic components of entity and session beans
- EJB home interface
- An EJB home interface example
- EJB home object
- EJB remote interfaces
- Remote interface example
- EJB objects
- EJB implementation class
- Deployment descriptors
- How do EJBs work
- EJB container services
- EJB application development
- Deploying enterprise beans
- Major components of deployed EJBs
|
|
3. Session Beans |
|
- Session beans
- Stateless session beans
- Stateful session beans
- Components of session beans
- Home interface for session beans
- Remote interfaces for session beans
- The session bean class
- The ejbCreate() method
- Business methods
- Deployment descriptors
- ejb-jar.xml
- ibm-ejb-jar-bnd.xmi
- A simple stateless bean example
- A simple stateful bean example
- The session context
- Session bean life cycle
- Concurrency issues
- Invoking session beans from a client application
- Looking up a home object
- Create an EJB object
- Calling business methods
|
|
4. Entity Beans |
|
- Entity beans
- Entity beans components
- Container
- Primary key class
- Home interface
- Local Home Interface
- Remote interface
- Entity bean class
- Entity instance
- Entity object life cycle
- Bean instance life cycle
- Persistence
- Bean-managed persistence (BMP)
- Writing a BMP bean
- A BMP bean example
- Container-managed persistence (CMP)
- Writing a CMP bean
- A CMP bean example
- Finder helpers
- EJB Query Language
- EJBQL: SELECT, FROM and WHERE Clauses
- Indicating persistent fields
- Business methods
- Entity context
- Writing CMP beans
- Object-relational mapping
- Data mapping with BMP
- Standard CMP field mapping
- Defining and mapping CMP fields
|
|
5. Exceptions |
|
- Use of Exception
- Exception types
- System Exception
- Application Exception
- Bean class
- Container
- Client
- Standard Exceptions
|
|
6. Transactions |
|
- Transaction management
- Object transaction
- EJB transaction basics
- Transaction propagation
- Client-managed transaction
- Bean-managed transaction
- Container-managed transaction
- Transaction outcome
- Vetoing transaction
- Transaction isolation
- Isolation level
|
|
7. Security |
|
- Goals of the EJB Security specification
- Declarative EJB security
- EJB Delegation Policy
- Programmatic EJB security
|
|
8. Message-Driven Beans |
|
- The Need for Messaging
- The Java Message Service
- Queues and Topics
- Integration JMS and EJB
- Message-Driven Beans Concepts
- Security, Transactions, Load Balancing
- Poison Messages
- Responding to the Sender
|
|
9. J2EE Best Practices |
|
- Using Session Beans Effectively
- Dealing with Transactions
- Optimizing Your Deployment
- Pooling for Container-Managed Persistence Entity Beans
- Using Access Beans
- JDBC Best Practices
- Java Best Practices
|
|
10. J2EE Design Patterns |
|
- What is a Design Pattern?
- EJB Layer Design Patterns
- Transaction and Persistence Patterns
- Client-Side EJB Interaction Patterns
- Generating Primary Keys
|
|
Appendix A Business Integration Tier Patterns |
|
- Business Delegate
- Data Transfer Object pattern
- Access Bean
- Value Object
- Session Facade
- Composite Entity
- Value Object Assembler
- Value List Handler
- Service Locator
- Data Access Object
- Service Activator
|
|
Appendix B. Introduction to the JBoss Application Server Platform JBoss Server 3.x Features |
|
- JBoss Directory Structure
|
|
Appendix C. Java Connector Architecture (JCA) |
|
- Resource Adapter
- System Contracts
- Outbound Contracts
- Inbound Contracts
- Lifecycle Contracts
- Common Client Interface (CCI)
- Advantages of JCA
- Resource Adapter Packaging
- Connection Management
- Transaction Management
- Transaction Scenario
- Client Interaction
|