SlideShare uma empresa Scribd logo
1 de 39
Baixar para ler offline
<Insert Picture Here>




The Java EE 7 Platform: Developing for the Cloud
Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta
The following/preceding 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
The Core Java EE 6 Programming Model


                Web
                                                    JSP 2.2
             Container    JAX-RS 1.1   JSF 2.0
   CDI       Extensions                              EL 1.2
Extensions
                              Servlets 3.0

                                                                Bean
         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



                                                                           3
The Java EE 6 Web Profile 1.0

  Servlets 3.0     JPA 2.0          EJB 3.1     JDBC      StAX

                 Interceptors
    JSF 2.0                         JAX-RS      JNDI     JavaMail
                      1.1
                     Bean
  EJB 3.1 Lite                        JAXB      JMS       JACC
                 Validation1.0

    JSP 2.2        CDI 1.0          JAX-WS      JAXP      SAAJ

                  Managed
    JTA 1.1                         JASPIC     JAX-RPC     ...
                  Beans 1.0




                                 Contributed
                                 by RedHat       New     Updated



                                                                    4
Compatible Java EE 6 Impls

Today:
                             Web Profile Only




Announced:
                                          5
6
9 Reasons why Java EE 6 will save $$

• Prototyping (multiple IDEs)
• Development (~30MB, incremental deployment, ...)
• Production (Variety, Start small/then scale)
• Support (Pick the best one)
• Training (“Only” Java EE 6 APIs)
• Portability (Backwards compatibility)
• Adoption (Growing)
• Freedom of choice (Multiple vendors)
• Plan B (Similar component models)


       http://www.adam-bien.com/roller/abien/entry/8_reasons_why_java_ee


                                                                           7
Jigsaw puzzle,
    From the real users ...                                   Modular, standard, less
                                                              xml, easy, easy, have I
  Developers can concentrate                                  said easy?
  on business logic, Java EE 6 is
  providing a standard for
                                  Standards compliance, vendor
  the infrastructure.
                                  independence, milliseconds
                                  and kilobyte deployment
                                                                      Faster development,
Higher integrated specs,                                              less frameworks, less
simple and annotation driven,                                         complexity, more great
single-classloader WARs,                                              code shipped
next level of industry
standard                             Definite excuse to
                                     avoid Spring forever

                                                                Simplified Java
  Not your fat grandfather's                                    Development, Focus on
  enterprise Java anymore,                                      building great products
  enterprise Java renaissance

                   http://blogs.oracle.com/arungupta/tags/community+feedback


                                                                                           8
Avoid “framework explosion”


   In selecting an application server our main goal
   was to avoid the framework explosion that
   happens when you use a "custom" Enterprise
   stack like Tomcat + Spring + Hibernate +
   Myfaces +... Java EE 6 had 80% of what we
   needed out of the box: strong persistence
   support ( JPA ), inversion of control ( CDI ), and
   a lightweight component model ( EJB 3.1 )


http://blogs.oracle.com/stories/entry/egesa_engineering_avoids_framework_explosion

                                                                                     9
What does Java EE offer to Cloud ?

●
    Containers
●
    Injectable services
●
    Scale to large clusters
●
    Security model
●
    ...




                                         10
Java EE for the Cloud : JSR 342
• More easily operate on private/public clouds
     • Multi-tenancy
     • Elasticity
•   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
                                                   11
Cloud Platform



  Application
  Java      Persistence Queueing
  Service   Service     Service    …
  State Management
  Virtualization Layer




                                       12
Cloud Platform


  Application
   Code   Code   Code                                   QoS
                        Schema   Migration   Security                 …
   Module Module Module                                 Information


  Java             Persistence Queueing
  Service          Service     Service                        …
  State Management
  Virtualization Layer




                                                                          13
Cloud Platform



  Application   Application Application

  Java            Persistence Queueing
  Service         Service     Service     …
  State Management
  Virtualization Layer




                                              14
Cloud Platform



  Application   Application Application Application Application

  Java            Persistence Queueing
  Service         Service     Service             …
  State Management
  Virtualization Layer




                                                                  15
Cloud Platform

           Managed Environment

  Application   Application Application Application Application

  Java            Persistence Queueing
  Service         Service     Service             …
  State Management
  Virtualization Layer




                                                                  16
The Java EE 7 Modularity

• Built on Java SE 8 work
• Applications made of modules
• Dependencies are explicit
• Versioning is built-in
• Classloaders are straightened




                                  17
Modular Applications

 demo-app
   demo-web-1.0.3




                       18
