The Java EE 6 Platform. Alexis Moussine-Pouchkine GlassFish Team



Similar documents
Java EE 6 development with Eclipse, Netbeans, IntelliJ and GlassFish. Ludovic Champenois Oracle Corporation

Java EE 6 Ce qui vous attends

OpenShift is FanPaaStic For Java EE. By Shekhar Gulati Promo Code JUDCON.IN

What's new in Java EE 6? Antonio Goncalves

Servlet 3.0. Alexis Moussine-Pouchkine. mercredi 13 avril 2011

Bienvenue chez le Ch ti JUG!

White Paper: Why Upgrade from WebSphere Application Server (WAS) v7 to v8.x?

Java Servlet 3.0. Rajiv Mordani Spec Lead

<Insert Picture Here> Java EE 7: the New Cloud Platform

RESIN APPLICATION SERVER JAVA EE 6 WEB PROFILE

Learning GlassFish for Tomcat Users

JSR-303 Bean Validation

<Insert Picture Here> Java EE 7: the New Cloud Platform

<Insert Picture Here> Java EE 7. Linda DeMichiel Java EE Platform Lead

<Insert Picture Here> GlassFish v3 - A Taste of a Next Generation Application Server

Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc

White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation

OUR COURSES 19 November All prices are per person in Swedish Krona. Solid Beans AB Kungsgatan Göteborg Sweden

GlassFish v3. Building an ex tensible modular Java EE application server. Jerome Dochez and Ludovic Champenois Sun Microsystems, Inc.

Running and Testing Java EE Applications in Embedded Mode with JupEEter Framework

Java EE Introduction, Content. Component Architecture: Why and How Java EE: Enterprise Java

Web Development in Java Part I

Java EE 7: Back-End Server Application Development

GlassFish. Developing an Application Server in Open Source

The. Platform. Alexis Moussine-Pouchkine Antonio Goncalves

APAC WebLogic Suite Workshop Oracle Parcel Service Overview. Jeffrey West Application Grid Product Management

JBoss JEE5 with EJB3.0 on NonStop. JAVA SIG, San Jose

Complete Java Web Development

Project SailFin: Building and Hosting Your Own Communication Server.

The end. Carl Nettelblad

Why IBM WebSphere Application Server V8.0?

Framework Adoption for Java Enterprise Application Development

Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat

NetBeans IDE Field Guide

An introduction to creating JSF applications in Rational Application Developer Version 8.0

This presentation will provide a brief introduction to Rational Application Developer V7.5.

JBoss SOAP Web Services User Guide. Version: M5

Operations and Monitoring with Spring

Case Studies of Running the Platform. NetBeans UML Servlet JSP GlassFish EJB

The Oracle Fusion Development Platform

Server-side OSGi with Apache Sling. Felix Meschberger Day Management AG 124

Kohsuke Kawaguchi Sun Microsystems, Inc. hk2.dev.java.net, glassfish.dev.java.net. Session ID

FUSE-ESB4 An open-source OSGi based platform for EAI and SOA

Converting Java EE Applications into OSGi Applications

<Insert Picture Here> Betting Big on JavaServer Faces: Components, Tools, and Tricks

Glassfish, JAVA EE, Servlets, JSP, EJB

Course Name: Course in JSP Course Code: P5

How To Write A Web Framework In Java

Enterprise JavaBeans' Future: Getting Simpler, More Ubiquitous, but Not Dominant

Weblogic 12c: Mastering The Cloud Foundation. Patrick Dewael & Kristof Satory

JBS-102: Jboss Application Server Administration. Course Length: 4 days

OSGi Application Development using GlassFish Server. Version 1.5. By: Sanjeeb Sahoo

Reusing Existing * Java EE Applications from Oracle SOA Suite

Java Platform, Enterprise Edition (Java EE) From Yes-M Systems LLC Length: Approx 3 weeks/30 hours Audience: Students with experience in Java SE

Open Source SOA with Service Component Architecture and Apache Tuscany. Jean-Sebastien Delfino Mario Antollini Raymond Feng

Accelerated Java EE Open Source Development with Eclipse CON1905

Spring 3.1 to 3.2 in a Nutshell. Sam Brannen Senior Software Consultant

G-Cloud Framework. Service Definition. Oracle Fusion Middleware Design and Implementation

<Insert Picture Here> Java, the language for the future

Introduction to Sun ONE Application Server 7

Developing modular Java applications

Mind The Gap! Setting Up A Code Structure Building Bridges

What means extensibility?

How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer

Experiences with Open-Source BPM/SOA-based Stack using Java EE Rok Povše, Matjaž B. Jurič

Chapter 4. Architecture. Table of Contents. J2EE Technology Application Servers. Application Models

Eclipse Web Tools Platform. Naci Dai (Eteration), WTP JST Lead

Web and Enterprise Applications Developer Track

Web Development with the Eclipse Platform

Server-Side JavaScript auf der JVM. Peter Doschkinow Senior Java Architect

Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform

applications. JBoss Enterprise Application Platform

Oracle WebLogic Server

FEATURE MATRIX. ORACLE WEBLOGIC SERVER STANDARD EDITION 11g ORACLE WEBLOGIC SERVER ENTERPRISE EDITION 11g ORACLE WEBLOGIC SUITE 11g

Programma corso di formazione J2EE

An Oracle White Paper May Ready for Business: Oracle GlassFish Server

IBM Boston Technical Exploration Center 404 Wyman Street, Boston MA IBM Corporation

JSR 375 (EE Security API) Review

CS Developing Web Applications with Java Technologies

Implementation of an Enterprise-level Groupware System Based on J2EE Platform and WebDAV Protocol

Migrating JEE Applications from WLS/WAS to SpringSource tc Server. A Technical Perspective

Architectural Overview

