Test de Jonas 3.3.6 - Tomcat 4.1.30

Damien Debernad

Cet article décrit les fonctionnalités du serveur d'applications Jonas

- Titre : Test de Jonas 3.3.6 - Tomcat 4.1.30

- Auteur : Damien Debernad

- Parution : 27 avril 2004

- Public visé :

- Licence : Copyright ® 2004 Debernad. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Voir également :

- Articles J2EE - Panorama des serveurs J2EE

- Articles J2EE - Création d'un premier EJB avec Eclipse et JOnAS

- Forum J2EE - Forum J2EE developpez.com

Sommaire

- I. Remerciements

- II. Présentation

- III. Description

- III-A. Certification J2EE

- III-B. Plates-formes supportées

- III-C. Licence / Prix

- III-D. Installation

- III-E. Administration

- III-F. Configuration matérielle

- III-G. Intégration IDE

- III-H. Popularité

- III-I. Documentation

- III-J. Particularités

- IV. NOTE ET REMERCIEMENT DU GABARISATEUR

I - Remerciements

Je tiens à remercier Alacazam pour avoir traqué les erreurs de cet article.

II - Présentation

JOnAS est un serveur d'applications pur Java, open source, se conformant à la spécification J2EE. En outre sa forte modularité lui permet d'être utilisé comme :

- un serveur J2EE : pour déployer et exécuter des applications EAR (c'est-à-dire pour des applications composées simultanément de composants web et d'Ejb) ;

- un conteneur d'EJB : pour déployer et exécuter des composants EJB ( c'est-à-dire pour des applications sans interfaces Web ou utilisant des moteurs de JSP/Servlet qui ne sont pas intégrés comme conteneur J2EE JonAS) ;

- un conteneur Web : pour déployer ou exécuter des JSPs et Servlets ( c'est-à-dire pour des applications sans composants EJB ).

III - Description

III-A - Certification J2EE

JOnAS est une implémentation des spécifications J2EE 1.4. et respecte actuellement les spécifications EJB 2.0.
Son intégration de Tomcat ou Jetty en tant que conteneur Web lui assure la conformité aux spécifications Servlet 2.3 et JSP 1.2.
Le serveur Jonas supporte ou implémente les API Java suivantes : JCATM 1.0, JDBCTM 2.0, JTATM 1.0.1, JMSTM 1.1, JMXTM 1.0, JNDITM 1.2.1, JAASTM 1.0, JavaMailTM 1.3.

III-B - Plates-formes supportées

- Windows

- Linux

- Solaris

- HP-UX

- IBM AIX

- Macintosh

III-C - Licence / Prix

Jonas est sous licence LGPL, il est gratuit.

III-D - Installation

Le produit est très simple à installer, il utilise l'installateur graphique d'InstallAnywhere.
L'installation est la même sur toutes les plates-formes.
Il faut qu'un JDK soit déjà installé sur la machine.
L'installateur permet de choisir un JDK déjà existant.
De plus, Jonas a besoin du compilateur Ant configuré avec la librairie BCEL.
Si vous possédez l'un des deux (Ant ou BCEL), il le détectera et installera uniquement celui qui manque.
L'installation dure environ 5 minutes.
Une fois terminée, pas besoin de positionner des variables systèmes ou de modifier des fichiers de configuration, le serveur est tout de suite opérationnel.
Voici en quelques images, la procédure d'installation :

III-E - Administration

L'administration du serveur Jonas est très simple, car on peut tout faire grâce à une interface web très agréable et ergonomique. Ce mode d'administration présente l'avantage de pouvoir gérer son serveur Jonas à distance sans aucun déploiement côté client, juste un navigateur. Voici quelques images de cette interface web :

III-F - Configuration matérielle

Il n'existe aucun pré-requis officiel, car la seule chose qui est réellement nécessaire à Jonas est un JDK 1.3 ou supérieur.

III-G - Intégration IDE

- JBuilder : Kelly

- Eclipse : Jope et Lomboz

III-H - Popularité

Jonas est un serveur d'applications J2EE devenu très vite populaire. Il dispose d'une communauté très présente grâce à 2 points :

- le consortium Objectweb est très présent et très à l'écoute des attentes du monde professionnel, surtout que ce consortium regroupe des grandes entreprises (Bull, Thalès, France Telecom, Red Hat, Suse, Mandrake et l'INRIA) mais aussi des plus petites (Experlog, Lynx, Open wide et Scub) qui poussent le serveur Jonas sur la bonne voie ;

