GlassFish & Friends. May 22nd 2008. Alexis Moussine-Pouchkine GlassFish Team Sun Microsystems



Similar documents
GlassFish. Developing an Application Server in Open Source

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

Learning GlassFish for Tomcat Users

Open Source Identity Integration with OpenSSO

Java in Web 2.0. Alexis Roos Principal Field Technologist, CTO Office OEM SW Sales Sun Microsystems, Inc.

Web Services Security: OpenSSO and Access Management for SOA. Sang Shin Java Technology Evangelist Sun Microsystems, Inc. javapassion.

Opensourcowe projekty GlassFish oraz OpenSSO. Marek Sokołowski Sun Microsystems Poland

OpenSSO: Simplify Your Single-Sign-On Needs. Sang Shin Java Technology Architect Sun Microsystems, inc. javapassion.com

WEB SERVICES. Revised 9/29/2015

Project SailFin: Building and Hosting Your Own Communication Server.

JVA-561. Developing SOAP Web Services in Java

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

Build management & Continuous integration. with Maven & Hudson

Secure the Web: OpenSSO

Ruby on Rails in GlassFish Sun Microsystems

Module 13 Implementing Java EE Web Services with JAX-WS

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

Oracle im Open Source Kontext Abgrenzung GlassFish vs. JBoss und wozu noch WebLogic?

What Is NetBeans? Free and open-source based > Open source since June, 2000 > Large community of users and developers

Developing Java Web Services

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

applications. JBoss Enterprise Application Platform

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

NetBeans IDE Field Guide

Glassfish, JAVA EE, Servlets, JSP, EJB

This presentation is for informational purposes only and may not be incorporated into a contract or agreement.

ITS. Java WebService. ITS Data-Solutions Pvt Ltd BENEFITS OF ATTENDANCE:

Java EE 5 and GlassFish: A Plunge into The Aquarium Harold Carr Sun Microsystems, Inc

1 What Are Web Services?

Introduction to Sun ONE Application Server 7

Identity Management in Liferay Overview and Best Practices. Liferay Portal 6.0 EE

Jenkins: The Definitive Guide

An Oracle White Paper May Learning Oracle GlassFish Server for Tomcat Users

JAVA API FOR XML WEB SERVICES INTRODUCTION TO JAX-WS, THE JAVA API FOR XML BASED WEB SERVICES (SOAP, WSDL)

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

Framework Adoption for Java Enterprise Application Development

rpafi/jl open source Apache Axis2 Web Services 2nd Edition using Apache Axis2 Deepal Jayasinghe Create secure, reliable, and easy-to-use web services

Full XML-based Content Management System For Financial Sector

Glassfish Architecture.

JBI and OpenESB. Introduction to Technology. Michael Czapski Advanced Solutions Architect, SOA/BI/Java CAPS Sun Microsystems, ANZ

OpenAM All-In-One solution to securely manage access to digital enterprise and customer services, anytime and anywhere.

Professional Profile Studies Senior Engineer October September 1998 Computer Engineering University of Deusto - Bizkaia (Spain)

Portals, Portlets & Liferay Platform

1 What Are Web Services?

JAVA/J2EE DEVELOPER RESUME

Rapid Application Development. and Application Generation Tools. Walter Knesel

Enterprise Open Source Identity Middleware. Anders Askåsen, Product Manager

Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology Fall 2007

<Insert Picture Here> Introducing Hudson. Winston Prakash. Click to edit Master subtitle style

Workshop for WebLogic introduces new tools in support of Java EE 5.0 standards. The support for Java EE5 includes the following technologies:

Nanda Kishor K N. nandakishorkn@gmail.com

Service Component Architecture, Apache Tuscany & WebSphere SOA Feature Pack Beta

Open ESB. Sang Shin Java Technology Evangelist Sun Microsystems, Inc. Raffaele Spazzoli Imola Informatica 1

Introduction to Oracle WebLogic. Presented by: Fatna Belqasmi, PhD, Researcher at Ericsson