Modular Applications

 demo-app
                    twitter-client-1.0.3
   demo-web-1.0.3
                    demo-persist-1.0.3




                                           19
Modular Applications

 demo-app
                    twitter-client-1.0.3
   demo-web-1.0.3
                    demo-persist-1.0.3



   javaee-web-7.0        jpa-2.1           jax-rs-2.0




                                                        20
Modular Applications

 demo-app
                      twitter-client-1.0.3
    demo-web-1.0.3
                      demo-persist-1.0.3



    javaee-web-7.0         jpa-2.1           jax-rs-2.0




 gf-appserver-4.0.1   eclipselink-2.1.3


                         jersey-2.0.5




                                                          21
Modular Applications

 demo-app
                      twitter-client-1.0.4   jax-rs-2.1.1
    demo-web-1.0.4
                      demo-persist-1.0.3     jersey-2.1.2



    javaee-web-7.0         jpa-2.1




 gf-appserver-4.0.1   eclipselink-2.1.3


                         jersey-2.0.5




                                                            22
Modular Applications

 demo-app
                      twitter-client-1.0.5   jax-rs-2.1.1
    demo-web-1.0.5
                      demo-persist-1.0.3     jax-rs-2.1.1



    javaee-web-7.0         jpa-2.1            jax-rs-2.1.5




 gf-appserver-4.1.2   eclipselink-2.1.3


                         jersey-2.0.5         jersey-2.1.7




                                                             23
Java EE 7 JSR Soup
• Java Persistence API 2.1 – JSR 338
• JAX-RS 2.0 – JSR 339
• Servlets 3.1 – JSR 340
• Expression Language 3.0 – JSR 341
• Java EE 7 – JSR 342
• Java Message Service 2.0 – JSR 343
• Java Server Faces 2.2 – JSR 344
• EJB 3.2 – JSR 345
• CDI 1.1 – JSR 346
• JCache – JSR 107
• ...

                                       24
Servlets 3.1 (JSR 340)
  http://jcp.org/en/jsr/detail?id=340
  http://servlet-spec.java.net



• Cloud support
• Multi-tenancy
  • Security / Session state / Resources isolation
• Asynchronous IO based on NIO2
• Simplified Asynchronous Servlets
• Utilize Java EE concurrency utilities
• Enable support for Web Sockets



                                                     25
JPA 2.1 (JSR 338)
    http://jcp.org/en/jsr/detail?id=338
    http://jpa-spec.java.net

●
    Multi-tenancy
●
    Support for stored procedures, vendor function
●
    Update and Delete Criteria queries, JPQL ↔
    Criteria
●
    Query by Example
●
    Support for schema generation
●
    Persistence Context synchronization control
●
    Dynamic definition of PU
●
    Additional event listeners

                                                     26
EJB 3.2 (JSR 345)
 http://jcp.org/en/jsr/detail?id=345




• Enablement for use in cloud
• Factorization of the EJB technology
  • Interceptors was the first example
  • Container-managed transactions as target
• Alignment with other specifications
• Mark “pruned” technologies as optional
  • EJB 1.x and 2.x entity beans
  • Web service invocation using JAX-RPC



                                               27
JAX-RS 2.0 (JSR 339)
    http://jcp.org/en/jsr/detail?id=339
    http://jax-rs-spec.java.net

●
    Client API
    ●
         Low level using Builder pattern, Higher-level
●
    Hypermedia
●
    MVC Pattern
    ●
         Resource controllers, Pluggable viewing technology
●
    Bean Validation
    ●
         Form or Query parameter validation
●
    Closer integration with @Inject, etc.
●
    Server-side asynchronous request processing
●
    Server-side content negotiation

                                                              28
CDI 1.1 (JSR 346)
 http://www.jcp.org/en/jsr/proposalDetails?id=346




• Global ordering of interceptors and
  decorators
• API for managing built-in contexts
• Embedded mode to startup outside
  Java EE container
• Send Servlet events as CDI events




                                                    29
Expression Language 3.0 (JSR 341)
 http://jcp.org/en/jsr/detail?id=341
 http://el-spec.java.net



• A JSR by itself
• Make EL easier to use outside EE container
  • Simplified to use in Java SE
• EL Context is split into Parsing and
  Evaluation context
• Explicit coercion rules using API
• Criteria-based selection from Collection
• Operators: ==, concat, sizeof
• CDI events for expression evaluation
                                             30
JMS 2.0 (JSR 343)
 http://jcp.org/en/jsr/detail?id=343
 http://jms-spec.java.net



