Movatterモバイル変換


[0]ホーム

URL:


Aller au contenu
Wikipédial'encyclopédie libre
Rechercher

GlassFish

Un article de Wikipédia, l'encyclopédie libre.

Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.
Si ce bandeau n'est plus pertinent, retirez-le. Cliquez ici pour en savoir plus.

Cet article contient une ou plusieurslistes().

Ces listes gagneraient à être rédigées sous la forme de paragraphes synthétiques, plus agréables à la lecture, les listes pouvant être aussi introduites par une partie rédigée et sourcée, de façon à bien resituer les différents items.
D'autre part,Wikipédia n'a pas pour rôle de constituer une base de données et privilégie uncontenu encyclopédique plutôt que la recherche de l'exhaustivité.
GlassFish
Description de l'image Glassfish logo large.png.
Description de l'image GLv2AdminGui.png.
Informations
Développé parOracle et communauté
Première version[1]Voir et modifier les données sur Wikidata
Dernière version7.1.0 ()[2]Voir et modifier les données sur Wikidata
Dépôtgithub.com/eclipse-ee4j/glassfishVoir et modifier les données sur Wikidata
Écrit enJavaVoir et modifier les données sur Wikidata
Système d'exploitationMultiplateforme(d)Voir et modifier les données sur Wikidata
EnvironnementMulti-plateforme
TypeServeur d'applications
LicenceEclipse Public License 2.0 et GPL linking exception(en)Voir et modifier les données sur Wikidata
Documentationeclipse-ee4j.github.io/glassfish/docsVoir et modifier les données sur Wikidata
Site webprojects.eclipse.org/projects/ee4j.glassfish

modifier -modifier le code -voir Wikidata(aide)

GlassFish est unserveur d'applications compatibleJava EE.

Introduction

[modifier |modifier le code]

GlassFish est le nom duserveur d'applicationsOpen SourceJavaEE 5 et désormaisJava EE 7 avec la version 4.1 qui sert de socle au produitOracle GlassFish Server[3] (anciennementSun Java System Application Server[4] deSun Microsystems). Sa partieToplink persistence[5] provient d'Oracle. C'est la réponse aux développeurs Java désireux d'accéder aux sources et de contribuer au développement des serveurs d'applications de nouvelle génération.

La distribution diteOpen Source Edition est placée sous double licenceCDDL etGPLv2.

GlassFish est certifiéJavaEE 5 (EJB3 + JPA + JSF + JAX-WS 2.x + ...) etJava EE 6 (EJB 3.1, CDI, JSF 2.0, JAX-RS 1.1, ...)

Historique

[modifier |modifier le code]

Le projet est né en juin2005 de l'ouverture de Sun Application Server 8.

La version GlassFish v1.0 date de mai2006.

La version 2.0 (ajout des fonctions de haute-dispo/clustering et support deWeb Services avancés) date du. Cette version apporte également une performance accrue (benchmark SPECjAppServer) par rapport aux leaders traditionnels que sontBEA WebLogic et IBMWebSphere.

La version 3.0 est sortie le en même temps queJava EE 6. Elle apporte un découpage modulaire et des temps de démarrage de quelques secondes seulement[6].

La version 3.1 sort en et propose un provisioning SSH, une administration centralisée et un clustering complet avechaute disponibilité des sessions. Elle combine donc les fonctions historiques de GlassFish v2.x et la modularité et le support complet de Java EE 6 offert par la nouvelle architecture 3.x.

À la suite du rachat de Sun par Oracle début 2010, la version commerciale de GlassFish est concurrencé au sein d'Oracle par Weblogic. En 2013 sort Glassfish 4, supportant JEE 7[7]. Quelques mois plus tard la version commerciale de GlassFish est abandonnée[8]. La version Open-source de GlassFish est maintenue au moins jusqu'à la version 5, il constituera l'implémentation de référence de Java EE 8.

Fonctions

[modifier |modifier le code]

Au niveau des standards, GlassFish est une implémentation complète de la norme Java EE 5 qui recouvre :

  • EJB 3 (approche POJO, configuration par annotations,injection de dépendance) ;
  • JPA (Java Persistence API) : standard implémenté par TopLink (par défaut dans GlassFish),Hibernate ou OpenJPA ;
  • JAX-WS 2.x : nouvelle pile pour les services web ;
  • JAXB 2.0 : mise en correspondance (mapping) XML/Java utilisée par JAX-WS 2.0 ;
  • JSF (Java Server Faces) - frameworkMVC
  • StAX - parseur destreamingXML ;
  • JSP 2.1 &Servlet 2.5 : Pour générer des pages et du contenu WEB dynamiquement.

Avec GlassFish v3, c'est un support complet de Java EE 6 qui est proposé :

  • EJB 3.1: singleton, API pour conteneur, asynchrone, @Schedule, ...
  • JPA 2.0: collections, verrou pessimiste, API de critères, ... C'est EclipseLink qui est désormais utilisé par GlassFish
  • JSF 2.0: facelets/XHTML, AJAX intégré, composants composites, ... L'implémentation GlassFish s'appelle Mojarra
  • JAX-RS 1.1: RESTful web services. L'implémentation est fournie par Jersey
  • Servlet 3.0 : web.xml optionnel, API asynchrone, ...
  • CDI 1.0: Context and Dependency Injection (JSR 299, @Inject, conversation, etc.). L'implémentation utilisée par GlassFish est JBoss Weld.
  • BeanValidation 1.0: validation à l'aide d'annotation. L'implémentation utilisée par GlassFish est Hibernate Validator.
  • Managed Bean 1.0 : composant léger
  • Profil web: sous-ensemble ambitieux de fonctionnalités de la plate-forme JavaEE pour développer desapplications Web. GlassFish v3 propose le support du profil Web et du profil complet.