Converting Java EE Applications into OSGi Applications

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

JAX-WS Developer's Guide

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

ENGINEER - DEVELOPER ADVANCED JAVA. 28 years old - 7 years of experience

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

Operations and Monitoring with Spring

Developing Web Services with Eclipse

JBOSS ENTERPRISE APPLICATION PLATFORM MIGRATION GUIDELINES

Accenture Software. ALIP Technical Presentation

REST and SOAP Services with Apache CXF

Jenkins User Conference Herzelia, July #jenkinsconf. Testing a Large Support Matrix Using Jenkins. Amir Kibbar HP

Oracle Service Bus. Situation. Oracle Service Bus Primer. Product History and Evolution. Positioning. Usage Scenario

GlassFish Security. open source community experience distilled. security measures. Secure your GlassFish installation, Web applications,

WELCOME TO Open Source Enterprise Architecture

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

ActiveVOS Server Architecture. March 2009

Developing modular Java applications

An Introduction to Globus Toolkit 3

This training is targeted at System Administrators and developers wanting to understand more about administering a WebLogic instance.

Java Web Services Training

OpenSSO Monitoring Euro User Groups Winter 2010

IBM Rational Web Developer for WebSphere Software Version 6.0

ORACLE DATA SHEET KEY FEATURES AND BENEFITS ORACLE WEBLOGIC SERVER STANDARD EDITION

JBoss SOAP Web Services User Guide. Version: M5

CHAPTER 1 - JAVA EE OVERVIEW FOR ADMINISTRATORS

Application Notes for Packaging and Deploying Avaya Communications Process Manager Sample SDK Web Application on a JBoss Application Server Issue 1.

EBA Procurement Procedure for the Supply of Website Services 2016: Annex 1 System Architecture Document SYSTEM ARCHITECTURE DOCUMENT

Building Web Services with Apache Axis2

Reusing Existing * Java EE Applications from Oracle SOA Suite

Jenkins Continuous Build System. Jesse Bowes CSCI-5828 Spring 2012

Executive Summary. Within IT Services, Cosmic Creation spotlights on the following:-

ORACLE DATA SHEET KEY FEATURES AND BENEFITS ORACLE WEBLOGIC SERVER STANDARD EDITION

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

Retour JavaOne Alexis Moussine-Pouchkine Sun Microsystems

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Securely Managing and Exposing Web Services & Applications

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

GECKO Software. Introducing FACTORY SCHEMES. Adaptable software factory Patterns

NetBeans: Universal Tool for Java Development and More. Roman Štrobl Technology Evangelist

Oracle Identity Analytics Architecture. An Oracle White Paper July 2010

JBoss Enterprise Middleware

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

SCA & SDO Implementations Open Source and Vendor Products

Education Institute Year Graduated

Oracle WebLogic Server 11g Administration

Transcription:

GlassFish & Friends May 22nd 2008 Alexis Moussine-Pouchkine GlassFish Team Sun Microsystems 1

Sun's Open Stack Flexible and Heterogeneous with Zero Barrier to Exit Database Platform Application Infrastructure Virtualization Operating System Partners Architecture Sun xvm VirtualBox

Java EE 5.0 = (J2EE 1.4).next Java EE 5 Theme: Ease of Development POJO-based programming More freedom, fewer requirements Extensive use of annotations Reduced need for deployment descriptors Annotations are the default DRY principle (better defaults) Resource Injection New APIs and frameworks

What Is GlassFish? A Java EE 5-compliant Application Server Can run J2EE applications too Open Source CDDL (like OpenSolaris, NetBeans) GPLv2 (like Java and NetBeans) Enterprise Quality GlassFish Enterprise Application Server Adds support, indemnification, and 99.999% availability

What Is GlassFish? (Cont.) Community at http://glassfish.org Sources, bug DBs, discussions Roadmaps Architecture Documents Governance Board 2 Sun members: Simon Phipps, Eduardo Pelegri-Llopart 3 Non-Sun individual members from Google, Wotif.Com, Amex

