SlideShare une entreprise Scribd logo
1  sur  25
Télécharger pour lire hors ligne
<Insert Picture Here>




Tools Coverage for the Java EE 6 Platform
Ludovic Champenois
GlassFish
AGENDA



• Java EE 6: Overview And Status
• Tools Support and Demos
  – In NetBeans, Eclipse, IntelliJ
     • Demo 1: Server runtime
     • Demo 2: JPA
     • Demo 3: JSF2.0
     • Demo 4: CDI
     • Demo 5: RestFul Services Jax-RS
• Q&A




                                         3
Java EE 6



• What's New?
  –   Lots of improvements to existing EE 5 APIs
  –   Several New APIs
  –   Web Profile
  –   Pluggability/Extensibility
  –   Dependency Injection
• A Major new release for Java Enterprise Applications
  – Easier, Smaller, Extensible
  – GlassFish 3 is the Reference Implementation (and a quality
    product...)
  – GlassFish 3.1 is adding Clustering support



                                                                 4
Java EE 6: Fast Uptake within Open
 Source and Commercial Community

Available



Announced




                                      5
Java EE 6: New and Updated components



Updated Components          New Components          Tools Support?

• EJB 3.1                   ●
                              JAX-RS 1.1            • Netbeans
• JPA 2.0
                            ●
                              CDI 1.0               • Eclipse
                            ●
                              Bean Validation 1.0
• Servlet 3.0               ●
                              DI 1.0                • IntelliJ
• JSF 2.0                   ●
                              Managed Beans 1.0     • Complete Support
                            ●
                              JASPIC 1.1
• Interceptors 1.1          ●
                                                    • Partial Support...
• JAX-WS 2.2
• JSR-109 1.3

• JSP 2.2
• EL 2.2 JSR-250 1.1
• JACC 1.5 Connectors 1.6




                                                                           6
Java EE 6: Impact on Tools

• New APIs are easy to expose:
  – Libraries in project path. More and more on Maven (EE 6 APIs in
    Maven)
  – Automatic Code completion
  – JavaDoc: Some IDEs...
• New Concepts:
  – JSF 2.0: face-config obsolete, ManagedBeans obsolete (->CDI)
  – JAX-RS
  – No Web.xml, more annotations
• New Packaging:
  – EBJ Inside Web Application Projects!
  – Web Profile versus Full Profile



                                                                 7
Java EE 6 : Impact on Tools



• Alignment of Platform changes and the IDEs
  – Emacs (James Gosling 81), vi (Bill Joy 76): First IDES choice
     • Java EE 6 compliant
  – NetBeans 6.8: same day as Java EE 6 GlassFish (Dec 2009)
     • Almost everything but CDI and advanced JF 2.0 (fixed in 6.9)
  – IntelliJ: Same week as Java EE 6
     • GlassFish Runtime target Supported in Dec 2009
• Eclipse:
  – ava EE 6 support June 2010
  – But GlassFish Plugin with EE 6 support before...
  – Oracle Enterprise Pack for Eclipse



                                                                  8
Oracle Involvement In Java EE 6 And Tools



• Oracle is the main driver of the GlassFish Community
  – The Java EE 6 Reference Implementation
  – Production Ready (Clustering, HA,...)
• Oracle is the main driver of the NetBeans Community
  – Tight coupling with Java SE and EE changes.
• Oracle has many Eclipse Committers
  – In JPA: EclipseLink Runtime and Dali Tooling
  – In Core Java EE tooling
  – In JSF: Most JSF WTP Eclipse tooling done by Oracle folks
     • Jboss Tools has their own JSF tooling
  – GlassFish and Weblogic support via OEPE


                                                                9
Java EE 6: Oracle Gives Developer Choices




Oracle Enterprise Pack for Eclipse      NetBeans 6.9.1 and Coming 6.10
Target WebLogic and GlassFish 3         Bundled with GlassFish 3




                   IntelliJ IDEA has great Java EE 6 Support



                                                                         10
Java EE 6 Runtime in Tools:



NetBeans                     Eclipse                              IntelliJ

• NetBeans 6.8: same day • Eclipse 3.5 WTP GlassFish Plugin       • IntelliJ 9.0 same week as Java EE
  as Java EE 6 GlassFish       for Java EE 6                        6
