Installation avec IzPack

Cet outil permet de créer le programme d'installation et de livrer les différentes versions téléchargeables disponibles sur Sourcesup.

Préparer l'installation

Changer le numéro de version dans le pom.xml

Changer le numéro de version dans /resources/misc/application.xml

Changer les valeurs des variables :

<your.standalone-compiler.version>4.3.2</your.standalone-compiler.version>

<zip.location>${basedir}/src/main/util/utils/7zip/7za.exe</zip.location>

<izpack.application.name>ChaineditXXX</izpack.application.name>

- your.standalone-compiler.version permet de spécifier la version du plugin izpack

- zip.location permet de préciser le chemin d'accès à l'outil 7zip. Le chemin est à changé en fonction de votre installation ( chemin et système Linux ou Windows).

- izpack.application.name permet de préciser le nom qui sera utiliser par izpack pour l'appel au service Tomcat sous Windows. Le nom ne doit pas contenir de caractères spéciaux ni point “.”, ni tiret “-”. Remplacer XXX par le numéro de version sans les points.

Lancer : mvn install

Pour plus de détails voir la documentation esup-commons.

Debug de l'installation

Ouvrir une ligne de commande : Exécuter → cmd

Aller dans le répertoire du jar d'install

Exécuter l'install sous la forme : java -jar -DTRACE=TRUE chainedit2-2.0-quickstart.jar

Les modifications

Dans le apache

Dézipper le apache-tomcat-x.x.x.zip Modifier les fichiers comme indiqué ci-dessous en ajoutant les lignes précisées au début de chaque fichier. Attention à la sauvegarde des .sh à faire sous Linux. Rezipper le apache-tomcat-x.x.x.zip et le mettre dans src/main/util/utils/tomcat

La procédure de construction de l'exe d'install est répartie entre le pom et le fichier install.xml de /src/main/installer/config/jar/ Dans le répertoire bin du Tomcat zippé

Le service.bat

A début : set CATALINA_HOME=$INSTALL_PATH\apache-tomcat-6.0.29\

A la fin remplacer :“%EXECUTABLE%” US%SERVICE_NAME% ++JvmOptions “-Djava.io.tmpdir=%CATALINA_BASE%\temp;-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager;-Djava.util.logging.config.file=%CATALINA_BASE%\conf\logging.properties;-Dapplication.config.location=$INSTALL_PATH\data\config.properties;-Dapplication.security.location=$INSTALL_PATH\data\security” –JvmMs 256 –JvmMx 512

Le catalina.bat

set CATALINA_OPTS = “-Dapplication.config.location=$INSTALL_PATH\data\config.properties -Dapplication.security.location=$INSTALL_PATH\data\security”

Le catalina.sh

export CATALINA_OPTS = “-Dapplication.config.location=$INSTALL_PATH/data/config.properties -Dapplication.security.location=$INSTALL_PATH/data/security”

Explication

Au lancement Chainedit regarde si application.config.location existe. Si oui, il prend ce fichier de config. Sinon il prend celui qui est dans properties. Cette information est définie dans le applicationContext.xml :

<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property
name = "locations">
<list>
<value>classpath:/properties/config.properties</value>
<value>file:${application.config.location}</value>
</list>
</property>
<property name = "ignoreResourceNotFound" value="true" />
</bean>

De plus, le paramètre application.security.location permet de pointer vers les fichiers de sécurité dans /data. Lors de la procédure de création du fichier d'install, le fichier web.xml est remplacé par le fichier web-war.xml qui contient ce paramètre. Il doit pointer sur le répertoire.