- le serveur Jonas est OpenSource, ce qui nous donne une communauté très présente qui soutient le serveur mais aussi une grande réactivité pour répondre aux questions ou corriger certains problèmes.

III-I - Documentation

Jonas possède une très bonne documentation, assez complète et gratuite. Nous avons donc :

- des guides (installation, configuration, développement, déploiement) ;

- des tutoriaux (avec des exemples concrets) ;

- des Howto (montre des particularités ou du spécifique).

III-J - Particularités

Outre l'implémentation de tous les standards J2EE, JOnAS propose les fonctionnalités avancées suivantes :

- Administration : l'administration du serveur JOnAS utilise JMX et fournit une console d'administration basée sur les JSP (Struts) ;

- Services : l'architecture de JOnAS, basée sur les services, assure au serveur un haut degré de modularité et de configurabilité. Cela permet au développeur d'appliquer au niveau middleware une approche basée sur un modèle composant, et rend plus facile l'intégration des nouveaux modules (p. ex. pour les contributeurs opensource). Cela permet également de démarrer uniquement les services nécessaires à chaque application, et d'économiser ainsi les ressources système. Les services JOnAS sont administrables avec JMX ;

- Scalabilité : JOnAS intègre plusieurs mécanismes d'optimisation pour augmenter la scalabilité du serveur. Cela comprend un pool de beans session, un pool de beans Message-Driven, un pool de threads, un cache de beans entités, l'activation/désactivation des beans entités, un pool de connexions (pour JDBC, JMS, J2EE CA), et l'optimisation des accès aux supports de stockage (shared flag, isModified) ;

- Mise en cluster : les solutions de "Clustering" JOnAS proposent au niveau WEB aussi bien qu'EJB l'équilibrage de charge, la haute disponibilité et la résistance aux pannes ;

- Distribution : JOnAS fonctionne avec différents environnements distribués, du fait de l'intégration du projet ObjectWeb CAROL (Common Architecture for RMI ObjectWeb Layer), qui assure la prise en compte simultanée de plusieurs protocoles de communication : RMI utilisant le protocole propriétaire Sun JRMP, RMI sur IIOP, CMI le protocole de distribution en mode cluster de JOnAS et enfin Jeremie, la personnalité RMI de l'Object Request Broker Jonathan du consortium Objectweb. Grâce à Jeremie, JOnAS bénéficie de façon transparente de l'optimisation des invocations RMI locales ;

- Support des "Web Services" : grâce à l'intégration d'AXIS, JOnAS permet aux composants J2EE d'accéder aux "Web services" (i.e. d'être des clients "Web Services" ), ainsi que d'être déployés en tant que "Web Services Endpoints" (i.e. de fournir des "Web Services"). Le déploiement des clients "Web Services" standards et des "Web Services Endpoints" est supporté, tel qu'il est spécifié en J2EE 1.4 ;

- Support de JDO : en intégrant l'implémentation ObjectWeb de JDO, SPEEDO, ainsi que le connecteur J2EE-CA associé, JOnAS permet aux composants J2EE d'utiliser des fonctions JDO ;

- Accès aux EIS : les systèmes d'information de l'entreprise (EIS - Enterprise Information Systems) sont facilement accessibles aux applications JOnAS. En respectant l'architecture des connecteurs J2EE (J2EE-CA), JOnAS permet le déploiement de tout connecteur se conformant à J2EE CA. L'EIS est alors disponible depuis un composant applicatif J2EE ;

- Système transactionnel : la plate-forme JOnAS supporte les transactions distribuées impliquant des composants multiples, ainsi que des ressources transactionnelles. Le support des transactions JTA est fourni par un moniteur transactionnel développé sur une implémentation du service transactionnel de CORBA (OTS).

IV - NOTE ET REMERCIEMENT DU GABARISATEUR

Cet article a été mis au gabarit de developpez.com.

Le gabarisateur remercie ced pour sa correction orthographique.