Download Java 2 Platform, Enterprise Edition (J2EE)

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Java™ 2 Platform,
Enterprise Edition (J2EE)
Mark Hapner
J2EE Lead Architect, Sun Microsystems, Inc.
Bill Shannon
J2EE Platform Architect, Sun Microsystems, Inc.
J1-680, Hapner/Shannon
1
Agenda
• The Vision
– Why another Java™ 2 Platform?
– What is the purpose of J2EE Containers?
• The Platform
– Why does J2EE focus on deployment?
– What exactly is in J2EE?
J1-680, Hapner/Shannon
2
A Short History of
Java Enterprise Technology
J1-680, Hapner/Shannon
3
The Java™ Platform
Where Have We Been?
Where Are We Going?
Year 1
• JDK All
Things to
Everyone
J1-680, Hapner/Shannon
Year 2
• JDK “All
Things to the
Enterprise”
• Early
Development
of Consumer
Java
• Early
Development
of “Enterprise”
APIs”
Year 3
• Micro
Edition
• Standard
Edition
• Enterprise
Edition
4
Java 2 Platforms
Java Technology
Enabled Devices
J1-680, Hapner/Shannon
Java Technology
Enabled Desktop
Workgroup
Server
High-End
Server
5
Why another Java™ 2 Platform?
J1-680, Hapner/Shannon
6
The Global Enterprise
D
EIS Tier
Middle-Tiers
Clients
J1-680, Hapner/Shannon
D
D
ERP Systems
DBMSs
Enterprise
Services
Device
7
Enterprise Services Require
• Concurrency
(multi user)
• Scalability
• Administration
• Consistency
(Transactions)
• EIS Integration
• Security
• Distribution
• Availability
J1-680, Hapner/Shannon
8
The Java™ 2 Platform,
Enterprise Edition
• Develop
– With the J2EE App Model
• Deploy
– With the J2EE App unit
• Run
– On the J2EE Platform
J1-680, Hapner/Shannon
9
J2EE Platform
J1-680, Hapner/Shannon
10
What is the purpose of J2EE
Containers?
J1-680, Hapner/Shannon
11
J2EE Platform
HTTP/
HTTPS
JavaMail
JAF
JDBC
JMS
JAF
JNDI
JavaMail
JTA
JMS
App Client
Container
App
Client
JNDI
J2SE
EJB
RMI
RMI/IIOP
Servlet
JSP
JDBC
HTTP/
HTTPS
EJB Container
RMI/IIOP
Applet
Web Container
JTA
Applet Container
J2SE
J2SE
JDBC
RMI/IIOP
JMS
JNDI
RMI
J2SE
Database
J1-680, Hapner/Shannon
12
Containers and Components
• The container is the car
• The component is the driver
• The container is the platform
• The component is your application
J1-680, Hapner/Shannon
13
J2EE Containers
• Containers do their work invisibly
– No complicated APIs
– They control by interposition
• Containers implement J2EE
– Look the same to components
– Have great freedom to innovate
J1-680, Hapner/Shannon
14
J2EE Containers Handle
• Concurrency
(multi user)
• Scalability
• Administration
• Consistency
(Transactions)
• Integration
• Security
• Distribution
• Availability
J1-680, Hapner/Shannon
15
J2EE Components Handle
• Presentation
• Business logic
• Data access
J1-680, Hapner/Shannon
16
Container Perspectives
• To a J2EE vendor
– It is their product
• To a component developer
– It is a standard app model
• To an app assembler
– It is a standard app package
• To an executing component
– It is god
J1-680, Hapner/Shannon
17
Why Does J2EE Focus on
Deployment?
J1-680, Hapner/Shannon
18
Application Packaging
EJB
EJB
Module
EJB
1
1
DD
DD
Web Client
Module
2
APP
DD
EJB
WEB
2
WEB
DD
DD
Application
Client Module
3
DD
J1-680, Hapner/Shannon
3
Deployment
Tool
DD
19
Application Life Cycle
Creation
Created by
Component
Developer
Assembly
Assembled
J2EE Modules and Augmented
by Application
Assembler
Deployment
J2EE APP
Processed
by Deployer
Deploy
J2EE Container
Enterprise
Components
J1-680, Hapner/Shannon
20
The Deployer
• Is an expert in the operational
environment
– Familiar with local security practices
– Familiar with local EIS configuration
– Familiar with local containers and their apps
• Uses J2EE platform product tools
J1-680, Hapner/Shannon
21
Deployer’s Responsibility
• Configure environment
– Set application configuration parameters
– Resolve external references
• To EJBs
• To Resource Factories
• To URLs
J1-680, Hapner/Shannon
22
Deployer’s Responsibility
• Assign Security
–
–
–
–
J1-680, Hapner/Shannon
Map logical roles to user population
Set up authorization
Choose authentication mechanisms
Provide authentication data for resource access
23
Deployment Tools
• Provided by the J2EE platform
product vendor
• Support the operations described earlier
• Tools will vary in sophistication
– Ease of use
– Customization capabilities
– Application assembly features
J1-680, Hapner/Shannon
24
Deployment Summary
• Apps may be written without knowledge
of the operational environment
• Deployment Descriptor communicates
app’s needs
• A key interface between application
developer and platform
J1-680, Hapner/Shannon
25
What Exactly Is in J2EE?
J1-680, Hapner/Shannon
26
J2EE API Summary
• J2SE 1.2
• JNDI 1.2
• JDBC™ 2.0
• JTA 1.0
• RMI/IIOP 1.0
• JMS 1.0
• EJB 1.1
• JavaMail™ 1.1
• Servlet 2.2
• JAF 1.0
• JSP 1.1
J1-680, Hapner/Shannon
27
J2EE Standards
• TCP/IP
• HTTP 1.0
• HTML 3.2
• SSL 3.0
• IIOP 1.0
J1-680, Hapner/Shannon
28
The Java™ 2 Platform,
Enterprise Edition
• Platform Specification
– Defines J2EE requirements
• Compatibility Test Suite
– Validates J2EE platform compatibility
• Reference Implementation
– Operational J2EE platform
• Application Programming Model
– Describes how to build J2EE applications
J1-680, Hapner/Shannon
29
Status and Schedule
• J2EE Platform Spec
– Public Draft
– Public Release
– Final Release
June 15
July 1999
December 1999
• J2EE RI & CTS
– Beta
– FCS
September 1999
December 1999
• J2EE APM document
– Public Draft
– Sample App Beta
J1-680, Hapner/Shannon
August 1999
August 1999
30
How Have We Done?
• What exactly is in J2EE?
• Why does J2EE focus on deployment?
• What is the purpose of J2EE Containers?
• Why another Java™ 2 Platform?
J1-680, Hapner/Shannon
31
More Information
• http://java.sun.com/j2ee
J1-680, Hapner/Shannon
32
J1-680, Hapner/Shannon
33