SlideShare a Scribd company logo
1 of 26
Download to read offline
Creating Quick and
Powerful Web
Applications with
MySQL, GlassFish, and
NetBeans/Eclipse



Arun Gupta, GlassFish Guy
http://blogs.sun.com/arungupta
Sun Microsystems, Inc.
                                 1
Who is Arun ?
• GlassFish Guy
• With Sun for over 10 years
• Specifications, Engineering, Standards,
Interoperability, ...
   > blogs.sun.com/arungupta
   > twitter.com/arungupta




             Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   2
What is GlassFish ?

• Open Source Community
  > Users, Partners, Testers, Developers, ...
  > Started in 2005 on java.net
• Application Server
  > Java EE 5 and 6 Reference Implementation
  > Enterprise Quality and Open Source
  > Full Commercial Support from Sun




            Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   3
State of GlassFish

• GlassFish v2
 >   Java EE 5 Reference Implementation
 >   Clustering, Load Balancing, High Availability
 >   Web-based/CLI Administration Console
 >   .NET 3.x/4.x Web services Interoperability
 >   Current Release: 2.1
• GlassFish v3
 >   Java EE 6 Reference Implementation
 >   Modular (OSGi), Embeddable, Extensible
 >   Java EE, Rails, Grails, Django, ...
 >   Current Release: v3 Preview
             Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   4
Sun GlassFish Enterprise Server


                                            Enterprise Manager



                     Customer
                     Advocate                                                       eLearning
                                                                                    Credit




    Customer Focused                                                                          24x7 Support
    Support Team

                                               GlassFish
        Sun VIP                                Open Source
        Interoperability                       Application Server                              Patches &
        Support                                                                                Upgrades



           Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse          5
Demo: JDBC Connection Pool &
     Resource creation using
     Administration Console




       Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   6
Java Persistence API
• Java specification that defines Object to
  Relational Mapping in Java EE 5
• Annotations to persist POJOs
• JPQL to query objects from the database
    >MySQL-specific query statements (LIMIT)
• Requires a Persistence Provider and a
  Database
    >Common Persistence Providers:
     TopLinkEssentials, EclipseLink JPA, ...
    >Common Databases: MySQL, Oracle, ...
         Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   7
JPA Sample
@Entity class Employee {
     @Id private int id;
     private String firstName;
     private String lastName;
     pubic Employee (int id,
                    String firstName,
                    String lastName) {
      ...
     }

    public String getFullName(){
       return firstName + lastName;
     }
    ...
}

            Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   8
Demo: CRUD operations using
     NetBeans, JPA, and
     GlassFish




http://blogs.sun.com/arungupta/entry/totd_38_creating_a_mysql

              Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   9
RESTful Web Services

• JAX-RS: Java API for RESTful Web services
• Annotation-based server-side API
• HTTP Centric
• Jersey: Reference Implementation of JAX-RS
• Also provides client-side API
• jersey.dev.java.net


        Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   10
JAX-RS Sample
@Path("widgets/{id}")
@Produces("application/widgets+xml")
@Consumes("application/widgets+xml")
public class WidgetResource {
    private Widget w;
    public WidgetResource(@PathParam("id") String id)
{
         this.w = locateRecord(id);
    }

    @GET
    Widget getWidget() {
          return w;
    }

    @PUT
    Widget updateWidget(Widget update) {
          w = processUpdate(update);
          return w;
    }
}

          Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   11
GET /NetBeans/6.5




       Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   12
Demo: Publish your MySQL Table
     as a RESTful Web service




http://blogs.sun.com/arungupta/entry/restful_representation_of_sakila_using

              Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   13
Dynamic Languages and
  Web Frameworks




http://glassfish-scripting.dev.java.net
              Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   14
Rails on GlassFish

• Native Deployment, no packaging required
  > GlassFish v3
  > Capistrano recipes available
  > Server runtime available as Gem
• WAR deployment using Warbler
  > GlassFish v2 and v3