• Long overdue – after 9 years
• Modest scope, major extensions
  deferred to a subsequent revision
• Ease-of-development
• Clarification of relationship with other
  Java EE specs
• New mandatory API for pluggable JMS
  provider

                                             31
Bean Validation 1.1 (JSR TBD)
 http://in.relation.to/Bloggers/JSRBeanValidation11WhatToPutIn




• Integration with other specs
   • JAX-RS: Validate parameters on HTTP calls
   • JAXB: convert into XML schema descriptor
   • JPA: DDL generation
• Method level validation
  public void processOrder(@Valid Order order,
                           @Min(0) @Max(30) int retry) {
  }


• @Valid and group propagation
• Apply constraints on element collection

                                                                 32
JSF 2.2 (JSR 344)
 http://jcp.org/en/jsr/detail?id=344
 http://jsf-spec.java.net



• Ease of development
  • cc:interface is optional
  • JSF lifecycle is CDI aware
  • Runtime configuration options change
• Support implementation of Portlet Bridge
  2.0
• Support for HTML5 features
  • Forms, Heading/Section content model, ...
• New components like FileUpload and
 BackButton
                                                33
Java EE 7 : Technology Refresh

• Ease-of-development: JMS 2.0
• Latest web standards
   • New JSRs: Web Sockets, Java JSON API
   • HTTP Client API (JAX-RS 2.0)
• Possible JSRs inclusion
   • Concurrency Utilities for Java EE (JSR 236)
   • JCache (JSR 107)




                                                   34
Transparency Checklist                     NEW
 http://jcp.org/en/resources/transparency



• EG members names
• EG business reported on publicly
  readable alias
• Schedule is public, current and updated
  regularly
• Public can read/write to a wiki
• Discussion board on jcp.org
• Public read-only issue tracker


                                                  35
Java EE 7 – When ?

• Late 2012
• Date-driven release
   • Anything not ready will be deferred to Java EE 8
• Participate
   • Expert Groups forming
   • Public discussion lists
   • JCP membership free for individuals




                                                   36
GlassFish Server Distributions


Distribution                  License      Features

                                           • Java EE 6 compatibility
GlassFish Server Open         CDDL &       • Web Profile support
Source Edition 3.1            GPLv2        • In-memory replication / clustering
Web Profile
                                           • Centralized Administration

                                           • Java EE 6 compatibility
GlassFish Open Source         CDDL &       • Full Java EE distribution
Edition 3.1                   GPLv2        • In-memory replication / clustering
                                           • Centralized Administration
                                           • Adds
Oracle GlassFish Server 3.1   Commercial        • Oracle GlassFish Server Control
Web Profile                                     • Patches, support, knowledge
                                                base
                                           • Adds
Oracle GlassFish Server 3.1   Commercial        • Oracle GlassFish Server Control
                                                • Patches, support, knowledge
                                                base
References


• oracle.com/javaee
• glassfish.org
• oracle.com/goto/glassfish
• blogs.oracle.com/theaquarium
• youtube.com/GlassFishVideos
• Follow @glassfish




                                 38
<Insert Picture Here>




The Java EE 7 Platform: Developing for the Cloud
Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta

Mais conteúdo relacionado

Mais procurados

Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6Arun Gupta
 
JavaEE 6 and GlassFish v3 at SFJUG
JavaEE 6 and GlassFish v3 at SFJUGJavaEE 6 and GlassFish v3 at SFJUG
JavaEE 6 and GlassFish v3 at SFJUGMarakana Inc.
 
Java EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 India
Java EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 IndiaJava EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 India
Java EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 IndiaArun Gupta
 
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
Java EE 6 & GlassFish = Less Code + More Power at CEJUGJava EE 6 & GlassFish = Less Code + More Power at CEJUG
Java EE 6 & GlassFish = Less Code + More Power at CEJUGArun Gupta
 
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3 Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3 Skills Matter
 
Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010
Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010
Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010Arun Gupta
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Arun Gupta
 
Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Shreedhar Ganapathy
 
Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Arun Gupta
 
Java EE7 Demystified
Java EE7 DemystifiedJava EE7 Demystified
Java EE7 DemystifiedAnkara JUG
 
Sun Java EE 6 Overview
Sun Java EE 6 OverviewSun Java EE 6 Overview
Sun Java EE 6 Overviewsbobde
 