GlassFish Adoption Millions of downloads Dozens of external committers Over 8,000 members Excellent analyst reviews Gartner, Forrester, etc...

GlassFish around you

GlassFish around you

GlassFish around you

Timeline of Project GlassFish Tomcat Jasper Catalina JSTL Struts Crimson XSLTC Xalan Xerces GlassFish Launch JAXB JAX-RPC JSF J1'05 June 2005 v1 v2 v1 UR1 J1'06 May 2006 UR1 UR2 Sept. 2007 v2.1 v3 2008/2009 (you are here)

GlassFish v2 for the Enterprise Metro Web Services Stack One-stop shop for Web Services starting with JAX-WS Performance, Advanced WS & Microsoft interoperability Clustering, Load-Balancing, HA Dynamic group management system (Shoal) In-memory replication Unified Management Web Tier Grizzly nio framework (HTTP, IIOP, SIP) Dynamic Web Container Ultra-fast JSP compilation

GlassFish v2 for the Enterprise Integration Open MQ High performing JMS implementation HA for brokers and messages Available as standalone product Integration with GlassFish In memory, Out of process, or Remote JBI support OpenESB 2.0 as the integration back-bone Install, admin, and monitoring integrated in GlassFish v2 Basis for Java CAPS Release 6 Oracle TopLink as default JPA persistence engine Hibernate also easily usable

GlassFish v2 for Enterprises Management & Monitoring Graphical, command-line, tools, ANT... JMX and Centralized Call Flow Self-management Diagnostic reports Multi-tier provisioning with N1 SPS

GlassFish v2 for the Developer Single, smaller, download Around 60 MB total Multiple User Profiles Developer, Cluster, Enterprise Upgrade from one to another Better startup time Almost matches Tomcat (see also GlassFish v3) Cool Technologies Grizzly's Comet, jruby on Rails, jmaki,... Update Center Provision and install new features, new frameworks,... Tools support NetBeans, (My)Eclipse, IntelliJ, etc...

Web Admin Console

Clustering in GlassFish v2 JMX = Java Management Extensions

Performance SPECjAppServer July 2007: #1 score on T2000 883.66 JOPS@Standard for GlassFish v2 + 10% vs. WebLogic, +30% vs. WebSphere 6.1 SPECjAppServer 2004 Results 1000 900 800 700? 600 500 400 300 200 100 0 Sun BEA IBM JBoss JBoss July 2007: Best $/perf. on full Open Source GlassFish v2, OpenSolaris, Java 6, PostgreSQL 3x the price/perf vs. Oracle on HP score November 2007: Massive Scalability Result 8,439.36 JOPS@Standard (6 nodes, 18 instances) Sun T5120 & E6900 You no longer need to chose between Open Source and Performance Disclaimers: SPEC and the benchmark name SPECjAppServer 2004 are registered trademarks of the Standard Performance Evaluation Corporation. Competitive benchmark results stated above refl ect results published on www.spec.org as of 11/21/07. The comparison presented is based on GlassFish v2 UR1 run on 6 Sun SPARC Enterprise T5120 (1 chip, 8 cores/chip, 8 threads/core) 1.4GHz 8,439.36 SPECjAppServer2004 JOPS@Standard. For the latest SPECjAppServer 2004 benchmark results, visit http://www.spec.org/.

GlassFish Partner Program

Migration considerations verifier Verifies the code and packaging against the Java EE specifications Ships with every copy of GlassFish and Java EE SDK migrate2glassfish Pick up where the verifier or AVK left off Migrates from Tomcat, JBoss, WebLogic, WebSphere asupgrade Migrate (applications, resources, configuration) from one version of GlassFish to another (newer) one

GlassFish v3 An ideal Web 2.0 container Small, Fast, and modular Very fast startup time Use what you need Developer-friendly Faster, lighter Java server engine Java and Scripting applications jrubyonrails, Grails, PHP, Python/Django, Scala/Lift,... A good fit for SOA/ESB solutions Available starting... now! Targeting beta by the end of 2008 Final version will be Java EE 6