• JRuby/Rails (Groovy/Grails, Django/Jython)
  modules at Update Center
• Commercially supported by Sun
          Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   15
Tooling
 • NetBeans support
   > Develop, deploy debug




          Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   16
Demo: Develop, Deploy, and Debug
     Rails application using
     NetBeans and GlassFish



http://blogs.sun.com/arungupta/entry/screencast_26_develop_run_debug

                Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   17
GlassFish v3 Monitoring
• Event-driven light-weight and non-intrusive monitoring
• Modules provide domain specific probes (monitoring
  events)
  > EJB, Web, Connector, JPA, Jersey, Orb
• Monitoring data gathered on demand
• End-to-end monitoring on Solaris platforms using DTrace
• Equivalent functionality for GlassFish on other platforms
  (including Solaris) using scripting languages
  > JavaScript to start with



            Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   18
Demo: End-to-End Application
      Tracing using NetBeans, GlassFish,
      MySQL, OpenSolaris, DTrace




        Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   19
GlassFish Tools Bundle for Eclipse




       Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   20
GlassFish Tools Bundle – Key Features
• Out-of-the-box installer with all Java EE Eclipse Standard
  Features, JDK and GlassFish servers
• GlassFish Registration Wizard
• GlassFish v2.1 and v3 automatic domain
  creation/configuration
• JavaDB configuration, JDBC resource wizard
• Start, Stop, Deploy, Undeploy, Debug JSP/Java
• Deploy on Save: Default for v3
• HTTP Monitoring preconfigured

           Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   21
More Features ...
• All Sun DTDs registered for validation/code completion
• All Java EE APIs registered for code
  completion/Javadocs
• GlassFish log integrated into Eclipse IDE console
• All v2 and v3 DocBooks integrated in Help
• GlassFish Web Properties in Help menu (The Aquarium,
  Support, ...)
• ...
• Download: http://download.java.net/glassfish/eclipse

           Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   22
Demo: GlassFish Tools Bundle
      for Eclipse




http://blogs.sun.com/arungupta/entry/screencast_26_develop_run_debug

                Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   23
Price Performance
SpecjAppServer2004 (Nov 2008)

  • 2% cost of Dell, 5% cost of HP
  • 13 times better price/performance




 http://www.sun.com/servers/x64/x4150/benchmarks.jsp#3
            Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   24
Why GlassFish and MySQL ?

• Same pricing strategy – per server, unlimited
• Same support levels – Gold, Silver, ...
• Same support organization – No buck passing
• Combined reference architectures
 > MySQL cluster and Sailfin:
   http://www.sun.com/offers/details/mysql_cg_service_execution.html




            Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   25
References

• GlassFish
  > http://glassfish.org
  > http://blogs.sun.com/theaquarium_br
• NetBeans
  > http://netbeans.org
  > http://planetnetbeans.org/
• Eclipse: http://download.java.net/glasfish/eclipse
• MySQL: http://mysql.org
• http://blogs.sun.com/arungupta
          Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse   26

More Related Content

What's hot

Azure PaaS databases
Azure PaaS databasesAzure PaaS databases
Azure PaaS databasesGianluca Hotz
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerColin Charles
 
Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud Colin Charles
 
Confoo 202 - MySQL Group Replication and ReplicaSet
Confoo 202 - MySQL Group Replication and ReplicaSetConfoo 202 - MySQL Group Replication and ReplicaSet
Confoo 202 - MySQL Group Replication and ReplicaSetDave Stokes
 
Get ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience EdgeGet ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience EdgeVarunNehra
 
How to upgrade like a boss to MySQL 8.0 - PLE19
How to upgrade like a boss to MySQL 8.0 -  PLE19How to upgrade like a boss to MySQL 8.0 -  PLE19
How to upgrade like a boss to MySQL 8.0 - PLE19Alkin Tezuysal
 
