# ZOS: Lanceur JVM personnalisé JZOS {{INLINETOC}} ## Installation de JZOS 1) Télécharger le fichier .zip de distribution à l'adresse http://www.alphaworks.ibm.com/tech/zosjavabatchtk/download. télécharger le fichier jzos124.zip à partir du répertoire /u/prak021/jbatch/setup de l'hôte via FTP. 2) Extraire le contenu .zip dans un répertoire local (par exemple, c: \ jzos). 3) Transférer les fichiers extraits vers le système z/OS. Les fichiers suivants doivent être téléchargés en binaire : * jzos.pax 'YOURUSERID.jzos.pax' * jzos.loadlib.xmit 'YOURUSERID.jzos.loadlib.xmit' * jzos.sampjcl.xmit 'YOURUSERID.jzos.sampjcl.xmit' 4) Si on effectue un téléchargement via FTP, utiliser les commandes suivantes: ``` ftp> bin ftp> quote site recfm=fb ftp> quote site lrecl=80 ftp> put jzos.sampjcl.xmit ‘YOURUSERID.JZOS.SAMPJCL.XMIT' ftp> quote site cyl ftp> quote site pri=2 ftp> put jzos.loadlib.xmit 'YOURUSERID.JZOS.LOADLIB.XMIT' ftp> put jzos.pax 'YOURUSERID.JZOS.PAX' ftp> quit ``` 5) Se connecter à TSO. 6) Entrer la commande TSO suivante pour décharger la bibliothèque de modules de chargement dans un fichier PDSE: ``` tso receive inda('YOURUSERID.JZOS.LOADLIB.XMIT') ``` 7) Au message "Entrez les paramètres de restauration ...", entrer: ``` da('YOURUSERID.JZOS.LOADLIB') ``` Si on un message d'erreur "Impossible d'envoyer un message avec une invite de réponse",est retournée activer l'option en tapant la commande: \\ \\ `tso profile prompt` Si le fichier XMIT est déchargé dans `YOURUSERID.PRIVATE.JZOS124.LOADLIB`, supprimer le et essayer de nouveau le transfert avec:\\ \\ `tso receive inda('YOURUSERID.JZOS.LOADLIB.XMIT')`\\ \\Au message "Entrez les paramètres de restauration ...", entrer:\\ \\ `da(JZOS.LOADLIB)` 8) Répéter l'opération pour décharger l'exemple de PDS JCL: ``` tso receive inda('YOURUSERID.JZOS.SAMPJCL.XMIT') ``` Au message "Entrez les paramètres de restauration ...", entrer: ``` da('YOURUSERID.JZOS.SAMPJCL') ``` 9) À partir du shell z/OS Unix, accéder au répertoire où on veut créer les fichiers JZOS HFS (/u/YOURUSERID) et décharger le jeu de données pax: (Ceci créera un répertoire nommé "jzos" par rapport au répertoire actuel, qui sera appelé plus tard **JZOS\_HOME**) ``` pax -rvf “//'YOURUSERID.JZOS.PAX'” ``` 10) Si pax a réussi, supprimer les fichiers suivants: * YOURUSERID.JZOS.SAMPJCL.XMIT * YOURUSERID.JZOS.LOADLIB.XMI ## Installation de Tomcat Le conteneur de servlets Apache Tomcat peut être installé rapidement et facilement à l'aide de la boîte à outils JZOS. 1) Créer un nouveau répertoire /u/prak021/jbatch/users/YOURUSERID ``` mkdir /u/prak021/jbatch/users/YOURUSERID ``` 2) Télécharger la version .zip de la distribution binaire de Tomcat et la charger (en mode binaire) vers/u/prak021/jbatch/users. Apache Jakarta page de téléchargement: http://jakarta.apache.org/site/binindex.cgi binary Distribution .zip: http://tomcat.apache.org/download-55.cgi On peut également trouver les fichiers d'installation au format binaire zip dans le répertoire/u/prak021/jbatch/setup et les copier directement dans le répertoire personnel /u/YOURUSERID!\\ \\ `cp /u/prak021/jbatch/setup/apache-tomcat-5.5.15.zip /u/prak021/jbatch/users/YOURUSERID` 3) Depuis le shell z/OS Unix, accéder au répertoire personnel et y extraire le fichier zip Tomcat. cela créera un répertoire "apache-tomcat-5.5.15" sous le répertoire actuel! ``` cd /u/prak021/jbatch/users/YOURUSERID jar -xvf apache-tomcat-5.5.15.zip ``` 4) Supprimer le fichier zip: ``` rm apache-tomcat-5.5.15.zip ``` 5) Pour plus de commodité, créer un lien symbolique vers la distribution Tomcat: ``` ln -s apache-tomcat-5.5.15 tomcat ``` 6) Modifier les ports dans server.xml: * Télécharger `/u/prak021/jbatch/users/YOURUSERID/apache-tomcat-5.5.15/conf/server.xml` via FTP en mode binaire * Éditer `server.xml` et modifier tous les ports, par exemple changez 8080 en 80xx * Télécharger le fichier server.xml modifié dans `/u/prak021/jbatch/users/YOURUSERID//apache-tomcat-5.5.15/conf/server.xml` via FTP en mode binaire. 7) Créer un nouveau membre TOMCAT dans `YOURUSERID.SAMPLES.JCL` et y insérer le contenu JCL suivant: ``` //TOMCAT JOB //PROCLIB JCLLIB ORDER=YOURUSERID.JZOS.SAMPJCL //... //JAVA EXEC PROC=EXJZOSVM,VERSION='50', // JAVACLS='org.apache.catalina.startup.Bootstrap', // ARGS='start' //STDENV DD * # Ceci est un script shell qui # configure toutes les variables d'environnement pour la machine virtuelle Java. # Les variables doivent être exportées pour être vues par le lanceur. . /etc/profile export JZOS_HOME=/u/YOURUSERID/jzos export TOMCAT_HOME=/u/prak021/jbatch/users/YOURUSERID/apache-tomcat-5.5.15 export JAVA_HOME=/u/prak021/jbatch/local/java/J5.0 export PATH=/bin:"${JAVA_HOME}"/bin: LIBPATH=/lib:/usr/lib:"${JAVA_HOME}"/bin:"$JAVA_HOME"/bin/classic LIBPATH="$LIBPATH":"${JZOS_HOME}" export LIBPATH="$LIBPATH": CLASSPATH="${JAVA_HOME}/lib/tools.jar" CLASSPATH="$CLASSPATH":"${TOMCAT_HOME}/bin/bootstrap.jar" CLASSPATH="$CLASSPATH":"${JZOS_HOME}/jzos.jar" CLASSPATH="$CLASSPATH":"${TOMCAT_HOME}/bin/commons-logging-api.jar" export CLASSPATH="$CLASSPATH": # Configuration des options spécifiques à JZOS # Utiliser cette variable pour spécifier le codage pour DD STDOUT et STDERR #export JZOS_OUTPUT_ENCODING=Cp1047 # Utiliser cette variable pour empêcher JZOS de traiter les commandes de l'opérateur MVS #export JZOS_ENABLE_MVS_COMMANDS=false # Utiliser cette variable pour fournir des arguments supplémentaires à la commande principale #export JZOS_MAIN_ARGS="" # Configuration des Options JVM # Tomcat nécessite le fichier ASCII par défaut. IJO="-Xms64m -Xmx128m" IJO="$IJO -Dfile.encoding=ISO8859-1" IJO="$IJO -Djzos.home=${JZOS_HOME}" IJO="$IJO -Dcatalina.base=${TOMCAT_HOME}" IJO="$IJO -Dcatalina.home=${TOMCAT_HOME}" IJO="$IJO -Djava.io.tmpdir=${TOMCAT_HOME}/temp" IJO="$IJO -Djava.endorsed.dirs=${TOMCAT_HOME}/common/endorsed" # Décommenter ce qui suit si vous souhaitez exécuter sans JIT #IJO="$IJO -Djava.compiler=NONE" export IBM_JAVA_OPTIONS="$IJO " export JAVA_DUMP_HEAP=false export JAVA_PROPAGATE=NO export IBM_JAVA_ZOS_TDUMP=NO // ``` 8) Soumettre le JCL 9) Vérifier les résultats avec SDSF: STDOUT DD devrait contenir quelque chose comme ceci (mais variera en fonction de la version de JDK): ``` [INFO] Http11Protocol - Initializing Coyote HTTP/1.1 on http-8080 [INFO] Catalina - Initialization processed in 129605 ms [INFO] StandardService - Starting service Catalina [INFO] StandardEngine - Starting Servlet Engine: Apache Tomcat/ [INFO] StandardHost - XML validation disabled [INFO] StandardHost - Create Host deployer for direct deployment ( non-jmx ) [INFO] StandardHostDeployer - Processing Context configuration file URL ... [INFO] Catalina - Server startup in 454422 ms ``` 10) Tester Tomcat: Aller à `http://:80xx/` Cela devrait afficher la page d'administration de Tomcat: 11) Purger le travail TOMCAT ### Installer des applications JZOS 1) Pour déployer des applications, on doit tout d'abord installer la page d’administration Tomcat: décompresser le fichier /u/prak021/jbatch/setup/apache-tomcat-5.5.15-admin.zip sur la page d’accueil Tomcat: ``` cd/u/prak021/jbatch/users/YOURUSERID jar –xvf/u/prak021/jbatch/setup/apache-tomcat-5.5.15-admin.zip ``` 2) Télécharger `/u/prak021/jbatch/users/YOURUSERID/apache-tomcat-5.5.15/conf/tomcat-users.xml` en binaire mode via FTP. 3) Ajouter les lignes suivantes dans le fichier xml: ``` ... ``` 4) Enregistrer le fichier `tomcat-users.xml` et le transférer à nouveau sur l'hôte en mode binaire vers `/u/prak021/jbatch/users/YOURUSERID/apache-tomcat-5.5.15/conf` 5) Redémarrer Tomcat en soumettant le JCL TOMCAT à nouveau. 6) Installer et tester des exemples de servlet JZOS: * Télécharger le fichier `jzos.war` de `/u/prak021/jbatch/setup` * Le déployer avec le gestionnaire Tomcat sur la page admin (s'identifier avec le nom d'utilisateur «admin» et le mot de passe «manager». ). 7) Une fois le fichier .war déployé, accéder au site Web suivant: `http://