Enterprise Applications

JBoss Enterprise Application Platform 6.2 Development Guide

How To Protect Your Computer From Being Hacked On A J2Ee Application (J2Ee) On A Pc Or Macbook Or Macintosh (Jvee) On An Ipo (J 2Ee) (Jpe) On Pc Or

<Insert Picture Here> Oracle Mobile Enterprise Application Platform Overview

T-4 - Develop Better Java EE Applications With Eclipse Web Tools Platform. Christopher M. Judd. President/Consultant Judd Solutions, LLC

JBoss Enterprise App. Platforms Roadmap. Rich Sharples Director of Product Management, Red Hat 4th April 2011

WebSphere Training Outline

As you learned about in Chapter 1, WebSphere Application Server V6 supports the

Transcription:

The Java EE 6 Platform Alexis Moussine-Pouchkine GlassFish Team

This is no science fiction Java EE 6 and GlassFish v3 shipped final releases on December 10 th 2009

A brief History Project JPE Enterprise Application J2EE 1.2 Servlet JSP EJB JMS RMI/IIOP Robust Scalable J2EE 1.3 CMP JCA Web Services J2EE 1.4 WS Management Deployment Ease of development Java EE 5 Annotations EJB 3 JPA 1.0 WS-* JSF Ease of development (web) Java EE 6 EJB 3.1 JPA 2.0 Servlet 3.0 JSF 2.0 JAX-RS 1.1 JCDI 1.0 @Inject Bean Validat Web Profile Managed Bean May 1998 Dec 1999 10 specs Sept 2001 13 specs Nov 2003 20 specs May 2006 23 specs Q4 2009 28 specs

Java EE 6 What's New? Several new APIs Web Profile Extensibility & Pluggability Dependency Injection Improvement to many APIs

New and improved specifications EJB 3.1 JPA 2.0 Servlet 3.0 JSF 2.0 JAX-RS 1.1 Connectors 1.6 Bean Validation 1.0 DI 1.0 CDI 1.0 Managed Beans 1.0 Interceptors 1.1 JAX-WS 2.2 JSR-109 1.3 JSP 2.2 / EL 2.2 JSR-250 1.1

JAX-RS RESTful web services API Already widely adopted Really a general, high-level HTTP API Annotation-based programming model Programmatic API when needed JAX-RS 1.1 integration with EJBs

JAX-RS sample code @Path("widgets/{id}") @Produces("application/widgets+xml") public class WidgetResource { public WidgetResource( @PathParam("id") String id) {... } } @GET Widget getwidget() {... }

Bean Validation 1.0 public class Address { @NotNull @Size(max=30, message="longer than {max} characters") private String street1;... @NotNull @Valid private Country country; } public class Country { @NotNull @Size(max=20) private String name;... } request recursive object graph validation

Build your own! @Size(min=5, max=5) @ConstraintValidator(ZipcodeValidator.class) @Documented @Target({ANNOTATION_TYPE, METHOD, FIELD}) @Retention(RUNTIME) public @interface ZipCode { String message() default "Wrong zipcode"; String[] groups() default {}; } Integrated in JPA and JSF Bootstrap APIs

Web Profile First Java EE profile to be defined A fully-functional, mid-size stack for modern web application development Complete, but not the kitchen sink

Java EE 6 Web Profile Servlet 3.0 JSP 2.2 / EL 2.2 JSR-45 1.0 JSTL 1.2 JSF 2.0 Bean Validation 1.0 EJB 3.1 Lite JPA 2.0 JTA 1.1 DI 1.0 CDI 1.0 Managed Beans 1.0 Interceptors 1.1 JSR-250 1.1

Extensible & Pluggable Focus on the web tier in this release Create a level playing ground for third-party libraries and frameworks Simplify packaging of web apps

Modular Web Applications Libraries can contain web-fragment.xml web.xml is optional @WebServlet, @WebFilter annotations ServletContainerInitializer interface Programmatic registration Resource jars

JSF 2.0 Standardized facelets Auto-discovery of component libraries Composite components Ajax support with partial views Even a JavaScript API!

EJB 3.1 @Singleton beans @Startup beans @Asynchronous invocations @Schedule tasks Define EJBs directly inside a web app EJBContainer API works on Java SE

Dependency Injection JSR-299 + JSR-330 @Resource still around @Resource DataSource mydb; Added @Inject support @Inject @LoggedIn User user; Beans discovered at startup Injection metamodel (BeanManager API)

Well-defined Conversation Scope A conversation is : > explicitly demarcated > associated with individual browser tabs > accessible from any JSF request @Named @ConversationScoped public class ItemFacade implements Serializable { @Inject Conversation conversation;... conversation.begin(); // long-running... conversation.end(); // schedule for destruction

Many ways to simplify things Capture common patterns Fix inconsistencies Adopt what works Make APIs work better together Reduce packaging overhead Be transparent

GlassFish v3 for the developer Java EE 6 Development tools integration Deploy on save Preserve session across redeploys Update Center

GlassFish v3 Modularity Based on industry standard OSGi Pay for what you use architecture OSGi bundles deployable straight in GlassFish v3 @Resource to inject an OSGi service

DEMO

Thanks for your attention! http://java.sun.com/javaee http://jcp.org/en/jsr/summary?id=316 Java EE 6 and GlassFish v3 Virtual Conference http://www.sun.com/events/javaee6glassfishv3/ virtualconference/index.jsp Introducing the Java EE 6 Platform article http://java.sun.com/developer/technicalarticles/javaee/ JavaEE6Overview.html http://glassfish.org http://beginningee6.kenai.com/ (tutorial code) http://javaee-patterns.kenai.com/ (Adam Bien)

alexis.mp@sun.com http://blogs.sun.com/alexismp twitter:alexismp