Download - Glass Fish V3 University Amers May2009

Transcript
Page 1: Glass Fish V3  University Amers May2009

1

GlassFish v3

27 Mei 2009

Alexis Moussine-PouchkineGlassFish Team

Page 2: Glass Fish V3  University Amers May2009

Timeline of Project GlassFish

TomcatJasper

CatalinaJSTLStruts

CrimsonXSLTCXalan

Xerces

JAXBJAX-RPC

JSF

June2005

May2006

GlassFishLaunch v2

v1

(you are here)

v3(Java EE 6)

Sept.2007

Fall-2009

v2.1

v3“Prelude”

Oct/Nov2008

Jan2008

Page 3: Glass Fish V3  University Amers May2009

GlassFish Downloads

Page 4: Glass Fish V3  University Amers May2009

Actual Usage

Page 5: Glass Fish V3  University Amers May2009

GlassFish around you

Page 6: Glass Fish V3  University Amers May2009

GlassFish around you (really)

Page 7: Glass Fish V3  University Amers May2009

GlassFish around you (really)

Page 8: Glass Fish V3  University Amers May2009

If there was only one reason...

... we care about both

Page 9: Glass Fish V3  University Amers May2009

Introducing GlassFish v3

Page 10: Glass Fish V3  University Amers May2009

Modular and Dynamic

• Modular : Apache Felix (OSGi)• Extensible : HK2• Yet very Fast !

Page 11: Glass Fish V3  University Amers May2009

Admin Console

Page 12: Glass Fish V3  University Amers May2009

• 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

Painless Java EE development !

Page 13: Glass Fish V3  University Amers May2009

Session Retention

• Deployment option to maintain stateful sessions across re-deployments

$ asadmin redeploy --propertieskeepSessions=true myapp.war

• Greatly simplifies thedevelopment paradigm.

• Integrated in NetBeans 6.5 :

Page 14: Glass Fish V3  University Amers May2009

Yes, Eclipse too !

GlassFish (v2/v3) + Eclipse 3.4 Tools Bundle: http://download.java.net/glassfish/eclipse/

Page 15: Glass Fish V3  University Amers May2009

Update Center

Page 16: Glass Fish V3  University Amers May2009

Java EE 6 (JSR 316)

• EJB 3.1• JPA 2.0• Servlet 3.0• JSF 2.0• JAX-RS 1.0• Connector Architecture 1.6• Bean Validation 1.0• JCDI 1.0 (née Web Beans)

• JAXB 2.2• JAX-WS 2.2• JSR-109 1.3• JAX-RS 1.1• EL 1.2 • JSP 1.2 • Authentication SPI 1.1• Common Annotations

1.1

Page 17: Glass Fish V3  University Amers May2009

Java EE 6 (JSR 316)via GlassFish v3 Prelude Update Center

• EJB 3.1• JPA 2.0• Servlet 3.0• JSF 2.0• JAX-RS 1.0• Connector Architecture 1.6• Bean Validation 1.0• JCDI 1.0 (née Web Beans)

• JAXB 2.2• JAX-WS 2.2• JSR-109 1.3• JAX-RS 1.1• EL 1.2 • JSP 1.2 • Authentication SPI 1.1• Common Annotations

1.1

Page 18: Glass Fish V3  University Amers May2009

Java EE 6 Web Profile

• A fully functional mid-sized profile for web apps • Accepted:

> Servlet, JSP, EL, JSTL, JSF, EJB Lite, JTA, JPA,JSR-250, Bean Validation 1.0

• Not decided yet: > Web Beans 1.0

• Out for now: > JAX-RS 1.1

• GlassFish v3 to ship in two distributions> Complete Java EE 6> Java EE 6 Web distributions

Page 19: Glass Fish V3  University Amers May2009

GlassFish Embedded

AppServer glassfish = new AppServer(8080);

glassfish.deployWar(warFile);

Page 20: Glass Fish V3  University Amers May2009

GlassFish Embedded

public class Main {

public static void main (String[] args) {

AppServer glassfish = new AppServer(8080);

glassfish.deployWar(a_useful_app);

}

}

Page 21: Glass Fish V3  University Amers May2009

GlassFish Embedded

@BeforeClass

public static void setUpClass () {

AppServer glassfish = new AppServer(8080);

glassfish.deployWar(myApplication);

}

@Test

public void pingApplication () {

...

}

Page 22: Glass Fish V3  University Amers May2009

Extending GlassFish v3An example

• Extend GlassFish with a Spring container> using unmodified Spring dm (OSGi)> simple Spring beans implementing the service

• Invoke the service from a servlet> using standard @Resource injection

• Never use a GlassFish API !• No need to chose between Spring and Java EE• Of course you don't have to use Spring ;)

> Grizzly extensions, plain HK2, ...Step by step: http://blogs.sun.com/dochez/entry/glassfish_v3_extensions_part_3

Page 23: Glass Fish V3  University Amers May2009

Extending GlassFish v3An example, a demo and a picture

Page 24: Glass Fish V3  University Amers May2009

A lot more ...

• Dynamic languages : Rails, Grails, Django, ...• Comet, Cometd/Bayeux• Embedded API• Full support for mod_jk, WebDAV, CGI, SSI• Web Services Metro 1.4 (.Net 3.5)• OpenMQ• IPS/pkg(5)• RESTful admin• Monitoring• Extensible !

Page 25: Glass Fish V3  University Amers May2009

GlassFish v3 – Practical

• Get it from http://glassfish.org> GlassFish v3 Prelude today (web container)> GlassFish v3 Preview by JavaOne

• Choice !> Eclipse or NetBeans (or vi)> Java 5 and Java 6 (Java EE 6 mandates Java 6)> Felix or Equinox

• Download size: 26MB> Graphical Installer, Zip version> Community-contributed IzPack installer

• Supported product, subscriptions available

Page 26: Glass Fish V3  University Amers May2009

26

Questions ?

http://blogs.sun.com/[email protected]