SlideShare uma empresa Scribd logo
1 de 23
Baixar para ler offline
Using Eclipse for Java EE 6
 development for GlassFish



Arun Gupta, GlassFish Guy
Sun Microsystems, Inc.
blog.arungupta.me
Java EE: Past & Present
                                                                                        Right
                                                                           Ease of      Sizing
                                                                          Developme   Java EE 6
                                                                              nt      EJB Lite
                                                    Web                 Java EE 5     Restful WS
                                                   Ease of
                                                   Service                            Web Beans
                                                   Development
                                                      s                               Extensibility
                                      J2EE 1.4 Annotations
                                                   EJB 3.0
                          Robustness Web Services, Persistence API
          Enterprise                 Management, New and
             Java         J2EE 1.3 Deployment, Updated
                                     Async.
           Platform          CMP,                  Web Services
                           Connector Connector
                           Architecture
                                             `                                        Java EE 6
          J2EE 1.2
          Servlet, JSP,                                                               Web Profile
 JPE       EJB, JMS
Project    RMI/IIOP

                           Using Eclipse for Java EE 6 development for GlassFish                  Slide 2
Goals for the Java EE 6 Platform

• Right Sizing the Platform
    > Flexible, lighter weight
• Extensible
    >Embrace Open Source Frameworks
• Easier to use, develop on
    > Continue on path set by Java EE 5




                   Using Eclipse for Java EE 6 development for GlassFish   Slide 3
Right Sizing the Platform: Profiles
• Make platform flexible
  > Decouple specifications to allow more
    combinations
  > Expands potential licensee ecosystem
  > Profiles
     >Targeted technology bundles
     >Defined through the JCP
     >First profile: Web Profile
         – Defined by      the Java EE 6 Expert Group


                Using Eclipse for Java EE 6 development for GlassFish   Slide 4
Right Sizing the Platform: Pruning
• Make platform lighter
  > Makes some technologies optional
  > Pruned today, means
    > optional in the next release
    > Deleted in the subsequent release
  > Pruned Technologies will be marked in the
    javadocs
  > Current pruning list
    > JAX-RPC, EJB 2.X Entity Beans, JAXR, JSR-88



                    Using Eclipse for Java EE 6 development for GlassFish   Slide 5
Extensibility
• Embrace open source libraries and
  frameworks
• Zero-configuration, drag-and-drop for web
  frameworks
  > Servlets, servlet filters, context listeners for a
    framework get discovered and registered
    automatically
• Plugin library jars using web fragments




                    Using Eclipse for Java EE 6 development for GlassFish   Slide 6
EoD Example - Servlets
Servlet in Java EE 5: Create two source
<!--Deployment descriptor /* Code in Java Class                            */
files
   web.xml -->
<web-app>                                  package com.foo;
  <servlet>                                public class MyServlet
    <servlet-name>MyServlet                extends HttpServlet {
      </servlet-name>                      public void
       <servlet-class>                     doGet(HttpServletRequest
         com.foo.MyServlet
       </servlet-class>                    req,HttpServletResponse res)
  </servlet>                               {
  <servlet-mapping>
    <servlet-name>MyServlet                ...
       </servlet-name>
    <url-pattern>/myApp/*                  }
       </url-pattern>
  </servlet-mapping>
   ...                                     ...
</web-app>
                                           }



                   Using Eclipse for Java EE 6 development for GlassFish        Slide 7
EoD Example - Servlets
Servlet in Java EE 6: In many cases a single source file

package com.foo;
@WebServlet(name=”MyServlet”, urlPattern=”/myApp/*”)
public class MyServlet extends HttpServlet {
   public void doGet(HttpServletRequest req,
             HttpServletResponse res)
   {
      ...
   }




                    Using Eclipse for Java EE 6 development for GlassFish   Slide 8
Web/EJB Application in Java EE 5 Platform
          foo.ear                                                          foo.ear

  foo_web.war                                               lib/foo_common.jar

                                                               com/acme/Foo.class
   WEB-INF/web.xml
   WEB-INF/classes/
    com/acme/FooServlet.class
                                                            foo_web.war
   WEB-INF/classes
    com/acme/Foo.class
                                          OR                  WEB-INF/web.xml
                                                              WEB-INF/classes/
                                                              com/acme/FooServlet.class
  foo_ejb.jar

  com/acme/FooBean.class                                     foo_ejb.jar
  com/acme/Foo.class
                                                               com/acme/FooBean.class




                       Using Eclipse for Java EE 6 development for GlassFish              Slide 9
Web/EJB Application in Java EE 6 Platform


                       foo.war

             WEB-INF/classes/
             com/acme/FooServlet.class

             WEB-INF/classes/
              com/acme/FooBean.class




                  web.xml

             Using Eclipse for Java EE 6 development for GlassFish   Slide 10
<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>



 http://blog.arungupta.me/2009/08/totd-91-applying-java-ee-6-web-fragment-xml-to-apache-wicket-deploy-on-glassfish-v3/
                                              Using Eclipse for Java EE 6 development for GlassFish                      Slide 11
New: GlassFish + Eclipse Bundle




             Using Eclipse for Java EE 6 development for GlassFish   Slide 12
Eclipse
               Eclipse Java EE IDE                                          User
                                                                         Workspace:
                                                                       • V2.1 & v3
            GlassFish v2.1, v3prelude                                    domain
                                                                       • JavaDB config
                JDK1.6 (optional)
                                                                       • MySQL JDBC
                                                                         Driver
                                                                       • Java EE 5/6
                                                                         projects
              GlassFish Eclipse Plugins                                • User settings


Installer
                Registration
               Using Eclipse for Java EE 6 development for GlassFish                   Slide 13
Key Features
• Out of the box Installer with all Java EE Eclipse Standard
  Features and JDK and GlassFish servers
• GlassFish v2.1 & v3 Prelude automatic domain
  creation/configuration
• Java EE 5 and 6 integration
  > Servlet 3.0, EJB 3.1, JPA 2.0, JAX-WS wizards
• JavaDB configuration, JDBC resource wizard
• MySQL JDBC Driver pre-registered
• Start, Stop, Deploy, undeploy, Debug(JSP/Java)
  (v2, v3)
• Deploy on Save: Default for v3
• HTTP Monitoring pre-configured
                      Using Eclipse for Java EE 6 development for GlassFish   Slide 14
Key Features
• All Sun DTDs registered for validation/code completion
• All Java EE APIs registered for code completion/JavaDoc
• GlassFish Log integrated into Eclipse IDE console
• GlassFish Update Center & Admin Console Integration
• All v2, v3p DocBooks integrated in Help (no need for
  Internet)
• GlassFish Web Properties in Help Menu (The Aquarium,
  Support,...)




                 Using Eclipse for Java EE 6 development for GlassFish   Slide 15
Key Features

• Update Centers Integration
• Eclipse Update Center for Eclipse bits and the
  GlassFish Plugin
• In future releases:
   > JavaFX Plugin
   > WebSynergy ,GlassFish ESB
   > Better MySQL integration




               Using Eclipse for Java EE 6 development for GlassFish   Slide 16
Size of GlassFish Tools Bundle for Eclipse
 Components in the Installer                                     Size (total=375Mb)

   ●   Eclipse                                                   164Mb

   ●   GlassFish v2.1                                            87Mb

   ●   GlassFish v3 Prelude                                      29Mb

   ●   GlassFish Plugin for Eclipse                              10Mb (includes javadoc and
                                                                 help books)
   ●   Registration/Configuration                                0.5Mb

   ●   JDK 1.6u12                                                85Mb

• JBoss Dev Studio 2.0 RC2 +EAP = 617Mb (No JDK)
• Oracle Workshop for WebLogic 10.2 = 748Mb (No JDK)
                        Using Eclipse for Java EE 6 development for GlassFish             Slide 17
GlassFish Tools Bundle for Eclipse




              Using Eclipse for Java EE 6 development for GlassFish   Slide 18
GlassFish Tools Bundle for Eclipse




              Using Eclipse for Java EE 6 development for GlassFish   Slide 19
Demo

http://blog.arungupta.me/2009/09/totd-102-java-ee-6-servlet-3-0-and-ejb-3-1-wizards-in-eclipse/
http://blog.arungupta.me/2009/08/totd-99-creating-a-java-ee-6-application-using-mysql-jpa-2-0-and-servlet-3-0-with-glassfish-tools-bundle-for-eclipse/
http://blog.arungupta.me/2009/08/totd-98-create-a-metro-jax-ws-web-service-using-glassfish-tools-bundle-for-eclipse/
http://blog.arungupta.me/2009/08/totd-97-glassfish-plugin-with-eclipse-3-5/
http://blog.arungupta.me/2008/11/screencast-28-simple-web-application-using-eclipse-and-glassfish-v3-prelude/

                                                  Using Eclipse for Java EE 6 development for GlassFish                                         Slide 20
GlassFish Tools Bundle for Eclipse




              Using Eclipse for Java EE 6 development for GlassFish   Slide 21
GlassFish Tools Bundle for Eclipse




              Using Eclipse for Java EE 6 development for GlassFish   Slide 22
For More Information
• GlassFish Tools Bundle for Eclipse
  > http://download.java.net/glassfish/eclipse
• http://glassfishplugins.dev.java.net
• Java EE 6 Reference Implementation :
  GlassFish v3
  > http://glassfish.org




                   Using Eclipse for Java EE 6 development for GlassFish   Slide 23

Mais conteúdo relacionado

Mais procurados

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 EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010
Codecamp Romania
 
ICEfaces EE - Enterprise-ready JSF Ajax Framework
ICEfaces EE - Enterprise-ready JSF Ajax FrameworkICEfaces EE - Enterprise-ready JSF Ajax Framework
ICEfaces EE - Enterprise-ready JSF Ajax Framework
ICEsoftTech
 

Mais procurados (20)

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 EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
 
Sun Java EE 6 Overview
Sun Java EE 6 OverviewSun Java EE 6 Overview
Sun Java EE 6 Overview
 
Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3Java EE 6 & GlassFish 3
Java EE 6 & GlassFish 3
 
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 EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 2010Java EE6 CodeCamp16 oct 2010
Java EE6 CodeCamp16 oct 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
 
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
 
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
 
ICEfaces EE - Enterprise-ready JSF Ajax Framework
ICEfaces EE - Enterprise-ready JSF Ajax FrameworkICEfaces EE - Enterprise-ready JSF Ajax Framework
ICEfaces EE - Enterprise-ready JSF Ajax Framework
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
GIDS 2012: PaaSing a Java EE Application
GIDS 2012: PaaSing a Java EE ApplicationGIDS 2012: PaaSing a Java EE Application
GIDS 2012: PaaSing a Java EE Application
 
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
 
Java 7 workshop
Java 7 workshopJava 7 workshop
Java 7 workshop
 
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
 
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
Running your Java EE 6 applications in the Cloud @ Silicon Valley Code Camp 2010
 
GlassFish OSGi Server
GlassFish OSGi ServerGlassFish OSGi Server
GlassFish OSGi Server
 
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
 
Whats Cool in Java E 6
Whats Cool in Java E 6Whats Cool in Java E 6
Whats Cool in Java E 6
 
GlassFish Tool Bundle for Eclipse
GlassFish Tool Bundle for EclipseGlassFish Tool Bundle for Eclipse
GlassFish Tool Bundle for Eclipse
 

Destaque (7)

JFokus 2011 - Running your Java EE 6 apps in the Cloud
JFokus 2011 - Running your Java EE 6 apps in the CloudJFokus 2011 - Running your Java EE 6 apps in the Cloud
JFokus 2011 - Running your Java EE 6 apps in the Cloud
 
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
Spark IT 2011 - Simplified Web Development using Java Server Faces 2.0
 
Running your Java EE 6 applications in the clouds
Running your Java EE 6 applications in the clouds Running your Java EE 6 applications in the clouds
Running your Java EE 6 applications in the clouds
 
Java EE 6 & GlassFish v3: Paving path for the future
Java EE 6 & GlassFish v3: Paving path for the futureJava EE 6 & GlassFish v3: Paving path for the future
Java EE 6 & GlassFish v3: Paving path for the future
 
Javaee6 eclipseday-googleplex-2010
Javaee6 eclipseday-googleplex-2010Javaee6 eclipseday-googleplex-2010
Javaee6 eclipseday-googleplex-2010
 
50 features of Java EE 7 in 50 minutes at JavaZone 2014
50 features of Java EE 7 in 50 minutes at JavaZone 201450 features of Java EE 7 in 50 minutes at JavaZone 2014
50 features of Java EE 7 in 50 minutes at JavaZone 2014
 
Using the latest Java Persistence API 2 Features - Tech Days 2010 India
Using the latest Java Persistence API 2 Features - Tech Days 2010 IndiaUsing the latest Java Persistence API 2 Features - Tech Days 2010 India
Using the latest Java Persistence API 2 Features - Tech Days 2010 India
 

Semelhante a Java EE 6 and GlassFish v3: Paving the path for future

Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011
Agora Group
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
Abhishek Gupta
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
Abhishek Gupta
 
Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1 Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1
Shreedhar Ganapathy
 
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
 
Lecture 19 - Dynamic Web - JAVA - Part 1.ppt
Lecture 19 - Dynamic Web - JAVA - Part 1.pptLecture 19 - Dynamic Web - JAVA - Part 1.ppt
Lecture 19 - Dynamic Web - JAVA - Part 1.ppt
KalsoomTahir2
 

Semelhante a Java EE 6 and GlassFish v3: Paving the path for future (20)

Java EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolioJava EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolio
 
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
Creating Quick and Powerful Web applications with Oracle, GlassFish and NetBe...
 
Java Enterprise Edition 6 Overview
Java Enterprise Edition 6 OverviewJava Enterprise Edition 6 Overview
Java Enterprise Edition 6 Overview
 
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
 
Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011
 
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 ...
 
GlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and FutureGlassFish and JavaEE, Today and Future
GlassFish and JavaEE, Today and Future
 
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
 
Boston 2011 OTN Developer Days - Java EE 6
Boston 2011 OTN Developer Days - Java EE 6Boston 2011 OTN Developer Days - Java EE 6
Boston 2011 OTN Developer Days - Java EE 6
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 
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
 
Java E
Java EJava E
Java E
 
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
 
Boston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFishBoston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFish
 
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
GlassFish 3.1 – Simplifying your Java EE 6 Development and Deployment @ JAX L...
 
Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1 Java EE 6 Clustering with Glassfish 3.1
Java EE 6 Clustering with Glassfish 3.1
 
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
 
Lecture 19 - Dynamic Web - JAVA - Part 1.ppt
Lecture 19 - Dynamic Web - JAVA - Part 1.pptLecture 19 - Dynamic Web - JAVA - Part 1.ppt
Lecture 19 - Dynamic Web - JAVA - Part 1.ppt
 

Mais de Arun 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

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
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...
 
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
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
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
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
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...
 

Java EE 6 and GlassFish v3: Paving the path for future

  • 1. Using Eclipse for Java EE 6 development for GlassFish Arun Gupta, GlassFish Guy Sun Microsystems, Inc. blog.arungupta.me
  • 2. Java EE: Past & Present Right Ease of Sizing Developme Java EE 6 nt EJB Lite Web Java EE 5 Restful WS Ease of Service Web Beans Development s Extensibility J2EE 1.4 Annotations EJB 3.0 Robustness Web Services, Persistence API Enterprise Management, New and Java J2EE 1.3 Deployment, Updated Async. Platform CMP, Web Services Connector Connector Architecture ` Java EE 6 J2EE 1.2 Servlet, JSP, Web Profile JPE EJB, JMS Project RMI/IIOP Using Eclipse for Java EE 6 development for GlassFish Slide 2
  • 3. Goals for the Java EE 6 Platform • Right Sizing the Platform > Flexible, lighter weight • Extensible >Embrace Open Source Frameworks • Easier to use, develop on > Continue on path set by Java EE 5 Using Eclipse for Java EE 6 development for GlassFish Slide 3
  • 4. Right Sizing the Platform: Profiles • Make platform flexible > Decouple specifications to allow more combinations > Expands potential licensee ecosystem > Profiles >Targeted technology bundles >Defined through the JCP >First profile: Web Profile – Defined by the Java EE 6 Expert Group Using Eclipse for Java EE 6 development for GlassFish Slide 4
  • 5. Right Sizing the Platform: Pruning • Make platform lighter > Makes some technologies optional > Pruned today, means > optional in the next release > Deleted in the subsequent release > Pruned Technologies will be marked in the javadocs > Current pruning list > JAX-RPC, EJB 2.X Entity Beans, JAXR, JSR-88 Using Eclipse for Java EE 6 development for GlassFish Slide 5
  • 6. Extensibility • Embrace open source libraries and frameworks • Zero-configuration, drag-and-drop for web frameworks > Servlets, servlet filters, context listeners for a framework get discovered and registered automatically • Plugin library jars using web fragments Using Eclipse for Java EE 6 development for GlassFish Slide 6
  • 7. EoD Example - Servlets Servlet in Java EE 5: Create two source <!--Deployment descriptor /* Code in Java Class */ files web.xml --> <web-app> package com.foo; <servlet> public class MyServlet <servlet-name>MyServlet extends HttpServlet { </servlet-name> public void <servlet-class> doGet(HttpServletRequest com.foo.MyServlet </servlet-class> req,HttpServletResponse res) </servlet> { <servlet-mapping> <servlet-name>MyServlet ... </servlet-name> <url-pattern>/myApp/* } </url-pattern> </servlet-mapping> ... ... </web-app> } Using Eclipse for Java EE 6 development for GlassFish Slide 7
  • 8. EoD Example - Servlets Servlet in Java EE 6: In many cases a single source file package com.foo; @WebServlet(name=”MyServlet”, urlPattern=”/myApp/*”) public class MyServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) { ... } Using Eclipse for Java EE 6 development for GlassFish Slide 8
  • 9. Web/EJB Application in Java EE 5 Platform foo.ear foo.ear foo_web.war lib/foo_common.jar com/acme/Foo.class WEB-INF/web.xml WEB-INF/classes/ com/acme/FooServlet.class foo_web.war WEB-INF/classes com/acme/Foo.class OR WEB-INF/web.xml WEB-INF/classes/ com/acme/FooServlet.class foo_ejb.jar com/acme/FooBean.class foo_ejb.jar com/acme/Foo.class com/acme/FooBean.class Using Eclipse for Java EE 6 development for GlassFish Slide 9
  • 10. Web/EJB Application in Java EE 6 Platform foo.war WEB-INF/classes/ com/acme/FooServlet.class WEB-INF/classes/ com/acme/FooBean.class web.xml Using Eclipse for Java EE 6 development for GlassFish Slide 10
  • 11. <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> http://blog.arungupta.me/2009/08/totd-91-applying-java-ee-6-web-fragment-xml-to-apache-wicket-deploy-on-glassfish-v3/ Using Eclipse for Java EE 6 development for GlassFish Slide 11
  • 12. New: GlassFish + Eclipse Bundle Using Eclipse for Java EE 6 development for GlassFish Slide 12
  • 13. Eclipse Eclipse Java EE IDE User Workspace: • V2.1 & v3 GlassFish v2.1, v3prelude domain • JavaDB config JDK1.6 (optional) • MySQL JDBC Driver • Java EE 5/6 projects GlassFish Eclipse Plugins • User settings Installer Registration Using Eclipse for Java EE 6 development for GlassFish Slide 13
  • 14. Key Features • Out of the box Installer with all Java EE Eclipse Standard Features and JDK and GlassFish servers • GlassFish v2.1 & v3 Prelude automatic domain creation/configuration • Java EE 5 and 6 integration > Servlet 3.0, EJB 3.1, JPA 2.0, JAX-WS wizards • JavaDB configuration, JDBC resource wizard • MySQL JDBC Driver pre-registered • Start, Stop, Deploy, undeploy, Debug(JSP/Java) (v2, v3) • Deploy on Save: Default for v3 • HTTP Monitoring pre-configured Using Eclipse for Java EE 6 development for GlassFish Slide 14
  • 15. Key Features • All Sun DTDs registered for validation/code completion • All Java EE APIs registered for code completion/JavaDoc • GlassFish Log integrated into Eclipse IDE console • GlassFish Update Center & Admin Console Integration • All v2, v3p DocBooks integrated in Help (no need for Internet) • GlassFish Web Properties in Help Menu (The Aquarium, Support,...) Using Eclipse for Java EE 6 development for GlassFish Slide 15
  • 16. Key Features • Update Centers Integration • Eclipse Update Center for Eclipse bits and the GlassFish Plugin • In future releases: > JavaFX Plugin > WebSynergy ,GlassFish ESB > Better MySQL integration Using Eclipse for Java EE 6 development for GlassFish Slide 16
  • 17. Size of GlassFish Tools Bundle for Eclipse Components in the Installer Size (total=375Mb) ● Eclipse 164Mb ● GlassFish v2.1 87Mb ● GlassFish v3 Prelude 29Mb ● GlassFish Plugin for Eclipse 10Mb (includes javadoc and help books) ● Registration/Configuration 0.5Mb ● JDK 1.6u12 85Mb • JBoss Dev Studio 2.0 RC2 +EAP = 617Mb (No JDK) • Oracle Workshop for WebLogic 10.2 = 748Mb (No JDK) Using Eclipse for Java EE 6 development for GlassFish Slide 17
  • 18. GlassFish Tools Bundle for Eclipse Using Eclipse for Java EE 6 development for GlassFish Slide 18
  • 19. GlassFish Tools Bundle for Eclipse Using Eclipse for Java EE 6 development for GlassFish Slide 19
  • 21. GlassFish Tools Bundle for Eclipse Using Eclipse for Java EE 6 development for GlassFish Slide 21
  • 22. GlassFish Tools Bundle for Eclipse Using Eclipse for Java EE 6 development for GlassFish Slide 22
  • 23. For More Information • GlassFish Tools Bundle for Eclipse > http://download.java.net/glassfish/eclipse • http://glassfishplugins.dev.java.net • Java EE 6 Reference Implementation : GlassFish v3 > http://glassfish.org Using Eclipse for Java EE 6 development for GlassFish Slide 23