• NetBeans 6.9.1 and 7.0     • Eclipse 3.6 (June 2010): initial
  nightlies: complete EE 6     support for Java EE 6, far from
  support                      being Complete
                             • GlassFish Plugin in OEPE and a
• GlassFish Plugin bundled                                        • GlassFish Support bundled
                               dev Update Center
• GlassFish Runtime          • No bundle at this time, can
  Bundled and                  download the runtime via the       • No Bundle, need separate dowload
  Preconfigured                plugin
• EveryThing works Out of                                         • Manual Configurations, a bit
                             • Some manual Configurations
  the Box                                                           difficult




                                                                                                   11
Java EE 6: Working with
a GlassFish Server in the
Tools.




                            12
Java EE 6 Working with Databases



• Via JPA 2.0
• Out of the Box, GlassFish 3 bundles JavaDB
    – Registered in NetBeans and Eclipse
•   All IDEs can register DB Resources and Introspect
•   All IDEs can Generate JPA From DB
•   All IDEs give decent Mapping Tooling
•   Can Start/Stop Dbs only in NetBeans!
•   NetBeans has extra Wizards to Generate CRUD JSF2
•   NetBeans has better Default in Persistence.xml
•   IntelliJ has some ER/UML view and JP/QL Support

                                                        13
Java EE 6 JPA Demo




                     14
JSF 2.0



• Faceletes is the foundation
  – XHTML and tags
  – Templating
     • ui:include, ui:composition, ui:define,...
  – Composite Components
     • Reusable
     • Turn page markup into a JSF UI component
• Managed Beans
  – Annotations (faces-config is optional)
  – JSF APIs or
  – CDI APIs (Preferred)
     • CDI support (@Named, @Inject, @SessionScoped,...)

                                                           15
JSF 2.0 Tooling




• NetBeans and IntelliJ are best
  – XHTML/Facelet Editor
     • Code Completion, Beans navigation
  – NetBeans 6.10 bundles Primefaces components
                              >


  – JPA to JSF 2.0 Wizards (only NetBeans)
  – Create Composite Components automatically
• Eclipse is really lacking the new features with CDI and
  annotations




                                                            16
Java EE 6 JSF 2.0 Demo




                         17
Java EE 6 CDI: Contexts and Dependency Injection


JSF/Facelets
  Servlets                      ●Dependency injection
                                  ● Builds on @Inject API

                                ●Context/scope management
JSF/Facelets
                                ●Works with multiple bean types

                Managed Bean    ●Includes ELResolver

   MDB                          ●Ejb Session and Singleton




Web Services   Managed Bean
                                ●   The CDI Container will
                                     ● Resolve dependencies
                CDI Container
                                     ● Offer the bean for

                                       Injection


                                                              18
Java EE 6 CDI Tooling



• Should be easy:
  – Enable CDI in a Module: Create an empty beans.xml file
  – Use @Inject, @Named, @SessionScoped, @ApplicationScoped
• Only Need EE 6 APIs in Path and Code Completion.
• JavaDoc a Goody
• But in EL (Facelets and JSP): Code Completion?
  – Not for Eclipse at this moment. Only in NetBeans and IntelliJ




                                                                    19
Java EE 6 CDI Demo




                     20
JAX-RS



• REST made easy
• Java Annotation Based Resource Creation
  –   Identity of Resources
  –   Self-Descriptive Resources
  –   Navigation between Resources
  –   Representation choices
• CRUD Operations: GET, DELETE, POST, PUT




                                            21
Java EE 6 Jax-RS and Web Services



• Simple REST Resources Creation
• Advanced Wizards Generating
  – Only in NetBeans
     • Resources from Database
     • Resources from Entity Classes
     • Resources from Patterns
• JAX-WS:
  – Service Creation
  – Testing Web Services: Advantage NetBeans
  – Eclipse is Axis based




                                               22
Java EE 6 REST Web
Services Demo




                     23
Java EE 6 In IDEs



• IntelliJ http://www.jetbrains.com/idea/
• Eclipse https://glassfishplugins.dev.java.net/
• NetBeans http://netbeans.org/




                                                   24
Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010

Contenu connexe

Tendances

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
 
Understanding
Understanding Understanding
Understanding
Arun Gupta
 
