SlideShare una empresa de Scribd logo
1 de 39
Descargar para leer sin conexión
Java EE 6 = Less Code + More Power
Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta




                                         1
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.
The Java EE 6 Platform

   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
 Web Profile 1.0
Light-weight
●   Java EE 6 Web Profile
●   Pruning
    ●   Pruned today, means
        –   Optional in the next release
        –   Deleted in the subsequent releases
    ●   Technologies marked in Javadocs
        –   EJB 2.x Entity Beans, JAX-RPC, JAXR, JSR 88
●   EJB-in-WAR
●   No-interface EJB
●   Optional
    “web.xml”/”faces-
    config.xml”
●   Annotation-driven
    ●   @Schedule
    ●   @Path
    ●   @Inject
    ●   ...
<web-fragment>
   <filter>
         <filter-name>wicket.helloworld</filter-name>
         <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class>
         <init-param>
              <param-name>applicationClassName</param-name>
              <param-value>...</param-value>
         </init-param>
   </filter>
    <filter-mapping>
          <filter-name>wicket.helloworld</filter-name>
          <url-pattern>/*</url-pattern>
    </filter-mapping>
</web-fragment>
From the real users ...                                                  Jigsaw puzzle, Modular,
                                                                             standard, less xml, easy,
 Developers can concentrate                                                  easy, have I 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, less
                                                                              frameworks, less
                                                                              complexity, more great
Higher integrated specs,
                                                                              code shipped
simple and annotation driven,
single-classloader WARs,
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
Compatible Java EE 6 Impls

Today:
                             Web Profile Only




Announced:
3.1 Overview
●   Built on GlassFish 3
●   Modular and Extensible HK2 Kernel
    ●   ~260+ modules
    ●   OSGi/Java EE Hybrid Apps
●   Clustering and High Availability
    ●   HTTP, EJB, IIOP, SSO, Metro
●   Containers start on demand
●   End-to-end extensibility
Sample App Overview

  CLI

                            JPA


 Servlet         EJB              Database



           CDI     JAX-RS
  JSF
What will we do ?
1. Generate JPA Entities from the database table
2. Refactor generated entities for a more intuitive O/R mapping
3. Create an EJB for querying the database
4. Create a Servlet for testing the EJB and displaying values
    from the database table
5. Enable CDI and make the EJB EL-injectable
6. Display the values in JSF2/Facelets-based view
7. Expose JPA entities as a RESTful resource by using JAX-RS
What will we use ?
Generate JPA Entities
And customize them



    CLI

                                      JPA


  Servlet                  EJB              Database



                     CDI     JAX-RS
   JSF
Java Persistence API 2
●   Improved O/R mapping
●   Type-safe Criteria API
●   Expanded and Richer JPQL
●   2nd-level Cache
●   New locking modes
    ●   PESSIMISTIC_READ – grab shared lock
    ●   PESSIMISTIC_WRITE – grab exclusive lock
    ●   PESSIMISTIC_FORCE_INCREMENT – update version
●   Standard configuration options
    ●   javax.persistence.jdbc.[driver | url | user | password]
Create an EJB
For querying the database



    CLI

                                     JPA


   Servlet                EJB              Database



                    CDI     JAX-RS
    JSF
Create an EJB – Sample Code
For querying the database

@PersistenceContext
EntityManager em;



public List<Customer> getCustomers() {
return (List<Customer>)em.createNamedQuery("Customer.findAll").getResultList();
}
EJB 3.1
●   Simplified Packaging
●   No interface view – one source file per bean
●   Embeddable API
●   @Singleton
    ●   Initialization in @PostContruct
●   Simplified Cron-like syntax for Timer
●   Asynchronous Session Bean
●   Portable Global JNDI Name
Create a Servlet
For testing EJB and display values from the database



    CLI

                                      JPA


   Servlet                 EJB              Database



                     CDI     JAX-RS
    JSF
Create a Servlet – Sample Code
For testing EJB and display values from the database

@EJB CustomerSessionBean ejb;

out.println(ejb.getCustomers());

http://localhost:8080/JavaEE6SampleApp/TestServlet
Servlets 3.0
●   @WebServlet, @WebListener, @WebFilter, …
●   Asynchronous Servlets
    ●   @WebServlet(asyncSupported=true)
●   Plugin libraries using web fragments
●   Dynamic registration of Servlets
●   WEB-INF/lib/[*.jar]/META-INF/resources
     accessible in the root
●   Programmatic authentication login/logout
●   Default Error Page
●   ...
Enable CDI
Make the EJB EL-injectable



    CLI

                                     JPA


   Servlet                EJB              Database



                    CDI     JAX-RS
    JSF
Enable CDI – Sample Code
Make the EJB EL-injectable

@javax.inject.Named
Contexts & Dependency Injection
●   Standards-based Dependency Injection
●   Type-safe – Buids on @Inject API
●   Context/Scope management
●   Strong Typing, Loose Coupling
●   Includes ELResolver
            @Inject @LoggedIn User user

Request                                What ?
Injection          Which one ?
                    (Qualifier)        (Type)
CDI

●   Qualifiers
●   Events
●   Stereotypes
●   Interceptors
●   Decorators
●   Alternatives
●   ...
Display the values
In JSF2/Facelets-based view



    CLI

                                     JPA


   Servlet                EJB              Database



                    CDI     JAX-RS
    JSF
Display the values – Sample Code
In JSF2/Facelets-based view

http://localhost:8080/JavaEE6SampleApp/faces/index.xhtml

<h1>Java EE 6 Sample App</h1>

<center>Powered by GlassFish!</center>


<h:dataTable value="#{customerSessionBean.customers}" var="c">
<h:column>#{c.name}</h:column>
<h:column>#{c.customerId}</h:column>
</h:dataTable>
Java Server Faces 2.0
●   Facelets as “templating language” for the page
    ●   Custom components much easier to develop
●   Integrated Ajax
●   “faces-config.xml” optional in common cases
●   Default navigation rules
●   Much more …
    ●   Runs on Servlet 2.5+
    ●   Bookmarkable URLs
    ●   Conditional navigation
    ●   ...
RESTful resource
Using JAX-RS



   CLI

                                JPA


  Servlet            EJB              Database



               CDI     JAX-RS
   JSF
RESTful resource – Sample Code
Using JAX-RS

@Path("/customers")


@GET
@Path("/customer/{id}")
@Produces("application/xml")
public Customer getCustomer(@PathParam("id")Integer id) {
return
(Customer)em.createNamedQuery("Customer.findByCustomerId").
setParameter("customerId", id).getSingleResult();
}


http://localhost:8080/JavaEE6SampleApp/resources/customers/customer/1

@Produces({"application/xml", "application/json"})
JAX-RS 1.1

●   Java API for building RESTful Web Services
●   POJO based
●   Annotation-driven
●   Server-side API
●   HTTP-centric
Sample App Review

  CLI

                            JPA


 Servlet         EJB              Database



           CDI     JAX-RS
  JSF
Java EE for the Cloud : JSR 342
●   More easily operate on private/public clouds
    ●   Multi-tenancy
    ●   Elasticity
    ●   Service Provisioning
●   Tighter requirements for resource/state management
●   Better isolation between applications
●   Potential standard APIs for NRDBMS, Caching, other
●   Common management and monitoring interfaces
●   Better packaging
●   Evolution, not revolution
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)
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
Transparency Checklist
http://jcp.org/en/resources/transparency
                                              NEW


●   EG members names
●   EG business reported on a 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
●   Find out what's new with Java technology
●   See new tools and techniques
●   Learn how to create solutions
●   Network with peers
●   Meet with experts
●   Influence the future of the Java platform
●   400+ sessions/BoFs/HOLs
●   ...                     oracle.com/javaone
References

●   oracle.com/javaee
●   glassfish.org
●   oracle.com/goto/glassfish
●   blogs.oracle.com/theaquarium
●   youtube.com/GlassFishVideos
●   Follow @glassfish
Java EE 6 = Less Code + More Power
Arun Gupta, Java EE & GlassFish Guy
blogs.oracle.com/arungupta, @arungupta




                                         39

Más contenido relacionado

La actualidad más candente

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
 
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
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusArun Gupta
 
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
 
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 & 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
 
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
 
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudTDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudArun Gupta
 
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010Arun Gupta
 
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010Arun 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
 
Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Agora Group
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...Arun Gupta
 
Java EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The FutureJava EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The FutureIndicThreads
 
What's new in Java EE 6
What's new in Java EE 6What's new in Java EE 6
What's new in Java EE 6Gal Marder
 
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010Arun Gupta
 
Java EE7 Demystified
Java EE7 DemystifiedJava EE7 Demystified
Java EE7 DemystifiedAnkara JUG
 
GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0Arun Gupta
 

La actualidad más candente (20)

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
 
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
 
Java EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexus
 
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
 
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 & 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
 
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
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
Java EE6 Overview
Java EE6 OverviewJava EE6 Overview
Java EE6 Overview
 
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the CloudTDC 2011: The Java EE 7 Platform: Developing for the Cloud
TDC 2011: The Java EE 7 Platform: Developing for the Cloud
 
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010
 
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
Java EE 6 & GlassFish v3 at Vancouver JUG, Jan 26, 2010
 
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
 
Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011
 
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
Java EE 6 & GlassFish 3: Light-weight, Extensible, and Powerful @ Silicon Val...
 
Java EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The FutureJava EE 6 : Paving The Path For The Future
Java EE 6 : Paving The Path For The Future
 
What's new in Java EE 6
What's new in Java EE 6What's new in Java EE 6
What's new in Java EE 6
 
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
OSGi & Java EE in GlassFish @ Silicon Valley Code Camp 2010
 
Java EE7 Demystified
Java EE7 DemystifiedJava EE7 Demystified
Java EE7 Demystified
 
GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0GIDS 2012: Java Message Service 2.0
GIDS 2012: Java Message Service 2.0
 

Similar a Java EE 6 workshop at Dallas Tech Fest 2011

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
 
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
 
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
The Java EE 7 Platform: Developing for the Cloud  (FISL 12)The Java EE 7 Platform: Developing for the Cloud  (FISL 12)
The Java EE 7 Platform: Developing for the Cloud (FISL 12)Arun Gupta
 
New Features of Java7 SE
New Features of Java7 SENew Features of Java7 SE
New Features of Java7 SEdogangoko
 
Java 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kolliparaJava 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kolliparaManjula Kollipara
 
Rollin onj Rubyv3
Rollin onj Rubyv3Rollin onj Rubyv3
Rollin onj Rubyv3Oracle
 
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
 
Summer training java
Summer training javaSummer training java
Summer training javaArshit Rai
 
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
 
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
 
Haj 4344-java se 9 and the application server-1
Haj 4344-java se 9 and the application server-1Haj 4344-java se 9 and the application server-1
Haj 4344-java se 9 and the application server-1Kevin Sutter
 
Summer training java
Summer training javaSummer training java
Summer training javaArshit Rai
 
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010Arun 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
 
Java Enterprise Edition 6 Overview
Java Enterprise Edition 6 OverviewJava Enterprise Edition 6 Overview
Java Enterprise Edition 6 OverviewEugene Bogaart
 

Similar a Java EE 6 workshop at Dallas Tech Fest 2011 (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
 
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
 
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
The Java EE 7 Platform: Developing for the Cloud  (FISL 12)The Java EE 7 Platform: Developing for the Cloud  (FISL 12)
The Java EE 7 Platform: Developing for the Cloud (FISL 12)
 
New Features of Java7 SE
New Features of Java7 SENew Features of Java7 SE
New Features of Java7 SE
 
Java 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kolliparaJava 7 Dolphin manjula kollipara
Java 7 Dolphin manjula kollipara
 
GlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and FutureGlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and Future
 
Whats New In Java Ee 6
Whats New In Java Ee 6Whats New In Java Ee 6
Whats New In Java Ee 6
 
Rollin onj Rubyv3
Rollin onj Rubyv3Rollin onj Rubyv3
Rollin onj Rubyv3
 
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
 
Summer training java
Summer training javaSummer training java
Summer training java
 
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
 
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 ...
 
Haj 4344-java se 9 and the application server-1
Haj 4344-java se 9 and the application server-1Haj 4344-java se 9 and the application server-1
Haj 4344-java se 9 and the application server-1
 
Summer training java
Summer training javaSummer training java
Summer training java
 
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
Java EE 6 & GlassFish v3: Paving the path for the future - Spark IT 2010
 
Java EE 6
Java EE 6Java EE 6
Java EE 6
 
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
 
Java Enterprise Edition 6 Overview
Java Enterprise Edition 6 OverviewJava Enterprise Edition 6 Overview
Java Enterprise Edition 6 Overview
 

Más 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
 

Más 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

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 

Último (20)

Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Java EE 6 workshop at Dallas Tech Fest 2011

  • 1. Java EE 6 = Less Code + More Power Arun Gupta, Java EE & GlassFish Guy blogs.oracle.com/arungupta, @arungupta 1
  • 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.
  • 3. The Java EE 6 Platform 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 Web Profile 1.0
  • 4. Light-weight ● Java EE 6 Web Profile ● Pruning ● Pruned today, means – Optional in the next release – Deleted in the subsequent releases ● Technologies marked in Javadocs – EJB 2.x Entity Beans, JAX-RPC, JAXR, JSR 88
  • 5. EJB-in-WAR ● No-interface EJB ● Optional “web.xml”/”faces- config.xml” ● Annotation-driven ● @Schedule ● @Path ● @Inject ● ...
  • 6. <web-fragment> <filter> <filter-name>wicket.helloworld</filter-name> <filter-class>org.apache.wicket.protocol.http.WicketFilter</filter-class> <init-param> <param-name>applicationClassName</param-name> <param-value>...</param-value> </init-param> </filter> <filter-mapping> <filter-name>wicket.helloworld</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-fragment>
  • 7.
  • 8. From the real users ... Jigsaw puzzle, Modular, standard, less xml, easy, Developers can concentrate easy, have I 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, less frameworks, less complexity, more great Higher integrated specs, code shipped simple and annotation driven, single-classloader WARs, 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
  • 9. Compatible Java EE 6 Impls Today: Web Profile Only Announced:
  • 10. 3.1 Overview ● Built on GlassFish 3 ● Modular and Extensible HK2 Kernel ● ~260+ modules ● OSGi/Java EE Hybrid Apps ● Clustering and High Availability ● HTTP, EJB, IIOP, SSO, Metro ● Containers start on demand ● End-to-end extensibility
  • 11. Sample App Overview CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 12. What will we do ? 1. Generate JPA Entities from the database table 2. Refactor generated entities for a more intuitive O/R mapping 3. Create an EJB for querying the database 4. Create a Servlet for testing the EJB and displaying values from the database table 5. Enable CDI and make the EJB EL-injectable 6. Display the values in JSF2/Facelets-based view 7. Expose JPA entities as a RESTful resource by using JAX-RS
  • 13. What will we use ?
  • 14. Generate JPA Entities And customize them CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 15. Java Persistence API 2 ● Improved O/R mapping ● Type-safe Criteria API ● Expanded and Richer JPQL ● 2nd-level Cache ● New locking modes ● PESSIMISTIC_READ – grab shared lock ● PESSIMISTIC_WRITE – grab exclusive lock ● PESSIMISTIC_FORCE_INCREMENT – update version ● Standard configuration options ● javax.persistence.jdbc.[driver | url | user | password]
  • 16. Create an EJB For querying the database CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 17. Create an EJB – Sample Code For querying the database @PersistenceContext EntityManager em; public List<Customer> getCustomers() { return (List<Customer>)em.createNamedQuery("Customer.findAll").getResultList(); }
  • 18. EJB 3.1 ● Simplified Packaging ● No interface view – one source file per bean ● Embeddable API ● @Singleton ● Initialization in @PostContruct ● Simplified Cron-like syntax for Timer ● Asynchronous Session Bean ● Portable Global JNDI Name
  • 19. Create a Servlet For testing EJB and display values from the database CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 20. Create a Servlet – Sample Code For testing EJB and display values from the database @EJB CustomerSessionBean ejb; out.println(ejb.getCustomers()); http://localhost:8080/JavaEE6SampleApp/TestServlet
  • 21. Servlets 3.0 ● @WebServlet, @WebListener, @WebFilter, … ● Asynchronous Servlets ● @WebServlet(asyncSupported=true) ● Plugin libraries using web fragments ● Dynamic registration of Servlets ● WEB-INF/lib/[*.jar]/META-INF/resources accessible in the root ● Programmatic authentication login/logout ● Default Error Page ● ...
  • 22. Enable CDI Make the EJB EL-injectable CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 23. Enable CDI – Sample Code Make the EJB EL-injectable @javax.inject.Named
  • 24. Contexts & Dependency Injection ● Standards-based Dependency Injection ● Type-safe – Buids on @Inject API ● Context/Scope management ● Strong Typing, Loose Coupling ● Includes ELResolver @Inject @LoggedIn User user Request What ? Injection Which one ? (Qualifier) (Type)
  • 25. CDI ● Qualifiers ● Events ● Stereotypes ● Interceptors ● Decorators ● Alternatives ● ...
  • 26. Display the values In JSF2/Facelets-based view CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 27. Display the values – Sample Code In JSF2/Facelets-based view http://localhost:8080/JavaEE6SampleApp/faces/index.xhtml <h1>Java EE 6 Sample App</h1> <center>Powered by GlassFish!</center> <h:dataTable value="#{customerSessionBean.customers}" var="c"> <h:column>#{c.name}</h:column> <h:column>#{c.customerId}</h:column> </h:dataTable>
  • 28. Java Server Faces 2.0 ● Facelets as “templating language” for the page ● Custom components much easier to develop ● Integrated Ajax ● “faces-config.xml” optional in common cases ● Default navigation rules ● Much more … ● Runs on Servlet 2.5+ ● Bookmarkable URLs ● Conditional navigation ● ...
  • 29. RESTful resource Using JAX-RS CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 30. RESTful resource – Sample Code Using JAX-RS @Path("/customers") @GET @Path("/customer/{id}") @Produces("application/xml") public Customer getCustomer(@PathParam("id")Integer id) { return (Customer)em.createNamedQuery("Customer.findByCustomerId"). setParameter("customerId", id).getSingleResult(); } http://localhost:8080/JavaEE6SampleApp/resources/customers/customer/1 @Produces({"application/xml", "application/json"})
  • 31. JAX-RS 1.1 ● Java API for building RESTful Web Services ● POJO based ● Annotation-driven ● Server-side API ● HTTP-centric
  • 32. Sample App Review CLI JPA Servlet EJB Database CDI JAX-RS JSF
  • 33. Java EE for the Cloud : JSR 342 ● More easily operate on private/public clouds ● Multi-tenancy ● Elasticity ● Service Provisioning ● Tighter requirements for resource/state management ● Better isolation between applications ● Potential standard APIs for NRDBMS, Caching, other ● Common management and monitoring interfaces ● Better packaging ● Evolution, not revolution
  • 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)
  • 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. Transparency Checklist http://jcp.org/en/resources/transparency NEW ● EG members names ● EG business reported on a 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
  • 37. Find out what's new with Java technology ● See new tools and techniques ● Learn how to create solutions ● Network with peers ● Meet with experts ● Influence the future of the Java platform ● 400+ sessions/BoFs/HOLs ● ... oracle.com/javaone
  • 38. References ● oracle.com/javaee ● glassfish.org ● oracle.com/goto/glassfish ● blogs.oracle.com/theaquarium ● youtube.com/GlassFishVideos ● Follow @glassfish
  • 39. Java EE 6 = Less Code + More Power Arun Gupta, Java EE & GlassFish Guy blogs.oracle.com/arungupta, @arungupta 39