Overview of Java EE 6 by Roberto Chinnici at SFJUG
Overview of Java EE 6 by Roberto Chinnici at SFJUGOverview of Java EE 6 by Roberto Chinnici at SFJUG
Overview of Java EE 6 by Roberto Chinnici at SFJUGMarakana Inc.
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureArun Gupta
 
Deep Dive Hands-on in Java EE 6 - Oredev 2010
Deep Dive Hands-on in Java EE 6 - Oredev 2010Deep Dive Hands-on in Java EE 6 - Oredev 2010
Deep Dive Hands-on in Java EE 6 - Oredev 2010Arun Gupta
 
OSGi-enabled Java EE Applications using GlassFish at JCertif 2011
OSGi-enabled Java EE Applications using GlassFish at JCertif 2011OSGi-enabled Java EE Applications using GlassFish at JCertif 2011
OSGi-enabled Java EE Applications using GlassFish at JCertif 2011Arun Gupta
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureArun Gupta
 
Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Codecamp Romania
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011Arun Gupta
 
Java EE7 in action
Java EE7 in actionJava EE7 in action
Java EE7 in actionAnkara JUG
 
Running your Java EE applications in the Cloud
Running your Java EE applications in the CloudRunning your Java EE applications in the Cloud
Running your Java EE applications in the CloudArun Gupta
 

Mais procurados (20)

Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6Understanding the nuts & bolts of Java EE 6
Understanding the nuts & bolts of Java EE 6
 
JavaEE 6 and GlassFish v3 at SFJUG
JavaEE 6 and GlassFish v3 at SFJUGJavaEE 6 and GlassFish v3 at SFJUG
JavaEE 6 and GlassFish v3 at SFJUG
 
Java EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 India
Java EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 IndiaJava EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 India
Java EE 6 & GlassFish v3: Paving the path for the future - Tech Days 2010 India
 
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
Java EE 6 & GlassFish = Less Code + More Power at CEJUGJava EE 6 & GlassFish = Less Code + More Power at CEJUG
Java EE 6 & GlassFish = Less Code + More Power at CEJUG
 
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3 Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
Arun Gupta: London Java Community: Java EE 6 and GlassFish 3
 
Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010
Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010
Java EE 6 Hands-on Workshop at Dallas Tech Fest 2010
 
Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011Java EE 6 workshop at Dallas Tech Fest 2011
Java EE 6 workshop at Dallas Tech Fest 2011
 
Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
 
Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3
 
Java EE7 Demystified
Java EE7 DemystifiedJava EE7 Demystified
Java EE7 Demystified
 
Sun Java EE 6 Overview
Sun Java EE 6 OverviewSun Java EE 6 Overview
Sun Java EE 6 Overview
 
Overview of Java EE 6 by Roberto Chinnici at SFJUG
Overview of Java EE 6 by Roberto Chinnici at SFJUGOverview of Java EE 6 by Roberto Chinnici at SFJUG
Overview of Java EE 6 by Roberto Chinnici at SFJUG
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for future
 
Deep Dive Hands-on in Java EE 6 - Oredev 2010
Deep Dive Hands-on in Java EE 6 - Oredev 2010Deep Dive Hands-on in Java EE 6 - Oredev 2010
Deep Dive Hands-on in Java EE 6 - Oredev 2010
 
OSGi-enabled Java EE Applications using GlassFish at JCertif 2011
OSGi-enabled Java EE Applications using GlassFish at JCertif 2011OSGi-enabled Java EE Applications using GlassFish at JCertif 2011
OSGi-enabled Java EE Applications using GlassFish at JCertif 2011
 
Java EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for futureJava EE 6 and GlassFish v3: Paving the path for future
Java EE 6 and GlassFish v3: Paving the path for future
 
Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
 
Java EE7 in action
Java EE7 in actionJava EE7 in action
Java EE7 in action
 
Running your Java EE applications in the Cloud
Running your Java EE applications in the CloudRunning your Java EE applications in the Cloud
Running your Java EE applications in the Cloud
 

Semelhante a TDC 2011: The Java EE 7 Platform: Developing for the Cloud

Spark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopSpark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopArun Gupta
 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Arun Gupta
 
Java EE 與 雲端運算的展望
Java EE 與 雲端運算的展望 Java EE 與 雲端運算的展望
Java EE 與 雲端運算的展望 javatwo2011
 
Java one brazil_keynote_dochez
Java one brazil_keynote_dochezJava one brazil_keynote_dochez
Java one brazil_keynote_dochezJerome Dochez
 
Summer training java
Summer training javaSummer training java
Summer training javaArshit Rai
 