Java EE 6, Eclipse @ EclipseCon
Java EE 6, Eclipse @ EclipseConJava EE 6, Eclipse @ EclipseCon
Java EE 6, Eclipse @ EclipseCon
Ludovic Champenois
 

Tendances (20)

Java EE 6 Component Model Explained
Java EE 6 Component Model Explained Java EE 6 Component Model Explained
Java EE 6 Component Model Explained
 
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 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
 
Understanding
Understanding Understanding
Understanding
 
OTN Developer Days - Java EE 6
OTN Developer Days - Java EE 6OTN Developer Days - Java EE 6
OTN Developer Days - Java EE 6
 
Glass Fishv3 March2010
Glass Fishv3 March2010Glass Fishv3 March2010
Glass Fishv3 March2010
 
JavaEE 6 tools coverage
JavaEE 6 tools coverageJavaEE 6 tools coverage
JavaEE 6 tools coverage
 
Getting Started with Java EE 7
Getting Started with Java EE 7Getting Started with Java EE 7
Getting Started with Java EE 7
 
WildFly AppServer - State of the Union
WildFly AppServer - State of the UnionWildFly AppServer - State of the Union
WildFly AppServer - State of the Union
 
JBoss Application Server 7
JBoss Application Server 7JBoss Application Server 7
JBoss Application Server 7
 
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, Eclipse @ EclipseCon
Java EE 6, Eclipse @ EclipseConJava EE 6, Eclipse @ EclipseCon
Java EE 6, Eclipse @ EclipseCon
 
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 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
 
WildFly BOF and V9 update @ Devoxx 2014
WildFly BOF and V9 update @ Devoxx 2014WildFly BOF and V9 update @ Devoxx 2014
WildFly BOF and V9 update @ Devoxx 2014
 
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 & Java EE Business Update @ CEJUG
GlassFish & Java EE Business Update @ CEJUGGlassFish & Java EE Business Update @ CEJUG
GlassFish & Java EE Business Update @ CEJUG
 
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
WildFly v9 - State of the Union Session at Voxxed, Istanbul, May/9th 2015.
 
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 EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexusJava EE 6 & GlassFish v3 @ DevNexus
Java EE 6 & GlassFish v3 @ DevNexus
 

Similaire à Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010

Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011
Agora Group
 
Java EE 6, Eclipse, GlassFish @EclipseCon 2010
Java EE 6, Eclipse, GlassFish @EclipseCon 2010Java EE 6, Eclipse, GlassFish @EclipseCon 2010
Java EE 6, Eclipse, GlassFish @EclipseCon 2010
Ludovic Champenois
 
S313557 java ee_programming_model_explained_dochez
S313557 java ee_programming_model_explained_dochezS313557 java ee_programming_model_explained_dochez
S313557 java ee_programming_model_explained_dochez
Jerome Dochez
 
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
 

Similaire à Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010 (20)

Java EE 7 Soup to Nuts at JavaOne 2014
Java EE 7 Soup to Nuts at JavaOne 2014Java EE 7 Soup to Nuts at JavaOne 2014
Java EE 7 Soup to Nuts at JavaOne 2014
 
Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011Andrei Niculae - JavaEE6 - 24mai2011
Andrei Niculae - JavaEE6 - 24mai2011
 
Java EE 6, Eclipse, GlassFish @EclipseCon 2010
Java EE 6, Eclipse, GlassFish @EclipseCon 2010Java EE 6, Eclipse, GlassFish @EclipseCon 2010
Java EE 6, Eclipse, GlassFish @EclipseCon 2010
 
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
 
Introduction To NetBeans IDE
Introduction To NetBeans IDEIntroduction To NetBeans IDE
Introduction To NetBeans IDE
 
Java EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolioJava EE 6 and GlassFish portfolio
Java EE 6 and GlassFish portfolio
 
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
 
GlassFish Community and future larochelle
GlassFish Community and future larochelleGlassFish Community and future larochelle
GlassFish Community and future larochelle
 
S313557 java ee_programming_model_explained_dochez
S313557 java ee_programming_model_explained_dochezS313557 java ee_programming_model_explained_dochez
S313557 java ee_programming_model_explained_dochez
 
Developing Java Microservices Fast with Open Liberty
Developing Java Microservices Fast with Open LibertyDeveloping Java Microservices Fast with Open Liberty
Developing Java Microservices Fast with Open Liberty
 
