WA1048 EJB Programming with WebSphere Studio Application Developer V4
Course Outline |
|
| 1. Introduction to WSAD |
|
- WSAD Family
- Perspectives and Views
- Java perspective
- Web perspective
- J2EE perspective
- XML perspective
- Data perspective
- Server perspective
- Debug perspective
- Help perspective
- J2EE and Web Tooling
- XML Tooling
- Data Tooling
|
|
| 2. Introduction to Web Applications |
|
- 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
- IBM WebSphere product family
- WebSphere Studio Application Developer (WSAD)
- WebSphere Application Server
- WebSphere editions
- Web application development and deployment using WSAD
- EAR projects
- EJB projects
- WSAD testing environment
- Server perspective
- Resources configuration
- Debug mode
- JNDI explorer
- J2EE, data, Web and XML tooling
- Performance and trace tooling
- Team development
|
|
| 3. 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
- WebSphere EJB server architecture overview
- WebSphere EJB server environment
|
|
| 4. 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
- WSAD J2EE development environment
- Developing a session bean using WSAD
- Adding an EJB project
- Adding a session EJB
- Adding fields to the bean
- Adding methods to the bean
- Adding business methods to the bean
- Writing life cycle methods
- Promoting methods to remote and home interface
- Deploying EJBs
- Setting deployment descriptor
- Generating deployed Code
- WebSphere Test Environment
- Run on the server
- Testing EJBs with the EJB test client in WSAD
|
|
| 5. Entity Beans |
|
- Entity beans
- Entity beans components
- Container
- Primary key class
- 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
- 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
- Mapping design in WSAD
- Meet-in-the-middle
- A CMP entity bean example
- Adding CMP fields in the bean
- Creating a top-down database mapping
- Adding a BMP entity EJB
- Setting deployment descriptors
- EJB extension editor (ibm-ejb-jar-bnd.xmi, ibm-ejb-jar-ext.xmi)
- Map editor (Map.mapxmi)
|
|
| 6. EJB Exception |
|
- Use of Exception
- Exception types
- System Exception
- Application Exception
- Bean class
- Container
- Client
- Standard Exceptions
|
|
| 7. EJB Transaction |
|
- 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
|
|
| 8. Security |
|
- Goals of the EJB Security specification
- Declarative EJB security
- EJB Delegation Policy
- Programmatic EJB security
|
|
| 9. Advanced Concepts |
|
- Session beans
- Stateful session beans
- Session bean from servlet
- Session bean pooling
- Entity beans
- CMP custom finder
- Select custom finder
- Where custom finder
- Method custom finder
- CMP EJB maintenance
- Meet-in-the-middle CMP
- CMP pooling
- Using access beans
- Access beans
- Access bean constructor
- Generating access beans
- Access bean examples
- Connection pooling with EJBs
- Best practices for EJB development
|
|
| 10. EJB Deployment |
|
- WebSphere Environment
- WebSphere HTTP Server plug-in
- WebSphere Administrative Server
- User interface
- WebSphere troubleshooting
- Workload management and scaling
- Enterprise JavaBean
- Overview
- Deployment descriptors
- Bean developer entries
- Application assembler entries
- EAR file
- JAR file
- Install applications
- Configure applications
- Update applications
|
|
| 11. J2EE Design Patterns |
|
- What is a design pattern?
- Types of design patterns
- J2EE design patterns and their applicability
- Session facade
- Value object
- Data access object
- Examples
|
|
| Appendix A. Team Development and Performance Tooling |
|
| Appendix B. Managing multi-server environments |
|
| Appendix C. Application tracing and trouble-shooting |
|