Summer training java
Summer training javaSummer training java
Summer training javaArshit Rai
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-finalRohit Kelapure
 
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnitionJava EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnitionArun Gupta
 
Java EE 6 = Less Code + More Power
Java EE 6 = Less Code + More PowerJava EE 6 = Less Code + More Power
Java EE 6 = Less Code + More PowerArun Gupta
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEQAware GmbH
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEMario-Leander Reimer
 
The Glassfish Experience
The Glassfish ExperienceThe Glassfish Experience
The Glassfish ExperienceMarkus Eisele
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...Arun Gupta
 
Java 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kolliparaJava 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kolliparaManjula Kollipara
 

Semelhante a TDC 2011: The Java EE 7 Platform: Developing for the Cloud (20)

Spark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 WorkshopSpark IT 2011 - Java EE 6 Workshop
Spark IT 2011 - Java EE 6 Workshop
 
Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010Powering the Next Generation Services with Java Platform - Spark IT 2010
Powering the Next Generation Services with Java Platform - Spark IT 2010
 
Java EE 與 雲端運算的展望
Java EE 與 雲端運算的展望 Java EE 與 雲端運算的展望
Java EE 與 雲端運算的展望
 
Java one brazil_keynote_dochez
Java one brazil_keynote_dochezJava one brazil_keynote_dochez
Java one brazil_keynote_dochez
 
Summer training java
Summer training javaSummer training java
Summer training java
 
Summer training java
Summer training javaSummer training java
Summer training java
 
Java EE 7 - Overview and Status
Java EE 7  - Overview and StatusJava EE 7  - Overview and Status
Java EE 7 - Overview and Status
 
Jboss
JbossJboss
Jboss
 
Java E
Java EJava E
Java E
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
 
Java EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolioJava EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolio
 
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnitionJava EE 6 & GlassFish = Less Code + More Power @ DevIgnition
Java EE 6 & GlassFish = Less Code + More Power @ DevIgnition
 
Java EE 6 = Less Code + More Power
Java EE 6 = Less Code + More PowerJava EE 6 = Less Code + More Power
Java EE 6 = Less Code + More Power
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EE
 
A Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EEA Hitchhiker's Guide to Cloud Native Java EE
A Hitchhiker's Guide to Cloud Native Java EE
 
The Glassfish Experience
The Glassfish ExperienceThe Glassfish Experience
The Glassfish Experience
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ JAX London ...
 
Java 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kolliparaJava 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kollipara
 
First8 java one review 2016
First8 java one review 2016First8 java one review 2016
First8 java one review 2016
 
GlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and FutureGlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and Future
 

Mais de Arun Gupta

5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdfArun Gupta
 
Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019Arun Gupta
 
Machine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesMachine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesArun Gupta
 
Secure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerSecure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerArun Gupta
 
Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019Arun Gupta
 
Why Amazon Cares about Open Source
Why Amazon Cares about Open SourceWhy Amazon Cares about Open Source
Why Amazon Cares about Open SourceArun Gupta
 
Machine learning using Kubernetes
Machine learning using KubernetesMachine learning using Kubernetes
Machine learning using KubernetesArun Gupta
 
Building Cloud Native Applications
Building Cloud Native ApplicationsBuilding Cloud Native Applications
Building Cloud Native ApplicationsArun Gupta
 
Chaos Engineering with Kubernetes
Chaos Engineering with KubernetesChaos Engineering with Kubernetes
Chaos Engineering with KubernetesArun Gupta
 
How to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAMHow to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAMArun Gupta
 
Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018Arun Gupta
 
The Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 KeynoteThe Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 KeynoteArun Gupta
 
Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Arun Gupta
 
Mastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv SummitMastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv SummitArun Gupta
 
Top 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's LandscapeTop 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's LandscapeArun Gupta
 
Container Landscape in 2017
Container Landscape in 2017Container Landscape in 2017
Container Landscape in 2017Arun Gupta
 
Java EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShiftJava EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShiftArun Gupta
 
Docker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developersDocker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developersArun Gupta
 
Thanks Managers!
Thanks Managers!Thanks Managers!
Thanks Managers!Arun Gupta
 
Migrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to ContainersMigrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to ContainersArun Gupta
 

Mais de Arun Gupta (20)

5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf5 Skills To Force Multiply Technical Talents.pdf
5 Skills To Force Multiply Technical Talents.pdf
 
Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019Machine Learning using Kubernetes - AI Conclave 2019
Machine Learning using Kubernetes - AI Conclave 2019
 
