JOnAS
Cette page vous explique comment installer le Serveur d’Application JOnAS sur une Debian Sarge.
- Pré-requis
- Installation
- Démarrage
- Connexion MySQL
- Création d’un groupe
- Interfaçage avec Eclipse
- Et après…
Pré-requis
JOnAS est livré lié au moteur de servlets Tomcat, mais il a également besoin du JDK (Java Development Kit), d’Ant (make basé sur Java) et de la librairie BCEL qui permet à Ant de compiler JOnAS.
Pour le JDK, le mieux est de récupérer le package debian de Blackdown ; pour
cela ajouter la ligne suivante dans /etc/apt/sources.list
:
deb ftp://ftp.easynet.be/blackdown/debian testing main non-free
puis après un apt-get update
installer le package j2sdk1.4
Les autres composants cités sont dans la debian : ant
et libbcel-java
Installation
JOnAS est diffusé par son éditeur ObjectWeb sous licence LGPL, moins restrictive que la GPL.
- on récupère le .tgz de jonas+tomcat sur http://jonas.ow2.org/xwiki/bin/view/Main/Downloads (
jonas4.1-tomcat5.0.25.tgz
lors de l’écriture de cette page) ; - on le décompresse sous
/usr/local/
; mettons que le répertoire ainsi créé estJONAS_4_1_2/
; - on crée un lien symbolique sous
/usr/local/
:ln -s JONAS_4_1_2 jonas
; - sous
/usr/local/jonas/
, on lanceant
; - on ajoute dans
/etc/zsh/zshenv
(si l’on utilise zsh) les lignes suivantes :export JONAS_ROOT=“/usr/local/jonas” export PATH=“$JONAS_ROOT/bin/unix:$PATH”
Démarrage
Dans un shell, taper jonas start
, puis avec un browser ouvrir
http://localhost:9000/ ; normalement l’écran d’accueil de JOnAS doit
apparaître.
Connexion MySQL
On suppose ici que MySQL est déjà installé.
Arrêter JOnAS : `jonas stop
Installer le package libmysql-java
, modifier dans
$JONAS_ROOT/bin/unix/config_env
la ligne MYSQL_CLASSES
:
MYSQL_CLASSES=/usr/share/java/mysql.jar
S’il y a une ligne skip-networking
dans /etc/mysql/my.cnf
(par défaut sous
Debian), la mettre en commentaire et redémarrer MySQL ; sinon JOnAS verra
simplement Connection refused.
Dans MySQL, créer un utilisateur jonas@_<hostname>_
, puis faire un create
database db_jonas;
et un grant all on db_jonas.* to jonas@_..._;
Éditer $JONAS_ROOT/conf/MySQL.properties
, vérifier le nom de la base et
ajouter le username (jonas
) et le password (à choisir).
Éditer jonas.properties
et à la ligne jonas.service.dbm.datasources
remplacer HSQL1
par MySQL
Lancer un jonas check
pour vérifier que la syntaxe est bonne. Pour
réellement tester la connexion avec MySQL il faudra exécuter l’exemple eb
sous $JONAS_ROOT/examples/src/eb/
Création d’un groupe
Jusqu’ici on lançait Jonas en root. Comme on veut pouvoir le contrôler depuis Eclipse (section suivante…), qu’il ne serait pas judicieux de lancer en root, il faut donner aux développeurs les droits sur Jonas. On crée donc un groupe :
groupadd jonas
cd $JONAS_ROOT
chown -R .jonas *
chmod -R g+w *
On rajoute ensuite l’utilisateur lambda
dans ce groupe : addgroup lambda
jonas
; il pourra désormais lui aussi jouer à jonas start
. Attention, son
appartenance ne sera reconnue que lorsqu’il se sera relogué. En particulier,
si l’on est dans une session X, il faut la fermer puis rouvrir.
Interfaçage avec Eclipse
Eclipse est l’IDE d’IBM. Il est dans la Debian avec le package eclipse-sdk
(il s’agit à cette heure de la version 2.1 alors que la 3.0 est sortie, mais
de toute façon cette dernière version connaît des problèmes avec le plugin que
l’on veut installer).
Le plugin JOPE permet depuis Eclipse de contrôler Jonas et les déploiements que l’on y fait.
On télécharge ce plugin sur http://forge.ow2.org/projects/jope/ (version 1.1.4 pour Eclipse 2.x ici), on
le dézipe sous /usr/local/share/eclipse/plugins/
(que l’on crée si besoin),
et on lance Eclipse.
On va sous Window > Open Perspective > Java. Dans Window > Customize
Perspective…, sous File>New on coche Jonas EJB et Jonas Project, sous
Other on coche Jonas. Et dans JVM Settings > Classpath on ajoute
/usr/share/java/mysql.jar
Ensuite sous Window > Preferences > Jonas, on choisit la Jonas version
(4.1 dans notre cas) et l’on met /usr/local/jonas/
dans Jonas root et
Jonas server.
Enfin dans Window > Preferences > Ant > Runtime > Classpath on coche Set
ANT_HOME et l’on indique /usr/share/ant
(sans quoi ant ne trouvera pas
bcel.jar
et fera des erreurs du genre dependent class not found:
org/apache/bcel/classfile/Visitor
).
Et après…
Pour la suite, il y a déjà un excellent tutoriel ici… bons beans !