GlassFish @ JavaOne 2008 GlassFish v3 Tech Preview 2 (TP2) HK2/OSGi-based Web container 21 MB download, 1-sec startup Admin and update tool downloaded on demand Add-ons available from update center : EJB 3.1 (preview) jruby On Rails (no WAR packaging required) Grails (now also for GlassFish v2) Jersey and Metro (Web Services) jmaki (Ajax) Tools-ready: NetBeans 6.1, Eclipse 3.3

GlassFish @ JavaOne 2008 (2) GlassFish v3 modular and extensible OSGi support (Apache Felix is the default) HK2 for extensibility Embedded GlassFish Single JAR file and Java API to replace asadmin Developer use-cases (Maven, Grails, Lift, IDEs,...)

GlassFish @ JavaOne 2008 (3) GlassFish Enterprise Commercially supported product from Sun Access to support, patches, and indemnification GlassFish Unlimited Per-employee pricing (in addition to socket/cpu-based) Similar to MySQL unlimited GlassFish Partner Program 35+ ISVpartners signed up (SpringSource, IceFaces, TerraCotta, G2One, Synchronica, Liferay,...) Integrator program coming up

GlassFish @ JavaOne 2008 (4) GlassFish ESB GlassFish v3, OpenESB.next, JBI, OSGi (project Fuji) GlassFish Portal OpenPortal + Liferay = WebSynergy Integrated OpenSSO, Portlets 2.0, WSRP, and more 110MB download GlassFish Communications Server Sailfin-based commercially supported SIP App Server Preview (M4) available (almost feature-complete)

(Some) Distributions & Contributors Tools Java EE RI & SDK NetBeans IDE Distributions TmaxSoft JEUS 6 Project GlassFish Oracle oc4j BEA WebLogic 10 Eclipse Plugin Derby GlassFish Enterprise JBoss 5 Communities GlassFIsh Portal GlassFish ESB Maven Rep Hudson MQ OpenDS OpenSSO SailFin (Ericsson) Users and Other Groups

The SailFin Project Ericsson SIP Servlet Contribution is available at: http://sailfin.dev.java.net Visit, Download, Try, Join Milestone 4 available NetBeans and SDS tooling Not just for telco operators! Bridging the HTTP and SIP protocols Built on GlassFish v2 and expected in H2 2008

Hudson What? Continuous Integration Server Open Source Super easy to install, easy to use Extensible Helping all kinds of business, including GlassFish v3 Why? Put computers at work Very active community Increase transparency Reduce people dependency

Practical Hudson Available as Web Application java -jar hudson.war Deploy in your favorite web container Out of the box features Maven 2, Ant, Windows batch, schell scripts Subversion and CVS Email notifications JUnit, JavaDoc

Hudson Plugins Drop-in installs SCM: Accurev, BitKeeper, Reports: Checkstyle, ClearCase, Git, Mercurial, clover, cobertura, Crap4J, Perforce, StarTeam, URL, Emma, FindBugs, Japex, Visual SourceSafe JavaTest, NUnit, Plot, PMD, Violations, WebTest Triggers: IRC, Jabber, Locks&Latches, Naginator, External tools: JIRA, URL Change Mantis, Polarion, Trac, java.net, Google Code, Build: batch, Gant, Groovy, Misc: ActiveDir, Emotional, MSBuild, NAnt, Ruby, VMWare, Xvnc Google Gadget, Tray, CI Game,... Notifiers: GoogleCal, IRC, Jabber, Twitter

Metro Web Services Unified WS stack POJOs XML-free programing model Layered architecture Integrated use of JAXB 2.x JAX-WS 2.x also part of Java SE 6

JAX-WS 2.1 Layered Architecture Application Logic Strongly Typed Annotated Classes Messaging Layer Dispatch / Provider API

