J2EE and Enterprise JavaBeans with BEA WebLogic Server
The roles of responsibility for architecting and developing distributed transactional systems are daunting: domain expertise, databases, networking and distributed processing, transaction processing, security and more. We rely on application servers to help us build these systems, but that requires application server specific expertise. The Java 2 Enterprise Edition (J2EE) is a series of APIs and technologies, which allow us to build these in an application server independent fashion. The Enterprise Java Bean (EJB) technology allows us to separate the business rules from the deployment, security and transactional issues making it simple to designate them without complex programming. This course is an advanced skill series that will bring your staff up to speed quickly on all of the J2EE APIs: EJB, JDBC, RMI, JNDI, JTA, WAP, WML, Servlets/JSP, etc. In addition to these skills, we cover many important architectural issues for building scalable distributed applications.
Audience
Participates who wish to gain an understanding and mastery in building and deploying distributed transactional systems in Java.
Prerequisites
Basic Java programming and SQL
Duration : Weeks
Week 1: Introduction to Java 2 Enterprise Edition (J2EE) and EJB
J2EE Architecture
EJB, RMI, JNDI, JMS, JTA, JINI, WAP, WML, JDBC, Servlets/JSP, Applet, XML
Multi-Tier Distributed Transactional Systems
Remote Method Invocation (RMI):
Coding Remote Interface, Home Interface, Remote Interface Implementation, and Client
Putting It All Together and Running the Application
Java Security and Policy
JDBC and Accessing SQL Databases
Drivers and Connections
Statements, Prepared Statements, Callable Statements, Stored Procedure Calls
Setting Up Oracle 8i ; Create tables, sequence, stored procedures; Insert sample data to Oracle
Week 2: Distributed Java Objects
Getting Started with BEA WebLogic Server 8.1: features and administration
Getting Started with EJB
Coding Remote Interface, Home Interface, Enterprise JavaBean class, and Client
Compiling and deploying EJB classes
Coding client class and run the application
Understanding Distributed Objects
Benefits and Limitations of Distributed Objects
Object Request Brokers and Name Servers
Transport Mechanisms (JRMP vs. IIOP); RMI over IIOP
Java and CORBA; EJB and CORBA
Technology Comparison: COM+, CORBA, RMI
JNDI: Java Naming and Directory Services
Binding and Locating Services
Relationships and Comparisons to other Naming Services: LDAP, COS , RMI
Issues in Systems Architectures
Reusable Business Components; Location of Services; Transaction Contexts
Database Mapping; Authentication and Integrity
Week 3: Session Beans
EJB Overview
What is EJB? Roles of Responsibility; Session vs. Entity EJB;
The EJB Server Model; EJB Containers
Session Beans
Design and Creation; Life Cycle; State Issues
Stored Procedures Mutate to Session Beans
Example: Pizza to Go (Pizza2Go) project
Stateless Session Beans
Example: Pizza Services, Order Services, and Outlet Services
The Stateless Front End
Putting It All Together: compiling, deploying the EJB classes, and running the application
EJB Deployment Descriptors
Access Control Lists; Control Descriptors; Identity Prorogation Transaction Scope;
Transaction Isolation Level; Creating EJB Jar Files
Stateful Session Beans
Example: Stateful Order Services
Calling Beans by Reference and other supporting methods
Stateful Client's View; Setting It Up
Week 4: Entity Beans
Entity Beans
More on Transactions
The Primary Key of an Entity Bean: Finder Methods
The Home Interface; Entity Bean Lifecycle
Container Managed Entity Beans
Order Master: The Home Interface and Remote Interface
Order Detail; The Client's View; Deploying Entity Beans
Bean Managed Entity Beans
Implementing Finder Methods in Bean-Managed Persistence
The Remote Interface and Bean Implementation
Client Use of the BMP Bean
Deploying the application
Design issues and Restrictions
Course Project: Online Trading System
Stock Client, Stock Remote Interface; Stock Home Interface; Stock Bean
Week 5: Java Messaging Services (JMS) and Java Transaction API (JTA)
JTA: Java Transaction Services
Overview of Transaction Processing
Two Phase Commit
User Transactions
Bean Managed Transactions
JMS: Java Messaging Service
Message Oriented Middleware
Providers, Messages and Domains
Point-to-Point Messaging
Publish/Subscribe Messaging
Understanding HTTP
HTML based Clients; Java based HTTP Clients / HTTP Tunneling
Servlets as EJB clients; Java Server Pages (JSP)
System Tuning
Resource Management; Thread and Connection pooling; Load Balancing; Fault Tolerance
Week 6: Wireless and Security
Wireless
Wireless Application Protocol ( WAP )
The Mobile Operators and Design Considerations
Wireless Markup Language ( WML )
The Pizza WAPplication
Security
Authentication
Secure Socket Layer ( SSL ): One-Way SSL; Two-Way SSL
HTTP Authentication; Form-Based Authentication; Cookies; URL Rewriting
Authorization
Access Control List ( ACL ): URL-Based ACLs and User-Defined ACLs
Security Realms
Caching Realm. LDAP Realm, UNIX Realm, NT Realm, RDBMS Realm
Securing the WebLogic Server
Designing for Enterprise JavaBeans
Textbook
(1) Required: Professional EJB
by P G Sarang; Wrox Press Inc; ISBN: 1861005083 (July, 2001)
(2) Optional: Enterprise Javabeans ( 3rd Edition, Oct. 2001)
by Richard Monson-Haefel ; O'Reilly & Associates; ISBN: 0596002262
|