glassfish update and directions - karim mazouni - november 2007
DESCRIPTION
GlassFish Update and Directions - Karim Mazouni - November 2007TRANSCRIPT
![Page 1: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/1.jpg)
1
Sun Microsystems, Inc.
GlassFish Updateand Directions
1
Material under Creative Commons Attribution-ShareAlike 2.5 Licensehttp://creativecommons.org/licenses/by-sa/2.5/
![Page 2: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/2.jpg)
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
• Configure by exception> Reasonable defaults wherever possible
• Resource Injection• New APIs and frameworks
> EJB3, JAXB 2, JAX-WS, JSF, ...
![Page 3: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/3.jpg)
GlassFish
![Page 4: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/4.jpg)
“Various Interface21ers, including Costin and Juergen, have taken a look at GlassFish and given it the thumbs up.”
Rod Johnson, Spring Framework Creator, Feb. 2007 [1]
[1]: blog.interface21.com, Feb. 2007
![Page 5: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/5.jpg)
“... we were seriously stressed when IBM declared war with Geronimo and then HP got in the game against us too. Red Hat and JOnAS didn't scare us at all (really – not at all), nor did we worry about Sun's foray into the market. Oddly enough, of that group only Sun has managed to mount serious competition to Jboss.”
Marc Fleury, JBoss founder, August 2007 [2]
[2]: news.com, August 2007
![Page 6: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/6.jpg)
“Among major vendors, Sun Microsystems Inc., has dramatically improved its standing in this year's evaluation of applications servers for service-oriented architecture (SOA) and business
process management (BPM)”
Forrester Research, August 2007 [3]
[3]: http://www.forrester.com/Research/Document/0,,37138,00.html, August 2007
![Page 7: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/7.jpg)
What Is Project GlassFish?
• A Java EE 5 compliant Application Server• Enterprise Quality
> Sun Java System Application Server 9.x> Use it in production!
• Open Source> CDDL (like OpenSolaris, NetBeans)> GPLv2 (like Java and NetBeans)> Use it in production!
• Community at http://glassfish.java.net> Sources, bug DBs, discussions at Java.Net> Roadmaps, Architecture Documents
![Page 8: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/8.jpg)
GlassFish Adoption
• 3.5 million downloads since July '06
• Dozens of external committers
• Over 7,000 members
• Evans data survey of Linux users puts GlassFish at #3 behind JBoss and “other” (Tomcat)> JBoss and IBM fell 5% while
GlassFish / Sun increased
Feb 07 Mar 07 Apr 07 May 07 Jun 07 Jul 070
10000
20000
30000
40000
50000
60000
70000
80000
90000
100000
110000
120000
130000
Unique Admin "Pings"
![Page 9: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/9.jpg)
GlassFish around you
![Page 10: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/10.jpg)
Timeline of Project GlassFish
TomcatJasper
CatalinaJSTLStruts
CrimsonXSLTCXalanXerces
JAXBJAX-RPC
JSF
J1'05June 2005
J1'06May 2006
GlassFishLaunch
V1
Sept.2007
V2V1UR1
(you are here)
V3
Sept.2007
2008/2009
![Page 11: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/11.jpg)
Releases in Project GlassFish
• GlassFish v1> Victory! Java EE 5 Compliance!> December 2006 : UR1 - bug fixes> Growing # of Deployments
• GlassFish v2> New WS stack, performance, startup time> Cluster management, load balancing, failover > Some scripting support> Community, Transparency, Adoption
• GlassFish v3> Modularized kernel (HK2)> The Web 2.0 engine
![Page 12: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/12.jpg)
GlassFish v2SJS Application Server 9.1
• Metro Web Services Stack> Performance, Microsoft interoperability
• Clustering, Load-Balancing, HA> Advanced Management
• JBI support (OpenESB 2.0)• Better user experience
> Single, smaller, download> Multiple User Profiles> Better startup time> Update Center> New admin console: JSF, AJAX, Charts
• World Record Performance
Availab
le!
![Page 13: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/13.jpg)
GlassFish v2: Grizzly & JSP Containers
• JSP Container> Can use JSR-199 (Javac APIs in Java 6)> 10x performance improvement
• Grizzly> Improved over GlassFish v1> Very Flexible and Customizable> Non-blocking SSL> Support Quality of Service constraints> Scalable Async Req Processing (ARP)> Supports Comet (long-term HTTP connections)> Used in Jetty, etc...
• Hosting features> Alternate docroots, webcontainer dynamically reconfigurable, ..
![Page 14: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/14.jpg)
Management Features
• Centralized, secure, remote access> Accessible as GUI, CLI, IDEs, Java-based programs> Also available via provided ANT tasks> JMX & Application Server Management eXtensions, AMX> Can be monitored through jConsole and others
• Per-service monitoring levels• Call Flow• Self Management• Resource consumption management
![Page 15: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/15.jpg)
MetroJAX-WS, WSIT, and JAXB implementations
• Dynamic JAX-WS Runtimes• JAXB 2.0 fully support XML Schema
> A lot of reuse of GlassFish's JAXB implementation
• GlassFish JAX-WS 2.x> WS Separation of Transport and Encoding
> HTTP, JMS, SMTP, TCP/IP> MTOM, Fast Infoset (binary), Textual, Others
• WSIT (Project Tango)> Microsoft Interoperability and Quality of Service> Same (old) JAX-WS programing model
• Overall Great Performance (see next slide)
![Page 16: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/16.jpg)
GlassFish JAX-WS vs. Axis2
![Page 17: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/17.jpg)
WSIT (Project Tango)
• WSIT (Web Services Interoperability technology)> Extension to JAX-WS 2.x, part of GlassFish v2> Implements WS-Addressing, WS-Security, WS-Secure
Conversation, WS-ReliableMessaging, WS-MetaDataExchange, MTOM/XOP, WS-Policy, and more
• POJO programing model from JAX-WS 2.x> Annotations, Asynchronous Web Services, ...> No API, platform is responsible for providing appropriate QoS> Alternate Transports – JMS, SMTP, FTP, TCP, ...
• Common work with Microsoft (.Net 3's WCF)> Regular tests against various stacks
See also : http://wiki.apache.org/ws/StackComparison
![Page 18: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/18.jpg)
Top Link Essentials / JPA
• JPA now a separate JSR> 1.0 very well accepted> Does not require a container
• Oracle Contribution to GlassFish> Fully JPA-compliant and open source
• Very Active Community> Oracle, Sun, TmaxSoft, independents> Mail: [email protected]
• Pluggable (per spec)> In GlassFish, JEUS, JOnAS, Tomcat, Geronimo, JBoss, Oracle> Converse is true also: Hibernate & OpenJPA run on GlassFish
![Page 19: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/19.jpg)
JBI – Java Business Integration
• OpenESB 2.0 implementation> Included in GlassFish v2> Integrated as a life-cycle module> Integrated admin tools (Web and CLI)
• Many components> Binding Components: HTTP, File, FTP, JMS, TCP, CICS, HL7, ...> Service Engines: BPEL, XSLT, ETL, SQL, Scripting, Worklist, ...> https://open-esb.dev.java.net/Components.html
• Tools support> NetBeans SOA 6.0 Beta
• Possible to plug ServiceMix into GlassFish v2> Support wider JBI story
![Page 20: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/20.jpg)
Clustering Architecture
JMSHTTP(S) RMI/IIOP
Databases
Applications and Config
Custom Resources
Message routing/failover/load balancing
Node A Node B Node N
Clu
ster
ed
In
sta
nc
es
ResourceAdapters
AS
ASASAS AS AS AS
HA Application State Repository
Man
agem
ent
![Page 21: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/21.jpg)
Clustering in GlassFish v2
asadmin>
Java EE Server Instance
JMX API
JMX API
JMX API
Node 1
Node 2
Node Agent
Administration Node
Node Agent
DomainAdministration
Server(DAS)
Applications
Resources
Configuration
JMX = Java Management Extensions
![Page 22: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/22.jpg)
Dynamic Clustering and In-Memory Replication
• GMS with Project Shoal> http://shoal.dev.java.net> Dynamic clusters implemented with JXTA by default> Extreme ease of use in cluster setup
• Replication> What?
> HTTP session state> Stateful EJB session state> Single Sign-On state> Container state (timers, ...)
> How?> Default is In-Memory replication with JXTA> Can still use HADB for 99.999% uptime (higher perf degradation)
![Page 23: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/23.jpg)
Typical cluster topology
Memory ReplicationExample: Maximize Availability on 4 node cluster on 2 machines
Machine 1 Machine 2
Instance 1 Instance 2
Instance 3 Instance 4
![Page 24: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/24.jpg)
Problem domain and scopeMemory Replication
• Provide Application High Availability for :> HTTP session state> Single Sign On state> Stateful EJB Session bean state
• Application server instances need :> Automatic Transaction recovery> EJB Timer migrations> Cluster health> In-memory replication module> IIOP failover load-balancer
![Page 25: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/25.jpg)
Typical cluster topology
Memory Replication
Instance 1 Instance 2
Instance 3 Instance 4
![Page 26: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/26.jpg)
Typical cluster topology
Memory ReplicationExample: Maximize Availability on 4 node cluster on 2 machines
Machine 1 Machine 2
Instance 1 Instance 2
Instance 3 Instance 4
![Page 27: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/27.jpg)
Memory Replication
• Location transparency> fail over request can go to any instance in the cluster
• 2 Cases: Failover request lands on> Case 1: instance with replica data:
ownership taken, processing continues> Case 2: instance without replica data
> instance sends broadcast request> instance with replica data transfers data back to requester and
deletes its copy after an acknowledge> JXTA makes this easy (propagation communication channels are
scoped within the “group” (i.e. the cluster members)
Typical failover scenario
![Page 28: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/28.jpg)
HTTP Session State Failover
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
![Page 29: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/29.jpg)
HTTP Session State Failover
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
Case 1:Instance has replica data
![Page 30: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/30.jpg)
HTTP Session State Failover
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
Broadcast…
Case 2:Instance does nothave replica data
![Page 31: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/31.jpg)
HTTP Session State Failover
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
and ownershiptransfer…
Case 2:Instance does nothave replica data
![Page 32: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/32.jpg)
Cluster Dynamic Shape Change
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
Shape Changeinstance1 fails
![Page 33: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/33.jpg)
Cluster Dynamic Shape Change
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
Shape Changeinstance1 fails
Instance2 and 4see the failure
X
X
![Page 34: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/34.jpg)
Cluster Dynamic Shape Change
Servlet(HTTP Session)
replicas
instance 1
Servlet(HTTP Session)
replicas
instance 2
Servlet(HTTP Session)
replicas
instance 4
Servlet(HTTP Session)
replicas
instance 3Cluster
WS
LoadBalancer
Shape Changeinstance1 fails
Instance2 and 4see the failure
Instance4 selectsInstance2 as newpartner—new connections established
the reverse happens when an instance joins or re-joins the cluster
![Page 35: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/35.jpg)
Our hope was to say…Memory Replication Configuration
• “This page left intentionally blank” ;-)> Meaning “zero configuration required”
• We came close to that goal…
![Page 36: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/36.jpg)
Out of the box…Memory Replication Configuration
• Create a domain> Use the ‘cluster’ profile – defaults for replication are handled
> Enables GMS—heartbeat enabled>persistence-type = "replicated"
• Create a cluster and instances• Deploy your application with availability-enabled=true• That’s it
![Page 37: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/37.jpg)
Making your app distributableMemory Replication Configuration
• <distributable/> element> Required in web.xml
> Indicates you believe your application is ready to run in a cluster
• Serializable objects required> HTTP Session state> EJB technology Stateful Session Bean state
![Page 38: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/38.jpg)
Cost of replication
Memory Replication Performance
2K session 4K session 8K session0
100
200
300
400
500
600
700
800
900
1000
Hits/Sec ~17-25% throughput degradation
No replication
replication
HADB
![Page 39: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/39.jpg)
Performance
• SPECjAppServer Benchmark> July 2007: #1 score on T2000
> 883.66 JOPS@Standard for GlassFish v2> 10% faster than BEA WebLogic> 30% faster than IBM WebSphere 6.1
> July 2007: Best $/perf. on full Open Source stack> 813.73 JOPS@Standard> GlassFish v2, OpenSolaris, Java 6, PostgreSQL> 3x the price/perf vs. Oracle on HP score
• Performance: Startup Speed> Start as little as possible in v2 (see also v3)
You no longer need to chose between Open Source and performance
Sun BEA IBM JBoss
0
100
200
300
400
500
600
700
800
900
SPECjAppServer 2004 Results
?
![Page 40: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/40.jpg)
(Some) Distributions & Contributors
ProjectGlassFish
Sun Java System AS 9.x
Derby
Open ESB
Portal Server
MQ
Distributions
Maven Rep
Java EE RI & SDK Communities NetBeans™IDE
NetBeans 5.5, 6.0Tools
Eclipse Plugin
Users and Other Groups
TmaxSoft JEUS 6
Oracle oc4j
BEA WebLogic 10
JBoss 5
SailFinEricsson
![Page 41: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/41.jpg)
Tools Support
• NetBeans 5.5.1, 6.0• Best integration with :
> full Java EE 5 support> resource creation> remote debug> incremental deployment> profiling> wizards, etc...
• Additional features (SOA, UML, jRubyOnRails, ...)
• GlassFish (v1, v2, v3) plugin for Eclipse 3.3 (Europa)
• Genuitec's MyEclipse offers greater integration between IDE and GlassFish
![Page 42: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/42.jpg)
Recent GlassFish PartnersOpen for Business!
(Jetty)
![Page 43: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/43.jpg)
Frameworks and Applications
JSPwiki
MyFaces ADF
Integration ORB
Wicket
BIR T
AJ AX
Shale
Apache Httpd
Dalma
Facele ts
OSCache
Sit eMesh
Strin gBeans P ortal
Tapest ry
Equinox
jB PM
WebDAV
Project Tango
Java WSDP
OSWorkFlow
CJ UG -Cl as sif ie ds
BlogTraderWebSphere M Q
MC4J
DOJO
EHCache
Quercus P HP
SEAM
![Page 44: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/44.jpg)
GlassFish Adoption Storieshttp://blogs.sun.com/stories
• PeerFlix> GlassFish v1 on Solaris 10 / x2100> MySQL, Kodo JDO
• Wotif.com> Large # hits, ehCache / Horizontal Scaling> Spring and Hibernate> 3rd largest commercial site in Australia
• Harvard University> On-line archive for sharing data within and across
universities> Lucene, PostgreSQL, Apache Shale
• More (small and large)> Help us collect these> [email protected]
![Page 45: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/45.jpg)
GlassFish v3
• Small & Fast> Less than 1.0 sec startup
• Totally Modular, kernel is <100K> Can run in a phone or a desktop application> Can be embedded in-process
• An ideal Container for Web 2.0> Java Web Applications, PHP, jRuby/RoR, ... > Support for upcoming Java EE 6 profiles
• A container that can do Java EE and more• Screencast and preview code available today
> http://hk2.dev.java.net> http://blogs.sun.com/dochez/entry/first_glassfish_v3_screencast1
• Still early stages... working on schedule
![Page 46: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/46.jpg)
AJAX and Scripting Activities
• AJAX> jMaki - http://ajax.dev.java.net
> Encapsulates very easily AJAX widgets (JSP taglib)> DynaFaces - http://jsf-extensions.dev.java.net
> AJAX and full-featured JSF components> WoodStock - http://woodstock.dev.java.net
> Repository of AJAXyfied JSF components> JSF Templating http://jsftemplating.dev.java.net/
> Templating for pages and components
• Phobos - http://phobos.dev.java.net> Scripting on the Server
• Comet and Grizzly - http://grizzly.dev.java.net> Long-term HTTP connections for push content
![Page 47: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/47.jpg)
FOSS Middleware Components
• GlassFish – AppServer, JavaPersistence, Web Tier• OpenPortal – Container, WSRP, Portlet, Portlet Rep• OpenESB, OpenJBI – JBI, BPEL• OpenSSO – Access & Federation Manager• OpenDS – Directory Server• Jersey – JAX-RS for RESTful Web Services• Hudson – Continuous build software• Phobos, jMaki... – Web 2.0/AJAX• Open MQ – MessageQueue• WoodStock – JSF Components• Apache Derby – JavaDB• Social Software – Apache Roller, Slynkr
![Page 48: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/48.jpg)
The SailFin Project
• Ericsson SIP Servlet Contribution is available at:> http://sailfin.dev.java.net
• Visit, Download, Try, Join> Milestone 1 available
• Not just for telco operators!> Bridging the HTTP and SIP
protocols
• Built on GlassFish v2and expected first half of 2008
![Page 49: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/49.jpg)
OpenDSopends.dev.java.net
• Next generation Directory Services> Designed to meet the needs of the Telco market> High-Performance, highly extensible and VERY large
deployments• Brand-new Code Base
> Java-based, Very High Performance Goals> Not Based on DSEE (2B-entry deployments, market leader)
• Full Fledged> Full LDAPv3, replicas> Virtual Directory, Proxies, Caching, etc...
• Schedule> v1.0 before year's end
![Page 50: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/50.jpg)
OpenESB/JBI Statusopen-esb.dev.java.net
• Based on JBI (Java Business Integration) Standard• Already Released
> JBI Implementation> BPEL> Many binding components
• More Components to be Released• Integrated within GlassFish V2• Distributed in
> NetBeans SOA Pack> Future of Sun Composite Application Platform Suite (CAPS)
![Page 51: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/51.jpg)
OpenSSO Statusopensso.dev.java.net
• Access Manager, Single Sign-On, Federation> SAML, XACML, Liberty Standards
• Already Released> Access Manager> Many Policy Agents> Federation Manager
• To be Released> More Policy Agents
• Distributed in> Sun Java System Access Manager & Federation Manager
![Page 52: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/52.jpg)
OpenPortal Statusportal.dev.java.net
• Enterprise-class Portal Server> Basis for the commercial product from Sun> Next release is Sun Java System Portal Server 7.2
• Sub-projects> portlet-container.dev.java.net (JSR168 / JSR 286)> portlet-repository.dev.java.net> wsrp.dev.java.net (WSRP 1.0, 2.0)> portalpack.netbeans.org / eclipse-portalpack.dev.java.net> saw.dev.java.net (Worflow/SOA)> mirage.dev.java.net (CMS)> jsfportletbridge.dev.java.net
• Get more information from http://blogs.sun.com/portal
![Page 53: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/53.jpg)
JAX-RS & Jerseyhttp://jsr311.dev.java.net
• POJO-based RESTful Web Services> JSR 311, and also part of Java EE 6 (JSR 316)> High-level declarative programming model> Flexible typing, runtime takes care of common conversions> Pluggable support for types, containers, and resolvers
• Reference Implementation> http://jersey.dev.java.net> Available to GlassFish via update center> Deployment options: JAX-WS endpoint (per JSR), Grizzly, Java
6 lightweight HTTPd
• Roadmap> JSR and Reference Implementation final by 2H2008
![Page 54: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/54.jpg)
Resources
• http://glassfish.java.net• http://wiki.glassfish.java.net• http://blogs.sun.com/theaquarium
![Page 55: GlassFish Update and Directions - Karim Mazouni - November 2007](https://reader034.vdocuments.us/reader034/viewer/2022052619/555c25ffd8b42a09438b4c89/html5/thumbnails/55.jpg)
5555
Material under Creative Commons Attribution-ShareAlike 2.5 Licensehttp://creativecommons.org/licenses/by-sa/2.5/
Sun Microsystems, Inc.