Nowosci w portfolio Citrix
Nowosci w portfolio CitrixNowosci w portfolio Citrix
Nowosci w portfolio CitrixPawel Serwan
 
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)Andrew Morgan
 
程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍Jinrong Ye
 
Cnam cours azure web sites
Cnam cours azure web sitesCnam cours azure web sites
Cnam cours azure web sitesAymeric Weinbach
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...GeneXus
 
FOSDEM 2015 - NoSQL and SQL the best of both worlds
FOSDEM 2015 - NoSQL and SQL the best of both worldsFOSDEM 2015 - NoSQL and SQL the best of both worlds
FOSDEM 2015 - NoSQL and SQL the best of both worldsAndrew Morgan
 
Codership's galera cluster installation and quickstart webinar march 2016
Codership's galera cluster installation and quickstart webinar march 2016Codership's galera cluster installation and quickstart webinar march 2016
Codership's galera cluster installation and quickstart webinar march 2016Sakari Keskitalo
 
Mysql 8 vs Mariadb 10.4 Highload++ 2019
Mysql 8 vs Mariadb 10.4 Highload++ 2019Mysql 8 vs Mariadb 10.4 Highload++ 2019
Mysql 8 vs Mariadb 10.4 Highload++ 2019Alkin Tezuysal
 
Scaling MySQL using Fabric
Scaling MySQL using FabricScaling MySQL using Fabric
Scaling MySQL using FabricKarthik .P.R
 
Apache CloudStack at LinuxCon Japan
Apache CloudStack at LinuxCon JapanApache CloudStack at LinuxCon Japan
Apache CloudStack at LinuxCon JapanKimihiko Kitase
 

What's hot (20)

Azure PaaS databases
Azure PaaS databasesAzure PaaS databases
Azure PaaS databases
 
MySQL features missing in MariaDB Server
MySQL features missing in MariaDB ServerMySQL features missing in MariaDB Server
MySQL features missing in MariaDB Server
 
Cnam cours azure iaas
Cnam cours azure iaasCnam cours azure iaas
Cnam cours azure iaas
 
Cnam azure 2015 storage
Cnam azure 2015  storageCnam azure 2015  storage
Cnam azure 2015 storage
 
Databases in the hosted cloud
Databases in the hosted cloud Databases in the hosted cloud
Databases in the hosted cloud
 
Architecting Windows Azure
Architecting Windows AzureArchitecting Windows Azure
Architecting Windows Azure
 
Confoo 202 - MySQL Group Replication and ReplicaSet
Confoo 202 - MySQL Group Replication and ReplicaSetConfoo 202 - MySQL Group Replication and ReplicaSet
Confoo 202 - MySQL Group Replication and ReplicaSet
 
Get ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience EdgeGet ready for Jamstack with Sitecore Experience Edge
Get ready for Jamstack with Sitecore Experience Edge
 
How to upgrade like a boss to MySQL 8.0 - PLE19
How to upgrade like a boss to MySQL 8.0 -  PLE19How to upgrade like a boss to MySQL 8.0 -  PLE19
How to upgrade like a boss to MySQL 8.0 - PLE19
 
Nowosci w portfolio Citrix
Nowosci w portfolio CitrixNowosci w portfolio Citrix
Nowosci w portfolio Citrix
 
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
MySQL Cluster - Latest Developments (up to and including MySQL Cluster 7.4)
 
程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍程序猿都该知道的MySQL秘籍
程序猿都该知道的MySQL秘籍
 
Cnam cours azure web sites
Cnam cours azure web sitesCnam cours azure web sites
Cnam cours azure web sites
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
 
FOSDEM 2015 - NoSQL and SQL the best of both worlds
FOSDEM 2015 - NoSQL and SQL the best of both worldsFOSDEM 2015 - NoSQL and SQL the best of both worlds
FOSDEM 2015 - NoSQL and SQL the best of both worlds
 