Machine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and KubernetesMachine Learning using Kubeflow and Kubernetes
Machine Learning using Kubeflow and Kubernetes
 
Secure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using FirecrackerSecure and Fast microVM for Serverless Computing using Firecracker
Secure and Fast microVM for Serverless Computing using Firecracker
 
Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019Building Java in the Open - j.Day at OSCON 2019
Building Java in the Open - j.Day at OSCON 2019
 
Why Amazon Cares about Open Source
Why Amazon Cares about Open SourceWhy Amazon Cares about Open Source
Why Amazon Cares about Open Source
 
Machine learning using Kubernetes
Machine learning using KubernetesMachine learning using Kubernetes
Machine learning using Kubernetes
 
Building Cloud Native Applications
Building Cloud Native ApplicationsBuilding Cloud Native Applications
Building Cloud Native Applications
 
Chaos Engineering with Kubernetes
Chaos Engineering with KubernetesChaos Engineering with Kubernetes
Chaos Engineering with Kubernetes
 
How to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAMHow to be a mentor to bring more girls to STEAM
How to be a mentor to bring more girls to STEAM
 
Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018Java in a World of Containers - DockerCon 2018
Java in a World of Containers - DockerCon 2018
 
The Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 KeynoteThe Serverless Tidal Wave - SwampUP 2018 Keynote
The Serverless Tidal Wave - SwampUP 2018 Keynote
 
Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018Introduction to Amazon EKS - KubeCon 2018
Introduction to Amazon EKS - KubeCon 2018
 
Mastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv SummitMastering Kubernetes on AWS - Tel Aviv Summit
Mastering Kubernetes on AWS - Tel Aviv Summit
 
Top 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's LandscapeTop 10 Technology Trends Changing Developer's Landscape
Top 10 Technology Trends Changing Developer's Landscape
 
Container Landscape in 2017
Container Landscape in 2017Container Landscape in 2017
Container Landscape in 2017
 
Java EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShiftJava EE and NoSQL using JBoss EAP 7 and OpenShift
Java EE and NoSQL using JBoss EAP 7 and OpenShift
 
Docker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developersDocker, Kubernetes, and Mesos recipes for Java developers
Docker, Kubernetes, and Mesos recipes for Java developers
 
Thanks Managers!
Thanks Managers!Thanks Managers!
Thanks Managers!
 
Migrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to ContainersMigrate your traditional VM-based Clusters to Containers
Migrate your traditional VM-based Clusters to Containers
 

Último

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 

