• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
GlassFish v3 : En Route Java EE 6
 

GlassFish v3 : En Route Java EE 6

on

  • 8,046 views

Modular and extensible GlassFish v3. Developer features, access to Java EE 6 previews, roadmap.

Modular and extensible GlassFish v3. Developer features, access to Java EE 6 previews, roadmap.
Speaker: Alexis Moussine-Pouchkine

Statistics

Views

Total Views
8,046
Views on SlideShare
7,998
Embed Views
48

Actions

Likes
12
Downloads
0
Comments
0

4 Embeds 48

http://www.slideshare.net 30
http://www.techgig.com 14
http://tekgig.in 3
http://115.112.206.131 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    GlassFish v3 : En Route Java EE 6 GlassFish v3 : En Route Java EE 6 Presentation Transcript

    • GlassFish v3 En route pour Java EE 6 Alexis Moussine-Pouchkine GlassFish Team
    • Timeline of Project GlassFish Tomcat Jasper v3 v3 Catalina “Prelude” (Java EE 6) v1 JSTL GlassFish Struts v2 v2.1 Launch Crimson XSLTC Xalan Xerces Fall-2009 JAXB Oct/Nov Dec June May Sept. JAX-RPC 2008 2008 2005 2006 2007 JSF (you are here) 2
    • GlassFish Adoption 3
    • GlassFish around You 4
    • GlassFish around You (really) 5
    • GlassFish around You (really, really) 6
    • All this .... ... with a boring application server (albeit with built-in full Web-Services Stack, full clustering, great monitoring tools, record performance, complete documentation, and heavily deployed in production) 7
    • GlassFish http://glassfish.org Best of class App Server • GlassFish v2.1 released Jan. 2009 > 4 millions downloads > Up to x2 usage over 12 months • Out of the box : “Grizzly”: scalable and innovative Web Tier > “Metro”: Complete Web Services interop with Microsoft > “Shoal”: Complete Java EE Clustering > Administration and monitoring tools > Performance (SPECjAppServer record) > Tooling (Best with NetBeans, Eclipse also supported) > 8
    • GlassFish Enterprise Manager • SNMP Monitoring • Performance Advisor • Self management Rules • Performance Monitor 9
    • What is a “lightweight” Application Server ? 10
    • Tomcat ? 11
    • Fast startup ? 12
    • Load on-demand ? 13
    • Introducing GlassFish v3 Prelude 14
    • Admin Console 15
    • Modular and Dynamic • Modular : Apache Felix (OSGi) • Extensible : HK2 • Yet very Fast ! Security Config Grails JRuby/Rails Web Naming Injection dispatch GlassFish Kernel browser Grizzly requests HK2 Services OSGi Runtime Bundles repositories services 16
    • Demo Startup Compile on Save Deploy on Change Preserve Session 17
    • Painless Java EE development ! • Java EE development doesn't have to be painful :) • Incremental compile of all Java EE artifacts • Auto-deploy of all Java EE and static artifacts 18
    • Session Retention Deployment option to maintain stateful sessions across re- deployments $ asadmin redeploy --properties keepSessions=true myapp.war Greatly simplifies the development paradigm. Integrated in NetBeans 6.5 : 19
    • Yes, Eclipse too ! GlassFish (v2/v3) + Eclipse 3.4 Tools Bundle: http://download.java.net/glassfish/eclipse/ 20
    • Update Center 21
    • Prelude to Java EE 6 (via GlassFish Update Center) • JSF 2.0 Preview • EJB 3.1 Preview > Integrated Facelets > WAR packaging > First-class Ajax > Singleton support > No Interface View > Pub/Sub Events > TimerService > Composite > Asynchronous components operations > Better resource > ... handling • Servlet 3.0 soon > Groovy integration 22
    • JAX-RS (JSR 311) with Jersey • Making it easy to build RESTful Web services • Production-quality Reference Implementation @javax.ws.rs.Path(quot;/users/{id}quot;) public class UserResource { @javax.ws.rs.GET @javax.ws.rs.Produces(quot;text/xmlquot;) public String getUser( @PathParam(quot;idquot;) String userName) { ... } } • Final and supported v1.0 • Fine client API too 23
    • Servlet 3.0 • POJO > @WebServlet > @ServletFilter > @WebServletContextListener • web.xml now optional and supports fragments • Support for asynchrony > @WebServlet(asyncSupported=true) > New APIs for Servlet request and response for suspend, resume 24
    • EJB 3.1 Sample import javax.ejb.Singleton; import javax.servlet.WebServlet; @WebServlet(urlMapping={quot;/Counterquot;}) @Singleton public class SimpleServlet { public class CounterBean { @EJB CounterBean counterBean; private int hitCount; void processRequest(...) { try { public synchronized int incrementAndGetHitCount() { ... return hitCount++; counterBean.incrementAndGetHitCount()); ... } } finally { out.close(); } } } } 25
    • Demo simple ejb 3.1 war packaging 26
    • GlassFish Embedded AppServer glassfish = new AppServer(8080); glassfish.deployWar(warFile); 27
    • GlassFish Embedded public class Main { public static void main (String[] args) { AppServer glassfish = new AppServer(8080); glassfish.deployWar(warFile); } } 28
    • GlassFish Embedded @BeforeClass public static void setUpClass () { AppServer glassfish = new AppServer(8080); glassfish.deployWar(warFile); } @Test public void pingApplication () { ... } 29
    • A lot more ... Langages dynamiques: Rails, Grails, Django, ... • Comet, Cometd/Bayeux • Support complet de mod_jk, WebDAV, CGI, SSI • Web Services Metro 1.4 (.Net 3.5) • console user IPS/pkg(5) • Central Config domain.xml Admin Console Admin RESTful • C Container Monitoring • o GUI Parts Runtime n f Extensibilité • Grizzly Adapter i Admin commands g > Moteur Kernel > Console admin > Fichier de config client/browser admin invocation 30
    • GlassFish v3 Prelude – Practical • Get it from http://glassfish.org • Download size: 26MB > Graphical Installer > Zip version > Community-contributed IzPack installer • Choice > Eclipse or NetBeans > Runs on Java 5 and Java 6 (Java EE 6 will mandate Java 6) > Felix or Equinox • Questions and feedback to : USERS@glassfish.dev.java.net or GlassFish forum. • Supported product, subscriptions available 31
    • v3 Prelude vs. GlassFish v2.x Feature GlassFish Server v2 GlassFish v3 Prelude Java Platform, Enterprise Edition Java Compatible, Enterprise Edition (Java EE 5 ) Certified X Web Application and Service Technologies Java Web Technologies (Servlet 2 .5 , JSP 2 .1 , JSF 1 .2 ) X X Metro Web Services Stack X X [1][4] .NET 3.0 Web Services Interoperability X .NET 3.5 Web Services Interoperability X[1][4] Next Generation Web jMaki (Ajax Framework) X[4] X[4] Jersey/JAX-RS 1.0 (RESTful Web Services) X[4] X[4] Administration Admin Console and CLI (Centralized Administration) X X JMX X X Node Agent & Cluster Mgmt X Upgrade Tool X Client Application Client Container X Java WebStart support X Enterprise Application Technologies Java DB, JDBC Connection Pooling X X JTA/JTS X X J2 EE Connector Architecture 1 .5 X X[2] EJB 3 .0 X JMS X JPA 1 .0 (TopLink) X 32
    • v3 Prelude vs. GlassFish v2 (2) Feature GlassFish Server v2 GlassFish v3 Prelude Scripting jRuby/Rails Web Archive (.war) deployment X[4] X[4] “Native” jRuby/Rails deployment – without need for Servlet container X[4] Dynamic resizing of jRuby Runtime Pool X[4] Groovy/Grails X[4] Developer Tools Integrated Development Support (Eclipse and NetBeans) X X Rapid Redeployment - Maintain session state on application redeploy X Update Center X X Update Center integration with Administration Console X Verification Tools X Image Packaging System (IPS) Tools X Framework Technologies Grizzly (Java NIO) X X Comet (HTTP Push) X X CORBA X Modular Architecture Based on OSGi X GlassFish Embedded X Extend GlassFish Functionality (Extensibility APIs)(Administration Console, asadmin CLI utility, more) X System/Performance Technologies Clustering X X[3] Load Balancer Plugin X Centralized Administration of Load Balancer Plugin Configuration X High Availability X Integration Integration with Identity Manager, OpenSSO, OpenESB, OpenPortal... X 33
    • GlassFish v3 Roadmap • V3 Final aligned with Java EE 6 > Starting a series of Milestone releases > Targeted for Fall 2009 > Clustering, central admin likely on the update center • V3.1 full clustering > Likely 6 to 9 months after V3 34
    • v3 Prelude Usage xWiki GlassFishV3 JavaDB Project Fuji (OpenESB.next) SailFin (Telco AppServer) WebSynergy (Portal, Liferay) WebEngine EHCache Server GlassFish v3 Embedded GlassFish v3 Embedded Jersey Jersey 35
    • http://glassfish.org alexis.mp@sun.com http://blogs.sun.com/alexismp 36