Codership's galera cluster installation and quickstart webinar march 2016
Codership's galera cluster installation and quickstart webinar march 2016Codership's galera cluster installation and quickstart webinar march 2016
Codership's galera cluster installation and quickstart webinar march 2016
 
Scala & Lift (JEEConf 2012)
Scala & Lift (JEEConf 2012)Scala & Lift (JEEConf 2012)
Scala & Lift (JEEConf 2012)
 
Mysql 8 vs Mariadb 10.4 Highload++ 2019
Mysql 8 vs Mariadb 10.4 Highload++ 2019Mysql 8 vs Mariadb 10.4 Highload++ 2019
Mysql 8 vs Mariadb 10.4 Highload++ 2019
 
Scaling MySQL using Fabric
Scaling MySQL using FabricScaling MySQL using Fabric
Scaling MySQL using Fabric
 
Apache CloudStack at LinuxCon Japan
Apache CloudStack at LinuxCon JapanApache CloudStack at LinuxCon Japan
Apache CloudStack at LinuxCon Japan
 

Similar to Glassfish - FISL10 - Arun Gupta

Glassfish Overview 29 Oktober 2009
Glassfish Overview 29 Oktober 2009Glassfish Overview 29 Oktober 2009
Glassfish Overview 29 Oktober 2009Eugene Bogaart
 
GlassFish OSGi Server
GlassFish OSGi ServerGlassFish OSGi Server
GlassFish OSGi ServerArtur Alves
 
Getting Started with Platform-as-a-Service
Getting Started with Platform-as-a-ServiceGetting Started with Platform-as-a-Service
Getting Started with Platform-as-a-ServiceCloudBees
 
Getting Started with PaaS
Getting Started with PaaSGetting Started with PaaS
Getting Started with PaaSCloudBees
 
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...Arun Gupta
 
Jakarta EE und Microprofile sind bei Azure zu Hause
Jakarta EE und Microprofile sind bei Azure zu HauseJakarta EE und Microprofile sind bei Azure zu Hause
Jakarta EE und Microprofile sind bei Azure zu HauseEdward Burns
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Abhishek Gupta
 
GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011Arun Gupta
 
GlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsGlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsArun Gupta
 
Boston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFishBoston 2011 OTN Developer Days - GlassFish
Boston 2011 OTN Developer Days - GlassFishArun Gupta
 
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...Arun Gupta
 
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...
Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...railsconf
 
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
 
OTN Developer Days - GlassFish
OTN Developer Days - GlassFishOTN Developer Days - GlassFish
OTN Developer Days - GlassFishglassfish
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Abhishek Gupta
 
Modernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureModernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureDavid J Rosenthal
 
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1Brian Benz
 
Overzicht van de GlassFish technologie, Eugene Bogaart
Overzicht van de GlassFish technologie, Eugene BogaartOverzicht van de GlassFish technologie, Eugene Bogaart
Overzicht van de GlassFish technologie, Eugene BogaartJaco Haans
 
Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Agora Group
 

Similar to Glassfish - FISL10 - Arun Gupta (20)

Glassfish Overview 29 Oktober 2009
Glassfish Overview 29 Oktober 2009Glassfish Overview 29 Oktober 2009
Glassfish Overview 29 Oktober 2009
 
GlassFish OSGi Server
GlassFish OSGi ServerGlassFish OSGi Server
GlassFish OSGi Server
 
ASP.NET 5
ASP.NET 5ASP.NET 5
ASP.NET 5
 
Getting Started with Platform-as-a-Service
Getting Started with Platform-as-a-ServiceGetting Started with Platform-as-a-Service
Getting Started with Platform-as-a-Service
 
Getting Started with PaaS
Getting Started with PaaSGetting Started with PaaS
Getting Started with PaaS
 
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...
 
Jakarta EE und Microprofile sind bei Azure zu Hause
Jakarta EE und Microprofile sind bei Azure zu HauseJakarta EE und Microprofile sind bei Azure zu Hause
Jakarta EE und Microprofile sind bei Azure zu Hause
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 
GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011GlassFish 3.1 at JCertif 2011
GlassFish 3.1 at JCertif 2011
 
GlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 ApplicationsGlassFish Server 3.1: Deploying your Java EE 6 Applications
GlassFish Server 3.1: Deploying your Java EE 6 Applications
 
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...
 
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...
Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...Develop With Pleasure  Deploy With Fun  Glass Fish And Net Beans For A Better...
Develop With Pleasure Deploy With Fun Glass Fish And Net Beans For A Better...
 
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
 
OTN Developer Days - GlassFish
OTN Developer Days - GlassFishOTN Developer Days - GlassFish
OTN Developer Days - GlassFish
 
Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2Glass Fish Slides Fy2009 2
Glass Fish Slides Fy2009 2
 
Modernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft AzureModernize Java Apps on Microsoft Azure
Modernize Java Apps on Microsoft Azure
 
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1Tech ED 2014   Running Oracle Databases and Application Servers on Azurev1
Tech ED 2014 Running Oracle Databases and Application Servers on Azurev1
 
Overzicht van de GlassFish technologie, Eugene Bogaart
Overzicht van de GlassFish technologie, Eugene BogaartOverzicht van de GlassFish technologie, Eugene Bogaart
Overzicht van de GlassFish technologie, Eugene Bogaart
 
Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011Andrei Niculae - glassfish - 24mai2011
Andrei Niculae - glassfish - 24mai2011
 

