1. <Insert Picture Here>
Java EE : The Evolution of a Platform
Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta
Friday, May 13, 2011
2. The following is intended to outline our general product
direction. It is intended for information purposes only,
and may not be incorporated into any contract. It is
not a commitment to deliver any material, code, or
functionality, and should not be relied upon in making
purchasing decisions.
The development, release, and timing of any features
or functionality described for Oracle’s products remains
at the sole discretion of Oracle.
2
Friday, May 13, 2011
3. Java EE 6 Platform
December 10, 2009
3
Friday, May 13, 2011
4. The Core Programming Model Explained
Web Container JSP 2.2
Extensions JAX-RS 1.1 JSF 2.0 JSTL 1.2
CDI
Extensions
Servlet 3.0 / EL 2.2
Bean
DI 1.0 / CDI 1.0 / Interceptors 1.1 / JSR 250 1.1 Validation
1.0
Managed Beans 1.0 EJB 3.1
JPA 2.0 / JTA 1.1
4
Friday, May 13, 2011
5. Top 10 Favorite Features in Java EE 6
10. Web Profile
09. EJB no interface view
08. EJB Timer Service
07. EJBContainer API
06. JSF standardizing on facelets
05. CDI events
04. CDI injection (with no Strings involved)
03. Optional web.xml
02. Servlet and CDI extension points
01. EJB packaging in WAR
5
Friday, May 13, 2011
6. Java EE 6 Sample Application
PrimeFaces
Browser JSF EJB/CDI JPA
Database
REST JPA
Client
Jersey Client
API
6
Friday, May 13, 2011
7. Sample tweet :-)
#Javaone is the best Java conference
in the world. #Oracle rocks!
7
Friday, May 13, 2011
9. Java EE for the Cloud
• Tighter requirements for resource and state management
• Better isolation between applications
• Potential standard APIs for NRDBMS, caching, other
• Common management and monitoring interfaces
• Better packaging
• Evolution, not revolution
9
Friday, May 13, 2011
10. Cloud Platform
Application
Java Persistence Queueing
…
Service Service Service
State Management
Virtualization Layer
10
Friday, May 13, 2011
11. Cloud Platform
Application
Code Code Code QoS
Schema Migration Security …
Module Module Module Information
Java Persistence Queueing
…
Service Service Service
State Management
Virtualization Layer
11
Friday, May 13, 2011
12. Cloud Platform
Application Application Application
Java Persistence Queueing
…
Service Service Service
State Management
Virtualization Layer
12
Friday, May 13, 2011
13. Cloud Platform
Application Application Application Application Application
Java Persistence Queueing
…
Service Service Service
State Management
Virtualization Layer
13
Friday, May 13, 2011
14. Cloud Platform
Managed Environment
Application Application Application Application Application
Java Persistence Queueing
…
Service Service Service
State Management
Virtualization Layer
14
Friday, May 13, 2011
15. Modularity
• Build on Java SE 8 work
• Applications made of modules
• Dependencies are explicit
• Versioning is built-in
• Classloaders straightened out
15
Friday, May 13, 2011
24. Java EE 7 Content (so far)
• Filed and voted ! • Other
– Java EE 7 (JSR 342) – JCache revived (JSR 107)
– JPA 2.1 (JSR 338) – Concurrency Utilities (236)
– JAX-RS 2.0 (JSR 339) – MRs: JSR250, JAX-WS 2.3,
– Servlet 3.1 (JSR 340) JTA 1.2, JSP 2.3, connectors
– JSF 2.2 (JSR 344) • Yet to be filed
– EL 3.0 (JSR 341) – Bean Validation 1.1
– JMS 2.0 (JSR 343) – JSR-330 1.1
– EJB 3.2 (JSR 345) – JSON 1.0
– CDI 1.1 (JSR 346)
All Oracle-led JSRs as open projects on java.net
Publicly viewable, archived expert group mailing list. JIRA, wiki, ...
Ex: http://jpa-spec.java.net
24
Friday, May 13, 2011
25. Java EE 7 - When?
• Late 2012
• Date-driven release
– (anything not ready will be deferred to Java EE 8)
• Participate !
– Expert Groups still forming, consider joining
– JCP membership free for individuals
25
Friday, May 13, 2011
26. Java EE 6 Platform
Available Today
http://www.oracle.com/javaee
26
Friday, May 13, 2011