Accueil > Téléchargement et installation


Installation des composantes de base

Dernière modification : 2001/11/02 10:20:16     Contact : Martin Sévigny

L'architecture SDX est bâtie à partir de plusieurs composantes de base. L'objectif de ce document n'est pas de donner les détails de l'installation de ces composantes, mais plutôt de les lister et de préciser les aspects spécifiques requis par SDX. Pour en savoir plus sur l'installation de ces composantes, voir leur documentation respective.

Serveur Web Apache

Apache est le serveur Web le plus utilisé. Il fonctionne sur plusieurs plates-formes, y compris Linux et Windows NT avec lequel SDX a été testé. On peut en savoir plus sur Apache et sur son installation à partir d'ici. SDX devrait fonctionner correctement sur toute version d'Apache depuis 1.3.

Il n'y a rien de particulier concernant SDX et l'installation d'Apache. La configuration nécessaire sera faite lors de l'installation du moteur de servlets.

Moteur de servlets Tomcat

Tomcat est un moteur de servlets initalement développé par Sun puis donné au projet Apache. Au sein de ce projet, il remplace donc le moteur Apache JServ. On peut en savoir plus sur Tomcat et le télécharger ici.

Tomcat est l'implantation de référence de la spécification des servlets. Il implante la version 2.2 de la spécification. SDX a été testé avec les versions 3.2.x de Tomcat.

La documentation de Tomcat indique toute la procédure à suivre pour installer Tomcat de concert avec Apache, ou encore en mode standalone. Il est fortement recommendé de suivre ces instructions pas à pas. Les documents à lire prioritairement sont :

Ce dernier document est particulièrement important, car il vous permettra de bien faire fonctionner Tomcat avec Apache, et d'identifier les composantes (par exemple mod_jk) nécessaires.

Il est à noter que pour obtenir une bonne communication entre Apache et Tomcat, l'utilisation de la configuration automatique produite par Tomcat dans le fichier mod_jk.conf-auto n'est pas suffisante. On doit conserver une copie statique de ce fichier, et y mettre des lignes semblables aux suivantes :

#########################################################
# Auto configuration for the /sdx context starts.
#########################################################

#
# The following line makes apache aware of the location of the /sdx context
#
Alias /sdx "/usr/local/jakarta/jakarta-tomcat/webapps/sdx"
<Directory "/usr/local/jakarta/jakarta-tomcat/webapps/sdx">
    Options Indexes FollowSymLinks
</Directory>

#
# The following line mounts all JSP files and the /servlet/ uri to tomcat
#
JkMount /sdx/*.xsp ajp12
JkMount /sdx/servlets/* ajp12

#
# The following line prohibits users from directly accessing WEB-INF
#
<Location "/sdx/WEB-INF/">
    AllowOverride None
    deny from all
</Location>

#
# The following line prohibits users from directly accessing META-INF
#
<Location "/sdx/META-INF/">
    AllowOverride None
    deny from all
</Location>

#######################################################
# Auto configuration for the /sdx context ends.
#######################################################

Bien entendu, vous devez ajuster les chemins d'accès spécifiés à votre installation.

Dans cet exemple, nous avons utilisé le protocole AJP12 pour la communication entre Apache et Tomcat. Ce protocole est moins efficace que le protocole AJP13, mais ce dernier présente un bogue qui rend impossible (dans certains cas) l'envoi de fichiers par le mécanisme des file upload, ce qui peut être utile dans une application SDX. Libre à vous de choisir le protocole idéal pour vos applications.

Démarrage de Tomcat

Si les installations précédentes se sont bien déroulées, Tomcat devrait pouvoir démarrer. Une bonne façon de le vérifier est de tester les exemples fournis avec le logiciel. Il est très important de tester à la fois les servlets et les pages JSP. En effet, ces dernières vont permettre de vérifier si le compilateur Java est bien présent dans votre environnement, ce qui est requis pour SDX.

Tomcat est normalement démarré à l'aide des scripts fournis dans son répertoire bin, à la fois pour Windows et pour UNIX/Linux. Il est à noter que les fichiers .jar que l'on retrouve dans le répertoire sdx/WEB-INF/lib doivent être inclus manuellement dans le CLASSPATH Java, à configurer dans le script de démarrage de Tomcat.

Pour ce faire, vous devez inclure des lignes comme celles-ci sous Windows :

set CLASSPATH=%CLASSPATH%;%SDX_LIBS%\aa1_sdx.jar
set CLASSPATH=%CLASSPATH%;%SDX_LIBS%\aa2_xerces.jar
set CLASSPATH=%CLASSPATH%;%SDX_LIBS%\aa3_saxon.jar
...

et comme celles-ci sous UNIX/Linux :

CLASSPATH=${CLASSPATH}:${TOMCAT_HOME}/webapps/sdx/WEB-INF/lib/aa1_sdx.jar
CLASSPATH=${CLASSPATH}:${TOMCAT_HOME}/webapps/sdx/WEB-INF/lib/aa2_xerces.jar
CLASSPATH=${CLASSPATH}:${TOMCAT_HOME}/webapps/sdx/WEB-INF/lib/aa3_saxon.jar
...

Sous UNIX/Linux, vous pouvez également faire une boucle comme celle-ci :

for i in ${TOMCAT_HOME}/webapps/sdx/WEB-INF/lib/* ; do
  CLASSPATH=${CLASSPATH}:$i
done

Attention ! L'ordre des fichiers .jar a une certaine importance, malheureusement (ceci est dû à la multitude de librairies XML variées que l'on rencontre dans tous ces fichiers). Vous devez absolument respecter ces quelques règles :

  1. Les fichiers .jar situés dans le répertoire ${TOMCAT_HOME}/webapps/sdx/WEB-INF/lib doivent être inclus avant ceux situés dans le répertoire ${TOMCAT_HOME}/lib.

  2. Dans le répertoire ${TOMCAT_HOME}/webapps/sdx/WEB-INF/lib, vous devez d'abord inclure, dans cet ordre, les fichiers aa1_sdx.jar, aa2_xerces.jar et aa3_saxon.jar. Par la suite, l'ordre importe peu.

SGBD

SDX utilise un système de gestion de bases de données relationnelles pour stocker les documents XML et leurs documents associés. La version actuelle de SDX peut être utilisée avec quatre SGBD différents, dont deux logiciels libres et un autre gratuit :

SDX est développé prioritairement avec MySQL, mais il est systématiquement testé avec tous les SGBD supportés. Si vous voulez utiliser un autre SGBD, contactez-nous.

L'installation du SGBD n'est pas documentée ici ; vous êtes priés de vous adresser au fournisseur du produit ou à sa documentation. Par ailleurs, la distribution SDX contient les pilotes nécessaires pour MySQL, InstantDB et Interbase, mais pas pour Oracle.


OR CORRECTION.