Recently uploaded

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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...Martijn de Jong
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Glassfish - FISL10 - Arun Gupta

  • 1. Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse Arun Gupta, GlassFish Guy http://blogs.sun.com/arungupta Sun Microsystems, Inc. 1
  • 2. Who is Arun ? • GlassFish Guy • With Sun for over 10 years • Specifications, Engineering, Standards, Interoperability, ... > blogs.sun.com/arungupta > twitter.com/arungupta Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 2
  • 3. What is GlassFish ? • Open Source Community > Users, Partners, Testers, Developers, ... > Started in 2005 on java.net • Application Server > Java EE 5 and 6 Reference Implementation > Enterprise Quality and Open Source > Full Commercial Support from Sun Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 3
  • 4. State of GlassFish • GlassFish v2 > Java EE 5 Reference Implementation > Clustering, Load Balancing, High Availability > Web-based/CLI Administration Console > .NET 3.x/4.x Web services Interoperability > Current Release: 2.1 • GlassFish v3 > Java EE 6 Reference Implementation > Modular (OSGi), Embeddable, Extensible > Java EE, Rails, Grails, Django, ... > Current Release: v3 Preview Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 4
  • 5. Sun GlassFish Enterprise Server Enterprise Manager Customer Advocate eLearning Credit Customer Focused 24x7 Support Support Team GlassFish Sun VIP Open Source Interoperability Application Server Patches & Support Upgrades Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 5
  • 6. Demo: JDBC Connection Pool & Resource creation using Administration Console Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 6
  • 7. Java Persistence API • Java specification that defines Object to Relational Mapping in Java EE 5 • Annotations to persist POJOs • JPQL to query objects from the database >MySQL-specific query statements (LIMIT) • Requires a Persistence Provider and a Database >Common Persistence Providers: TopLinkEssentials, EclipseLink JPA, ... >Common Databases: MySQL, Oracle, ... Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 7
  • 8. JPA Sample @Entity class Employee { @Id private int id; private String firstName; private String lastName; pubic Employee (int id, String firstName, String lastName) { ... } public String getFullName(){ return firstName + lastName; } ... } Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 8
  • 9. Demo: CRUD operations using NetBeans, JPA, and GlassFish http://blogs.sun.com/arungupta/entry/totd_38_creating_a_mysql Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 9
  • 10. RESTful Web Services • JAX-RS: Java API for RESTful Web services • Annotation-based server-side API • HTTP Centric • Jersey: Reference Implementation of JAX-RS • Also provides client-side API • jersey.dev.java.net Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 10
  • 11. JAX-RS Sample @Path("widgets/{id}") @Produces("application/widgets+xml") @Consumes("application/widgets+xml") public class WidgetResource { private Widget w; public WidgetResource(@PathParam("id") String id) { this.w = locateRecord(id); } @GET Widget getWidget() { return w; } @PUT Widget updateWidget(Widget update) { w = processUpdate(update); return w; } } Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 11
  • 12. GET /NetBeans/6.5 Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 12
  • 13. Demo: Publish your MySQL Table as a RESTful Web service http://blogs.sun.com/arungupta/entry/restful_representation_of_sakila_using Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 13
  • 14. Dynamic Languages and Web Frameworks http://glassfish-scripting.dev.java.net Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 14
  • 15. Rails on GlassFish • Native Deployment, no packaging required > GlassFish v3 > Capistrano recipes available > Server runtime available as Gem • WAR deployment using Warbler > GlassFish v2 and v3 • JRuby/Rails (Groovy/Grails, Django/Jython) modules at Update Center • Commercially supported by Sun Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 15
  • 16. Tooling • NetBeans support > Develop, deploy debug Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 16
  • 17. Demo: Develop, Deploy, and Debug Rails application using NetBeans and GlassFish http://blogs.sun.com/arungupta/entry/screencast_26_develop_run_debug Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 17
  • 18. GlassFish v3 Monitoring • Event-driven light-weight and non-intrusive monitoring • Modules provide domain specific probes (monitoring events) > EJB, Web, Connector, JPA, Jersey, Orb • Monitoring data gathered on demand • End-to-end monitoring on Solaris platforms using DTrace • Equivalent functionality for GlassFish on other platforms (including Solaris) using scripting languages > JavaScript to start with Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 18
  • 19. Demo: End-to-End Application Tracing using NetBeans, GlassFish, MySQL, OpenSolaris, DTrace Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 19
  • 20. GlassFish Tools Bundle for Eclipse Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 20
  • 21. GlassFish Tools Bundle – Key Features • Out-of-the-box installer with all Java EE Eclipse Standard Features, JDK and GlassFish servers • GlassFish Registration Wizard • GlassFish v2.1 and v3 automatic domain creation/configuration • JavaDB configuration, JDBC resource wizard • Start, Stop, Deploy, Undeploy, Debug JSP/Java • Deploy on Save: Default for v3 • HTTP Monitoring preconfigured Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 21
  • 22. More Features ... • All Sun DTDs registered for validation/code completion • All Java EE APIs registered for code completion/Javadocs • GlassFish log integrated into Eclipse IDE console • All v2 and v3 DocBooks integrated in Help • GlassFish Web Properties in Help menu (The Aquarium, Support, ...) • ... • Download: http://download.java.net/glassfish/eclipse Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 22
  • 23. Demo: GlassFish Tools Bundle for Eclipse http://blogs.sun.com/arungupta/entry/screencast_26_develop_run_debug Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 23
  • 24. Price Performance SpecjAppServer2004 (Nov 2008) • 2% cost of Dell, 5% cost of HP • 13 times better price/performance http://www.sun.com/servers/x64/x4150/benchmarks.jsp#3 Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 24
  • 25. Why GlassFish and MySQL ? • Same pricing strategy – per server, unlimited • Same support levels – Gold, Silver, ... • Same support organization – No buck passing • Combined reference architectures > MySQL cluster and Sailfin: http://www.sun.com/offers/details/mysql_cg_service_execution.html Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 25
  • 26. References • GlassFish > http://glassfish.org > http://blogs.sun.com/theaquarium_br • NetBeans > http://netbeans.org > http://planetnetbeans.org/ • Eclipse: http://download.java.net/glasfish/eclipse • MySQL: http://mysql.org • http://blogs.sun.com/arungupta Creating Quick and Powerful Web Applications with MySQL, GlassFish, and NetBeans/Eclipse 26