Server-side Programming Model Starting from a POJO Write a POJO implementing the service Add @WebService annotation Build and deploy WSDL file generated automatically Starting from a WSDL file Generate implementation Implement Server Endpoint Interface Build and deploy

JAX-WS Web Service Implementation package endpoint; import javax.jws.webservice; @WebService public class Bonjour { public String ditbonjour(string nom) { return "Bonjour " + nom; } Application Logic } Annotated Classes Dispatch / Provider

Client-side Programming Model wsimport http://host/webcontext/bonjour?wsdl No factories yet the code is fully portable XML is completely hidden from programmer BonjourService service = new BonjourService(); Bonjour port = service.getbonjourport(); String nom = "Peter"; String result = port.ditbonjour(nom);

Finer-grained Annotation Attributes @WebService(serviceName = "BonjourService", portname = "BonjourPort", endpointinterface = "Bonjour", targetnamespace = "http://endpoint/", wsdllocation = ".../BonjourService.wsdl") public class Bonjour { @WebMethod( action="sayhello", operationname="opname") public String ditbonjour (@WebParam(name = "name") String nom){ return "Bonjour " + name; } }

JAX-WS Handlers Protocol Handler May change protocol specifics Corner cases or specific protocol (profile) Logical/Message handler Protocol agnostic Used to access the message payload Chaining of handlers is possible

Metro Interoperability Standards Compliant JAX-WS 2.1 & JAXB 2.1 W3C SOAP 1.1/1.2, WSDL 1.1, WS-Addressing, MTOM WS-I Basic Profile 1.x, SSBP 1.0, AP 1.0.Net 3.0 interoperable WS-* specs used by.net 3.0 Reliable Messaging, Secure Conversation, Trust, Security, SecurityPolicy, MetadataExchange, Atomic Transaction, Coordination, Policy Secure, Reliable, Transactional Working on.net 3.5 interop See also : http://wiki.apache.org/ws/stackcomparison

OpenSSO Why? Web Access Management From user convenience to regulation requirements Browser cookies in a DNS domain Proxy or agent architecture for RBAC (server-based) Users get SSO, IT gets control Federation SSO beyond a single enterprise or service

OpenSSO Federation SSO across organizations Cookies no longer work Need a more sophisticated protocol Can't mandate single vendor solution Need standards for interoperability

SSO Standards

OpenSSO What? Sun Federated Access Mgr 8.0 = OpenSSO 1.0

OpenSSO 1.0 Access Management Centralized Agent Configuration & Deployment Centralized Configuration XACML Request/Response Wide choice of Application Servers Federation Fedlet Virtual Federation Multi-Federation Protocol Hub WS-Federation 1.1 3rd Party WAM Interoperability

OpenSSO A scenario Drop the WAR binary on to one of 8 supported containers (GlassFish, Tomcat,...) Configure OpenSSO Specify the administrator password, data store, agent,... Configure OpenSSO for users Create SAML 2 IDPs and a circle of trust with attribute mappings, such as cn (common name). Create a Fedlet Quickly federation-enable a small service provider SAMLv2 intermediary created on server, deployed on SP Credentials stay with the IDP (not passed on to the SP)

OpenSSO 1.0 Identity Services Authentication, Authorization, Audit SAML 2.0: Java, PHP, Ruby OpenID OpenID 1.1 provider (deployed on openid.sun.com) Authentication extension modules ActivIdentity 4Tress Hitachi Finger Vein Biometric Information Card (aka CardSpace) http://opensso.org/public/extensions/

GlassFish ESB OpenESB integrated into GlassFish v2 JBI 1.0 Reference Implementation Services Engines (SE) and Binding Components (BC) added when needed Implemented as a GlassFish life-cycle module NetBeans Tooling Project Fuji building on OSGi and GlassFish v3

Questions? alexis.mp@sun.com http://blogs.sun.com/alexismp http://blogs.sun.com/theaquarium http://glassfish.org 48