Implémentation

[modifier |modifier le code]
  • La grande nouveauté de GlassFish v3 tient dans son architecture modulaire basée surOSGi et extensible grâce à une couche d'abstraction appeléeHK2
  • Interface web d'administration complète (réécrite pour la version 2 avecJSF etAJAX)
  • Interface en ligne de commande scriptable à volonté et une intégrée aux outils de développement. GlassFish expose au travers deJMX de nombreuses propriétés accessibles, par exemple au travers deJConsole. Enfin plusieurs tâchesANT sont également fournies.
  • Avec GlassFish v3 c'est désormais une APIRESTful qui est disponible pour faire du monitoring et du management avec un simple client HTTP.
  • Grizzly est le nom de l'écouteur HTTP écrit ennio (E/S multiplexée non-bloquantes de Java 1.4), aux performances identiques voire supérieures au code natif (Apache HTTPd). Grizzly gèreComet (connexion HTTP de longue durée), souvent utilisée avec AJAX.
  • Java Web Start : la spécification Java EE 5 définit l'ACC (Application Client Container) d'injection de dépendance (d'une référence à un EJB, un contexte de sécurité, etc.) dans un client Java (Swing, RCP, ...). GlassFish permet de packager ce client dans l'application et de le redistribuer via Java Web Start tout en réalisant l'injection.
  • Metro/WSIT : Metro est le nom de la technologie Web Services de GlassFish etWeb Services Interoperability Technology (projet Tango) est son extension basée surJAX-WS 2.x et conforme aux standards WS-* (WS-Addressing, WS-ReliableMessaging,WS-Security, WS-SecureConversation, ...). WSIT, régulièrement testé avec .Net 3.0 (WCF) deMicrosoft, est optionnel dans GlassFish v1 et intégré dans GlassFish v2. WSIT a étémis en œuvre dans le cadre du standard PRESTO de l'État français.
  • Fast Infoset : optimisation des performances des Web Services par utilisation d'un format binaire.

Collaborations

[modifier |modifier le code]

Bien que relativement récent, GlassFish fait déjà l'objet de nombreuses collaborations avec d'autres projets open source :

  • Oracle contribue à la partie JPA sous la forme deTopLink Essentials publié en open source dans le projet GlassFish. Il s'agit de la dernière version du produit. La spécification JPA permet de remplacer à volonté les implémentations ; Avec GlassFish v3 c'est l'implémentation complèteEclipseLink (développée par Oracle) qui est utilisée
  • GlassFish utilise les implémentations de référence JBoss Weld et Hibernate Validator pour les APIs CDI et BeanValidation
  • JBoss utilise JSF et JAXB issus de GlassFish et propose le support de Metro/JAX-WS issu de GlassFish ;
  • BEA Weblogic 10 utilise JAX-WS ;
  • Jetty a adopté Grizzly et le compilateur JSP de GlassFish ;
  • La sociétéTmaxSoft revend une distribution GlassFish sous le nom de JEUS 6.0 ;
  • Des contributeurs individuels proviennent du monde entier et en particulier de France ;
  • Ericsson a annoncé en la contribution de sa technologieSession Initiation Protocol au projet GlassFish (projet SailFin).

Projets liés

[modifier |modifier le code]
  • OpenESB : implémentation d'un ESB open source conforme au standard JBI (Java Business Integration). Cet ESB est construit avec GlassFish et fournit un moteur BPEL (d'origine SeeBeyond) et plusieurs connecteurs techniques (SOAP, JMS, ...). OpenESB est une fondation de la prochaine version du produit Sun Java CAPS.
  • OpenSSO : mise en open source du produit Sun Access Manager qui permet de mettre en place une infrastructure Web SSO (Single Sign-On ouauthentification unique en français). Le sous-projet OpenFederation implémente le standard de laLiberty Alliance.
  • OpenDS : réécriture en Java du serveur d'annuaireLDAP de Sun.
  • JavaDB : distribution deApache Derby embarquée dans GlassFish.
  • Phobos : réutilise l'infrastructure de GlassFish pour fournir unenvironnement de développement de script côté serveur conforme à JSR 223. L'emphase est mise surJavaScript (Rhino) pour l'instant. D'autres, tels queJRuby et Groovy, restent utilisables.
  • jMaki : technologie d'encapsulation de code AJAX (DOJO, Yahoo, Google, ...) dans des bibliothèques de balises JSP ou des composants JSF.
  • WebSphere MQ : implémentation de JMS utilisée dans GlassFish.
  • Portal : mise en open source de Sun Portal Server.

Outils liés

[modifier |modifier le code]

Notes et références

[modifier |modifier le code]
  1. « Sun tries sharing Java again; still not open source »,(consulté le)
  2. « Release 7.1.0 »,(consulté le)
  3. http://www.oracle.com/goto/glassfish
  4. http://www.sun.com/software/products/appsrvr/index.xml
  5. http://www.oracle.com/technology/products/ias/toplink/index.html
  6. video glassfish.org/v3
  7. « Oracle lance officiellement Java EE 7 et Glassfish 4 aujourd'hui »,
  8. David Bienvenido, « Retrait de l’Édition Commerciale de GlassFish »,

Liens externes

[modifier |modifier le code]
v ·m
C
C++ &C#ZMWS : ZazouMiniWebServer
ASP.NETIIS
Java
JavaScript/TypeScript
Python
PikeCaudium
Ruby
ErlangYaws
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=GlassFish&oldid=221242997 ».
Catégories :
Catégories cachées :

[8]ページ先頭

©2009-2026 Movatter.jp