Vous pouvez configurer vos applications et modules Web de façon à utiliser leurs propres chargeurs de classe ou des chargeurs de classe différents ; vous pouvez également programmer le rechargement des classes lorsque les fichiers d'application ont été mis à jour. Les chargeurs de classe activent une application pour accéder aux référentiels
de classes et de ressources disponibles.
Avant de commencer
Cette rubrique suppose que vous avez déjà déployé l'application ou le module sur un serveur.
La remarque suivante s'applique aux références de fichier
xmi dans cette rubrique :
Configurations prises en charge: pour les fichiers de liaison et d'extension IBM® , l'extension de nom de fichier
.xmi ou
.xml est différente selon que vous utilisez une application ou un module antérieur àJava™ EE 5 ou une application ou un module Java EE 5 ou ultérieur. Un fichier d'extension ou de liaison IBM est nommé
ibm-*-ext.xmi ou
ibm-*-bnd.xmi où
* est le type de fichier d'extension ou de liaison tel que
app,
application,
ejb-jarou
web. Les conditions suivantes s'appliquent :
- Pour une application ou un module qui utilise une version Java EE antérieure à la version 5, l'extension de fichier doit être .xmi.
- Pour une application ou un module qui utilise Java EE 5 ou version ultérieure, l'extension de fichier doit être .xml. Si des fichiers .xmi sont inclus avec l'application ou le module,
le produit ignore les fichiers .xmi.
Toutefois, un module Java EE 5 ou version ultérieure peut exister dans une application qui inclut des fichiers antérieurs àJava EE 5 et utilise l'extension de nom de fichier .xmi .
Les fichiers ibm-webservices-ext.xmi,
ibm-webservices-bnd.xmi, ibm-webservicesclient-bnd.xmi,
ibm-webservicesclient-ext.xmi et ibm-portlet-ext.xmi
continuent d'utiliser les extensions de fichier .xmi.
A propos de cette tâche
Les chargeurs de classe déterminent si votre
application et ses modules trouvent les ressources dont ils ont besoin pour s'exécuter efficacement. Vous pouvez décider que vos applications et modules Web utilisent leurs propres chargeurs de classe ou des chargeurs de classe parent.
Un chargeur de classe d'application regroupe des modules EJB (Enterprise JavaBeans ), des bibliothèques partagées, des fichiers RAR (Resource Adapter Archive) et des fichiers JAR (Java Archive) de dépendance associés à une application. Les fichiers JAR de dépendances sont des fichiers JAR qui contiennent du code
pouvant être utilisé à la fois par des beans enterprise et des servlets.
Un chargeur de classe d'application est le parent du chargeur de classe WAR. Par défaut, un module Web dispose de son propre chargeur de classe pour charger
le contenu du module Web. La valeur de la règle d'un chargeur de classe WAR d'un
chargeur de classe d'application indique si le chargeur de classe WAR ou celui
de la classe d'application est utilisé pour charger le contenu du module Web.
Vous pouvez également décider si les classes sont rechargées lorsque les
fichiers de l'application sont mis à jour. Pour les modules EJB ou tous les modules non-Web, le rechargement de la classe
amène l'exécution du serveur d'applications à arrêter et à démarrer
les applications pour qu'elles rechargent des classes d'application. Pour les modules Web tels que les servlets et les fichiers JSP ( JavaServer Pages), un conteneur Web recharge un module Web uniquement lorsque l'extension IBM reloadingEnabled
du fichier ibm-web-ext.xmi est définie sur true
.
Pour configurer l'utilisation des chargeurs de classe par votre application et les modules Web, utilisez la page Chargement de classes et détection des mises à jour de la console d'administration.
Attention: Si une application est en cours d'exécution, la modification d'un paramètre d'application entraîne le redémarrage de l'application. Sur les serveurs autonomes, l'application est redémarrée une fois les modifications sauvegardées. Sur les produits utilisant des serveurs multiples, l'application redémarre une fois les modifications sauvegardées et les fichiers sont synchronisés sur le noeud où l'application est installée. Pour contrôler la survenue de la synchronisation
sur des produits utilisant plusieurs serveurs, désélectionnez Synchroniser les modifications
avec les noeuds sur la page Préférences de la console.
Procédure
- Cliquez sur pour accéder à la page Chargement de classes et détection de mises à jour .
- Indiquez s'il convient ou non de recharger les classes d'application lors de la mise à jour de l'application ou de ses fichiers.
Par défaut, le rechargement de classe n'est pas activé. Choisissez Remplacer les paramètres de rechargement
de classe des modules Web et EJB pour recharger les classes d'application. Vous pouvez spécifier différentes
valeurs pour les modules EJB et Web, tels que des servlets et des fichiers JSP.
- Indiquez le nombre de secondes nécessaires à l'analyse du système de
fichiers de l'application pour la recherche des fichiers mis à jour.
La valeur spécifiée pour Intervalle d'interrogation des fichiers mis à jour ne prend
effet que si le rechargement des classes est activé. La valeur par défaut
correspond à celle de l'attribut de l'intervalle de rechargement dans le
fichier d'extension IBM META-INF/ibm-application-ext.xmi) de
l'application d'entreprise (fichier EAR). Vous pouvez spécifier différentes
valeurs pour les modules EJB et Web, tels que des servlets et des fichiers JSP.
Pour activer le rechargement, spécifiez un entier supérieur à zéro (par
exemple, 1 à 2147483647).
Pour désactiver le rechargement, spécifiez
zéro (0).
- Indiquez l'ordre du chargeur de classe de l'application.
Le chargeur de classes indique si le chargeur de classe
doit d'abord effectuer la recherche dans le chargeur de classe parent ou dans le chargeur de classe de l'application afin de charger une classe. Par
défaut, la recherche s'effectue d'abord dans le chargeur de classe
parent, puis dans le chargeur de classe d'application pour charger
une classe.
Sélectionnez
l'une des valeurs suivantes pour Ordre du chargeur de classes :
Option |
Descriptif |
Classes chargées en premier avec un chargeur de classes parent |
Indique que le chargeur
de classe doit d'abord effectuer la recherche dans le chargeur de classe parent
pour charger une classe. Cette valeur est la norme pour les chargeurs de classe Development Kit et WebSphere® Application Server . |
Classes chargées en premier avec un chargeur de classe local (dernier parent) |
Indique que le chargeur de
classe doit d'abord effectuer la recherche dans le chargeur de classe de
l'application pour charger une classe. En spécifiant Classes loaded with local class loader first (parent last) , votre application peut remplacer les classes contenues dans le chargeur de classe parent.Attention: la spécification de la valeur Classes loaded with local class loader first (parent last) peut générer des messages d'exception LinkageErrors ou ClassCastsi vous avez utilisé à la fois des classes remplacées et des classes non remplacées.
|
- Indiquez si un seul ou plusieurs chargeurs de classe doivent
être utilisés pour charger des fichiers WAR de votre application.
Par
défaut, les modules Web ont leur propre chargeur de classe WAR pour charger le
contenu des répertoires WEB-INF/classes et WEB-INF/lib. La valeur par défaut du chargeur de classe WAR est Class loader for each WAR file in application
, qui utilise un chargeur de classe distinct pour charger chaque fichier WAR. Si vous définissez la valeur sur Single class loader for
application
, le chargeur de classe de l'application charge le contenu du module Web ainsi que les modules EJB, les bibliothèques partagées, les fichiers RAR et les fichiers JAR de dépendances associés à l'application. Le chargeur de classe d'application est le parent
du chargeur de classe WAR.
Sélectionnez l'une des valeurs
suivantes pour la règle du chargeur de classe WAR :
Option |
Descriptif |
Chargeur de classes pour chaque fichier WAR de l'application |
Utilise un chargeur de classe
différent pour chaque fichier WAR. |
Chargeur de classes unique pour l'application |
Utilise un chargeur de classe
unique pour charger tous les fichiers WAR dans votre application. |
- Cliquez sur OK.
Résultats
La configuration de l'application ou du module est modifiée. L'application ou le module Web autonome
est redémarré afin que les modifications prennent effet.
Etape suivante
Si l'application ou le module
sont déployés dans un cluster et que vous avez terminé les modifications de
configuration, cliquez sur Déployer la mise à jour dans la
page Applications d'entreprise pour propager la configuration modifiée sur tous les
membres du cluster dans lesquels l'application ou le module sont déployés. L'option Déployer la
mise à jour met à jour de façon séquentielle la configuration sur tous les
noeuds contenant des membres du cluster.
Sauvegardez les modifications de la configuration d'administration.
Dans le cas de produits utilisant plusieurs serveurs, les fichiers binaires
de l'application sont transférés sur les noeuds lorsque les modifications de
configuration apportées au gestionnaire de déploiement sont synchronisées avec
les configurations des différents noeuds sur lesquels l'application s'exécute.