Java ide comparision
Java ide comparisionJava ide comparision
Java ide comparision
 
Angular 2 overview
Angular 2 overviewAngular 2 overview
Angular 2 overview
 
스프링 프레임워크
스프링 프레임워크스프링 프레임워크
스프링 프레임워크
 
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 & 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 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 ...
 
InterConnect 2016, OpenJPA and EclipseLink Usage Scenarios (PEJ-5303)
InterConnect 2016, OpenJPA and EclipseLink Usage Scenarios (PEJ-5303)InterConnect 2016, OpenJPA and EclipseLink Usage Scenarios (PEJ-5303)
InterConnect 2016, OpenJPA and EclipseLink Usage Scenarios (PEJ-5303)
 
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
 
מתפ
מתפמתפ
מתפ
 

Plus de Arun Gupta

Plus 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
 

Dernier

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
Safe Software
 
+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...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
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
 
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
 

Dernier (20)

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...
 
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
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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, ...
 
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
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
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
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+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...
 
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
 
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 - 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...
 
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
 

Tools Coverage for the Java EE Platform @ Silicon Valley Code Camp 2010

  • 1.
  • 2. <Insert Picture Here> Tools Coverage for the Java EE 6 Platform Ludovic Champenois GlassFish
  • 3. AGENDA • Java EE 6: Overview And Status • Tools Support and Demos – In NetBeans, Eclipse, IntelliJ • Demo 1: Server runtime • Demo 2: JPA • Demo 3: JSF2.0 • Demo 4: CDI • Demo 5: RestFul Services Jax-RS • Q&A 3
  • 4. Java EE 6 • What's New? – Lots of improvements to existing EE 5 APIs – Several New APIs – Web Profile – Pluggability/Extensibility – Dependency Injection • A Major new release for Java Enterprise Applications – Easier, Smaller, Extensible – GlassFish 3 is the Reference Implementation (and a quality product...) – GlassFish 3.1 is adding Clustering support 4
  • 5. Java EE 6: Fast Uptake within Open Source and Commercial Community Available Announced 5
  • 6. Java EE 6: New and Updated components Updated Components New Components Tools Support? • EJB 3.1 ● JAX-RS 1.1 • Netbeans • JPA 2.0 ● CDI 1.0 • Eclipse ● Bean Validation 1.0 • Servlet 3.0 ● DI 1.0 • IntelliJ • JSF 2.0 ● Managed Beans 1.0 • Complete Support ● JASPIC 1.1 • Interceptors 1.1 ● • Partial Support... • JAX-WS 2.2 • JSR-109 1.3 • JSP 2.2 • EL 2.2 JSR-250 1.1 • JACC 1.5 Connectors 1.6 6
  • 7. Java EE 6: Impact on Tools • New APIs are easy to expose: – Libraries in project path. More and more on Maven (EE 6 APIs in Maven) – Automatic Code completion – JavaDoc: Some IDEs... • New Concepts: – JSF 2.0: face-config obsolete, ManagedBeans obsolete (->CDI) – JAX-RS – No Web.xml, more annotations • New Packaging: – EBJ Inside Web Application Projects! – Web Profile versus Full Profile 7
  • 8. Java EE 6 : Impact on Tools • Alignment of Platform changes and the IDEs – Emacs (James Gosling 81), vi (Bill Joy 76): First IDES choice • Java EE 6 compliant – NetBeans 6.8: same day as Java EE 6 GlassFish (Dec 2009) • Almost everything but CDI and advanced JF 2.0 (fixed in 6.9) – IntelliJ: Same week as Java EE 6 • GlassFish Runtime target Supported in Dec 2009 • Eclipse: – ava EE 6 support June 2010 – But GlassFish Plugin with EE 6 support before... – Oracle Enterprise Pack for Eclipse 8
  • 9. Oracle Involvement In Java EE 6 And Tools • Oracle is the main driver of the GlassFish Community – The Java EE 6 Reference Implementation – Production Ready (Clustering, HA,...) • Oracle is the main driver of the NetBeans Community – Tight coupling with Java SE and EE changes. • Oracle has many Eclipse Committers – In JPA: EclipseLink Runtime and Dali Tooling – In Core Java EE tooling – In JSF: Most JSF WTP Eclipse tooling done by Oracle folks • Jboss Tools has their own JSF tooling – GlassFish and Weblogic support via OEPE 9
  • 10. Java EE 6: Oracle Gives Developer Choices Oracle Enterprise Pack for Eclipse NetBeans 6.9.1 and Coming 6.10 Target WebLogic and GlassFish 3 Bundled with GlassFish 3 IntelliJ IDEA has great Java EE 6 Support 10
  • 11. Java EE 6 Runtime in Tools: NetBeans Eclipse IntelliJ • NetBeans 6.8: same day • Eclipse 3.5 WTP GlassFish Plugin • IntelliJ 9.0 same week as Java EE as Java EE 6 GlassFish for Java EE 6 6 • NetBeans 6.9.1 and 7.0 • Eclipse 3.6 (June 2010): initial nightlies: complete EE 6 support for Java EE 6, far from support being Complete • GlassFish Plugin in OEPE and a • GlassFish Plugin bundled • GlassFish Support bundled dev Update Center • GlassFish Runtime • No bundle at this time, can Bundled and download the runtime via the • No Bundle, need separate dowload Preconfigured plugin • EveryThing works Out of • Manual Configurations, a bit • Some manual Configurations the Box difficult 11
  • 12. Java EE 6: Working with a GlassFish Server in the Tools. 12
  • 13. Java EE 6 Working with Databases • Via JPA 2.0 • Out of the Box, GlassFish 3 bundles JavaDB – Registered in NetBeans and Eclipse • All IDEs can register DB Resources and Introspect • All IDEs can Generate JPA From DB • All IDEs give decent Mapping Tooling • Can Start/Stop Dbs only in NetBeans! • NetBeans has extra Wizards to Generate CRUD JSF2 • NetBeans has better Default in Persistence.xml • IntelliJ has some ER/UML view and JP/QL Support 13
  • 14. Java EE 6 JPA Demo 14
  • 15. JSF 2.0 • Faceletes is the foundation – XHTML and tags – Templating • ui:include, ui:composition, ui:define,... – Composite Components • Reusable • Turn page markup into a JSF UI component • Managed Beans – Annotations (faces-config is optional) – JSF APIs or – CDI APIs (Preferred) • CDI support (@Named, @Inject, @SessionScoped,...) 15
  • 16. JSF 2.0 Tooling • NetBeans and IntelliJ are best – XHTML/Facelet Editor • Code Completion, Beans navigation – NetBeans 6.10 bundles Primefaces components > – JPA to JSF 2.0 Wizards (only NetBeans) – Create Composite Components automatically • Eclipse is really lacking the new features with CDI and annotations 16
  • 17. Java EE 6 JSF 2.0 Demo 17
  • 18. Java EE 6 CDI: Contexts and Dependency Injection JSF/Facelets Servlets ●Dependency injection ● Builds on @Inject API ●Context/scope management JSF/Facelets ●Works with multiple bean types Managed Bean ●Includes ELResolver MDB ●Ejb Session and Singleton Web Services Managed Bean ● The CDI Container will ● Resolve dependencies CDI Container ● Offer the bean for Injection 18
  • 19. Java EE 6 CDI Tooling • Should be easy: – Enable CDI in a Module: Create an empty beans.xml file – Use @Inject, @Named, @SessionScoped, @ApplicationScoped • Only Need EE 6 APIs in Path and Code Completion. • JavaDoc a Goody • But in EL (Facelets and JSP): Code Completion? – Not for Eclipse at this moment. Only in NetBeans and IntelliJ 19
  • 20. Java EE 6 CDI Demo 20
  • 21. JAX-RS • REST made easy • Java Annotation Based Resource Creation – Identity of Resources – Self-Descriptive Resources – Navigation between Resources – Representation choices • CRUD Operations: GET, DELETE, POST, PUT 21
  • 22. Java EE 6 Jax-RS and Web Services • Simple REST Resources Creation • Advanced Wizards Generating – Only in NetBeans • Resources from Database • Resources from Entity Classes • Resources from Patterns • JAX-WS: – Service Creation – Testing Web Services: Advantage NetBeans – Eclipse is Axis based 22
  • 23. Java EE 6 REST Web Services Demo 23
  • 24. Java EE 6 In IDEs • IntelliJ http://www.jetbrains.com/idea/ • Eclipse https://glassfishplugins.dev.java.net/ • NetBeans http://netbeans.org/ 24