Último (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 

TDC 2011: The Java EE 7 Platform: Developing for the Cloud

  • 1. <Insert Picture Here> The Java EE 7 Platform: Developing for the Cloud Arun Gupta, Java EE & GlassFish Guy blogs.oracle.com/arungupta, @arungupta
  • 2. The following/preceding 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
  • 3. The Core Java EE 6 Programming Model Web JSP 2.2 Container JAX-RS 1.1 JSF 2.0 CDI Extensions EL 1.2 Extensions Servlets 3.0 Bean 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 3
  • 4. The Java EE 6 Web Profile 1.0 Servlets 3.0 JPA 2.0 EJB 3.1 JDBC StAX Interceptors JSF 2.0 JAX-RS JNDI JavaMail 1.1 Bean EJB 3.1 Lite JAXB JMS JACC Validation1.0 JSP 2.2 CDI 1.0 JAX-WS JAXP SAAJ Managed JTA 1.1 JASPIC JAX-RPC ... Beans 1.0 Contributed by RedHat New Updated 4
  • 5. Compatible Java EE 6 Impls Today: Web Profile Only Announced: 5
  • 6. 6
  • 7. 9 Reasons why Java EE 6 will save $$ • Prototyping (multiple IDEs) • Development (~30MB, incremental deployment, ...) • Production (Variety, Start small/then scale) • Support (Pick the best one) • Training (“Only” Java EE 6 APIs) • Portability (Backwards compatibility) • Adoption (Growing) • Freedom of choice (Multiple vendors) • Plan B (Similar component models) http://www.adam-bien.com/roller/abien/entry/8_reasons_why_java_ee 7
  • 8. Jigsaw puzzle, From the real users ... Modular, standard, less xml, easy, easy, have I Developers can concentrate said easy? on business logic, Java EE 6 is providing a standard for Standards compliance, vendor the infrastructure. independence, milliseconds and kilobyte deployment Faster development, Higher integrated specs, less frameworks, less simple and annotation driven, complexity, more great single-classloader WARs, code shipped next level of industry standard Definite excuse to avoid Spring forever Simplified Java Not your fat grandfather's Development, Focus on enterprise Java anymore, building great products enterprise Java renaissance http://blogs.oracle.com/arungupta/tags/community+feedback 8
  • 9. Avoid “framework explosion” In selecting an application server our main goal was to avoid the framework explosion that happens when you use a "custom" Enterprise stack like Tomcat + Spring + Hibernate + Myfaces +... Java EE 6 had 80% of what we needed out of the box: strong persistence support ( JPA ), inversion of control ( CDI ), and a lightweight component model ( EJB 3.1 ) http://blogs.oracle.com/stories/entry/egesa_engineering_avoids_framework_explosion 9
  • 10. What does Java EE offer to Cloud ? ● Containers ● Injectable services ● Scale to large clusters ● Security model ● ... 10
  • 11. Java EE for the Cloud : JSR 342 • More easily operate on private/public clouds • Multi-tenancy • Elasticity • 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 11
  • 12. Cloud Platform Application Java Persistence Queueing Service Service Service … State Management Virtualization Layer 12
  • 13. Cloud Platform Application Code Code Code QoS Schema Migration Security … Module Module Module Information Java Persistence Queueing Service Service Service … State Management Virtualization Layer 13
  • 14. Cloud Platform Application Application Application Java Persistence Queueing Service Service Service … State Management Virtualization Layer 14
  • 15. Cloud Platform Application Application Application Application Application Java Persistence Queueing Service Service Service … State Management Virtualization Layer 15
  • 16. Cloud Platform Managed Environment Application Application Application Application Application Java Persistence Queueing Service Service Service … State Management Virtualization Layer 16
  • 17. The Java EE 7 Modularity • Built on Java SE 8 work • Applications made of modules • Dependencies are explicit • Versioning is built-in • Classloaders are straightened 17
  • 18. Modular Applications demo-app demo-web-1.0.3 18
  • 19. Modular Applications demo-app twitter-client-1.0.3 demo-web-1.0.3 demo-persist-1.0.3 19
  • 20. Modular Applications demo-app twitter-client-1.0.3 demo-web-1.0.3 demo-persist-1.0.3 javaee-web-7.0 jpa-2.1 jax-rs-2.0 20
  • 21. Modular Applications demo-app twitter-client-1.0.3 demo-web-1.0.3 demo-persist-1.0.3 javaee-web-7.0 jpa-2.1 jax-rs-2.0 gf-appserver-4.0.1 eclipselink-2.1.3 jersey-2.0.5 21
  • 22. Modular Applications demo-app twitter-client-1.0.4 jax-rs-2.1.1 demo-web-1.0.4 demo-persist-1.0.3 jersey-2.1.2 javaee-web-7.0 jpa-2.1 gf-appserver-4.0.1 eclipselink-2.1.3 jersey-2.0.5 22
  • 23. Modular Applications demo-app twitter-client-1.0.5 jax-rs-2.1.1 demo-web-1.0.5 demo-persist-1.0.3 jax-rs-2.1.1 javaee-web-7.0 jpa-2.1 jax-rs-2.1.5 gf-appserver-4.1.2 eclipselink-2.1.3 jersey-2.0.5 jersey-2.1.7 23
  • 24. Java EE 7 JSR Soup • Java Persistence API 2.1 – JSR 338 • JAX-RS 2.0 – JSR 339 • Servlets 3.1 – JSR 340 • Expression Language 3.0 – JSR 341 • Java EE 7 – JSR 342 • Java Message Service 2.0 – JSR 343 • Java Server Faces 2.2 – JSR 344 • EJB 3.2 – JSR 345 • CDI 1.1 – JSR 346 • JCache – JSR 107 • ... 24
  • 25. Servlets 3.1 (JSR 340) http://jcp.org/en/jsr/detail?id=340 http://servlet-spec.java.net • Cloud support • Multi-tenancy • Security / Session state / Resources isolation • Asynchronous IO based on NIO2 • Simplified Asynchronous Servlets • Utilize Java EE concurrency utilities • Enable support for Web Sockets 25
  • 26. JPA 2.1 (JSR 338) http://jcp.org/en/jsr/detail?id=338 http://jpa-spec.java.net ● Multi-tenancy ● Support for stored procedures, vendor function ● Update and Delete Criteria queries, JPQL ↔ Criteria ● Query by Example ● Support for schema generation ● Persistence Context synchronization control ● Dynamic definition of PU ● Additional event listeners 26
  • 27. EJB 3.2 (JSR 345) http://jcp.org/en/jsr/detail?id=345 • Enablement for use in cloud • Factorization of the EJB technology • Interceptors was the first example • Container-managed transactions as target • Alignment with other specifications • Mark “pruned” technologies as optional • EJB 1.x and 2.x entity beans • Web service invocation using JAX-RPC 27
  • 28. JAX-RS 2.0 (JSR 339) http://jcp.org/en/jsr/detail?id=339 http://jax-rs-spec.java.net ● Client API ● Low level using Builder pattern, Higher-level ● Hypermedia ● MVC Pattern ● Resource controllers, Pluggable viewing technology ● Bean Validation ● Form or Query parameter validation ● Closer integration with @Inject, etc. ● Server-side asynchronous request processing ● Server-side content negotiation 28
  • 29. CDI 1.1 (JSR 346) http://www.jcp.org/en/jsr/proposalDetails?id=346 • Global ordering of interceptors and decorators • API for managing built-in contexts • Embedded mode to startup outside Java EE container • Send Servlet events as CDI events 29
  • 30. Expression Language 3.0 (JSR 341) http://jcp.org/en/jsr/detail?id=341 http://el-spec.java.net • A JSR by itself • Make EL easier to use outside EE container • Simplified to use in Java SE • EL Context is split into Parsing and Evaluation context • Explicit coercion rules using API • Criteria-based selection from Collection • Operators: ==, concat, sizeof • CDI events for expression evaluation 30
  • 31. JMS 2.0 (JSR 343) http://jcp.org/en/jsr/detail?id=343 http://jms-spec.java.net • Long overdue – after 9 years • Modest scope, major extensions deferred to a subsequent revision • Ease-of-development • Clarification of relationship with other Java EE specs • New mandatory API for pluggable JMS provider 31
  • 32. Bean Validation 1.1 (JSR TBD) http://in.relation.to/Bloggers/JSRBeanValidation11WhatToPutIn • Integration with other specs • JAX-RS: Validate parameters on HTTP calls • JAXB: convert into XML schema descriptor • JPA: DDL generation • Method level validation public void processOrder(@Valid Order order, @Min(0) @Max(30) int retry) { } • @Valid and group propagation • Apply constraints on element collection 32
  • 33. JSF 2.2 (JSR 344) http://jcp.org/en/jsr/detail?id=344 http://jsf-spec.java.net • Ease of development • cc:interface is optional • JSF lifecycle is CDI aware • Runtime configuration options change • Support implementation of Portlet Bridge 2.0 • Support for HTML5 features • Forms, Heading/Section content model, ... • New components like FileUpload and BackButton 33
  • 34. Java EE 7 : Technology Refresh • Ease-of-development: JMS 2.0 • Latest web standards • New JSRs: Web Sockets, Java JSON API • HTTP Client API (JAX-RS 2.0) • Possible JSRs inclusion • Concurrency Utilities for Java EE (JSR 236) • JCache (JSR 107) 34
  • 35. Transparency Checklist NEW http://jcp.org/en/resources/transparency • EG members names • EG business reported on publicly readable alias • Schedule is public, current and updated regularly • Public can read/write to a wiki • Discussion board on jcp.org • Public read-only issue tracker 35
  • 36. Java EE 7 – When ? • Late 2012 • Date-driven release • Anything not ready will be deferred to Java EE 8 • Participate • Expert Groups forming • Public discussion lists • JCP membership free for individuals 36
  • 37. GlassFish Server Distributions Distribution License Features • Java EE 6 compatibility GlassFish Server Open CDDL & • Web Profile support Source Edition 3.1 GPLv2 • In-memory replication / clustering Web Profile • Centralized Administration • Java EE 6 compatibility GlassFish Open Source CDDL & • Full Java EE distribution Edition 3.1 GPLv2 • In-memory replication / clustering • Centralized Administration • Adds Oracle GlassFish Server 3.1 Commercial • Oracle GlassFish Server Control Web Profile • Patches, support, knowledge base • Adds Oracle GlassFish Server 3.1 Commercial • Oracle GlassFish Server Control • Patches, support, knowledge base
  • 38. References • oracle.com/javaee • glassfish.org • oracle.com/goto/glassfish • blogs.oracle.com/theaquarium • youtube.com/GlassFishVideos • Follow @glassfish 38
  • 39. <Insert Picture Here> The Java EE 7 Platform: Developing for the Cloud Arun Gupta, Java EE & GlassFish Guy blogs.oracle.com/arungupta, @arungupta