Professional Documents
Culture Documents
Technology Consulting
Pramati Technologies
Agenda
• The Changing Landscape
• Introduction to J2EE
• J2EE Components
• Containers
• Services
• Connectors
• JMS
• J2EE 1.2 Vs J2EE 1.3
The Changing Landscape
Internet LAN
Web
Server
Database
Server
Rising Complexity
state mgmt
distributed txn
load balancing
failure recovery
multi-thread
connection mgmt
high availability
Application complexity
security
shared db
concurrency
single user
Client Client
Internet LAN
Web
Server
Application Database
Server Server
Multi-tier Revisited
Presentation
Presentation Logic
Logic
Business
Business Logic
Logic
Data
Data Access
Access Logic
Logic
J2EE Architecture
J2EE application model
Deployment Units
• Enterprise JavaBeans modules
– contain class files for enterprise beans and an EJB deployment descriptor.
– packaged as JAR files
• Web modules
– contain JSP files, class files for servlets, GIF and HTML files, and a Web
deployment descriptor.
– Web modules are packaged as WAR files
• Application client modules
– contain class files and an application client deployment descriptor
– packaged as JAR files
Transaction Services
• Transactions – ACID property
– Atomicity
– Consistency
– Isolation
– Durability
• J2EE transactions are flat
• J2EE platform implicitly handles many transaction
details,
– Transaction propagation
– coordinating among multiple transaction managers.
Transaction Services
EJB Transactions
• Bean Managed Transaction Demarcation
– EJB manages all aspects of transaction
• Container Managed Transaction Demarcation
– Container container handles transaction management
– based on the Application Assembler’s deployment instructions
• Entity Beans can use only Container Managed
Transaction Demarcation
Security Services
Security Methodologies
• Declarative security
• Programmatic security
Security Services
• Authentication
– entity must establish its identity through authentication.
– typically does so by providing authentication data
– entity that can be authenticated is called a principal.
– principal can be a user or another program
• Types of Authentication
– Basic
– Digest
– Form Based
– Certificate
Security Services
• Authorization
– system determines whether the principal is authorized to access
resources based on the security policies
• Security role - logical grouping of users that is
defined by an Application Component Provider or
Application Assembler.
• Each security role is mapped by a Deployer to
principals in the deployment environment.
• Control access to an enterprise bean’s methods by
specifying the method-permission
Service Technologies
• JDBC API
– provides database-independent connectivity between the
J2EE platform and a wide range of tabular data sources.
– Perform connection and authentication to a database
server
– Manage transactions
– Move SQL statements to a database engine for
preprocessing and execution
– Execute stored procedures
– Inspect and modify the results from Select statements
Service Technologies
• JNDI
– Provides naming and directory functionality.
– JNDI is independent of any specific implementations,
applications can use JNDI to access existing naming
and directory services.
• Connector Architecture
– Standard API for connecting the J2EE platform to
enterprise information systems
Communication Technologies
Requirements
• J2EE applications to connect to legacy systems using
CORBA or low-level Socket interfaces.
• J2EE applications to connect to other J2EE applications
across multiple J2EE products, whether from different
Product Providers or from the same Provider, and multiple
J2EE platforms.
Interoperability
Connectors
C
O
Application N
N
Server E
C
T
O
R IBM
S
Database
Connectors - salient features
• Connectors sit beneath the J2EE platform
• Define a portable service API to plug into existing
enterprise vendor offerings
• Provide standard client API
Where it all fits together ?
Platform Roles
Bean System
Assembler Deployer
Developer Administrator
Container
Provider
Tools
Provider
J2EE Product Provider
JMS
Send Receive
JMS
Application
Application Topic
Application
JMS
Publish Subscribe
JMS