Incidents de déploiement d'application

Vous pouvez rencontrer des incidents lors du déploiement, de l'installation ou de la promotion d'applications. La présente rubrique fournit des méthodes permettant de résoudre les incidents.

Type d'incident

Vérifiez les éléments suivants :
  • Vérifiez que le nom logique qui s'affiche sur la console pour votre application, votre module bean enterprise ou autre ressource ne contient aucun caractère incorrect tel que : - / \ : * ? " < > |.
  • Si l'application a été installée à l'aide de la commande wsadmin $AdminApp install avec l'indicateur -local, redémarrez le serveur ou exécutez de nouveau la commande sans l'indicateur -local.

Si vous ne trouvez pas d'incident similaire au vôtre ou que les informations fournies ne permettent pas de résoudre votre problème, vérifiez si le problème est identifié et documenté.

Reportez-vous au support technique disponible en ligne : il contient des conseils, des notes techniques et des correctifs. Si l'incident n'a pas été identifié, voir Identification des incidents dans l'aide d'IBM.

L'application ne s'affiche pas

L'application a été installée à l'aide de l'outil wsadmin, mais elle ne s'affiche pas sous Applications > Types d'application > Applications WebSphere Enterprise.

L'application est peut-être installée mais, vous n'en avez pas sauvegardé la configuration :
  1. Vérifiez que le sous-répertoire de l'application se trouve bien sous le répertoire racine_serveur_app/installedApps.
  2. Exécutez la commande $AdminApp list et vérifiez que l'application ne figure pas parmi celles qui s'affichent.
    • Dans le répertoire bin, exécutez la commande wsadmin.bat ou wsadmin.sh.
    • A partir de l'invite wsadmin, entrez $AdminApp list et vérifiez que l'application qui pose problème n'est pas parmi celles qui s'affichent.
  3. Réinstallez votre application à l'aide de l'outil wsadmin. Avant de quitter l'outil, exécutez la commande $AdminConfig save dans l'outil wsadmin.

Impossible d'enregistrer une application déployée

Si vous ne pouvez pas enregistrer une application déployée, l'incident vient peut-être du fait que trop de fichiers sont ouverts, et que la limite du système d'exploitation a été dépassée.

[Linux]Sous SuSE9 ou une autre plateforme Linux, vous pouvez augmenter le nombre de fichiers pouvant être ouverts pour résoudre l'incident ou modifier l'application afin qu'elle ferme les fichiers contenant des disciplines. Pour accroître le nombre de fichiers que vous pouvez ouvrir simultanément, exécutez la commande suivante dans l'interpréteur de commandes avant d'appeler le processus qui doit ouvrir un certain nombre de fichiers :
ulimit -n nombre_de_fichiers

Seul l'utilisateur root a le droit d'ajuster le nombre maximum de fichiers pour chaque processus. Complétez les étapes suivantes pour modifier l'application de sorte qu'elle ferme les fichiers avec discipline :

  1. Après avoir ouvert un fichier et terminé votre travail, appelez la méthode de fermeture du fichier pour renvoyer le descripteur de fichier au système d'exploitation.
  2. En utilisant les classes java.io.FileInputStream et FileOutputStream comme exemples, vous pouvez appeler leur méthode de fermeture pour libérer toutes les ressources système associées au flux.
[Windows]

Erreur java.lang.RuntimeException : Erreur Failed_saving_bytes_to_wor_ERROR_ dans l'outil d'assemblage, la console d'administration ou l'outil wsadmin

Si ce message d'erreur s'affiche quand vous tentez de générer du code déployé dans un outil d'assemblage, lorsque vous installez une application ou un module dans la console d'administration ou lors de l'utilisation de l'outil wsadmin pour l'installation d'une application ou d'un module, le chemin d'accès au fichier temporaire du système peut être trop long.

Pour vérifier qu'il s'agit bien de l'incident, consultez les variables d'environnement TEMP et TMP de votre système. Les variables d'environnement longues rallongent d'autant le chemin d'accès aux noms de fichiers auxquels accède l'outil de déploiement EJB.

Pour résoudre cet incident, procédez comme suit :
  1. Arrêtez tous les processus WebSphere Application Server et fermez toutes les invites DOS.
  2. Affectez aux variables d'environnement TEMP et TMP une valeur plus courte, par exemple C:\TMP et C:\TEMP.
  3. Réinstallez l'application.
Sinon, tentez de réinitialiser et de redéployer ou réinstaller l'application.

Erreur WASX7015E lors de l'exécution de la commande wsadmin $AdminApp installInteractive ou $AdminApp install

Deux causes possibles :

  • Si le texte du message d'erreur est similaire à :
    [AIX][HP-UX][Linux][Solaris][Windows][IBM i]
    WASX7015E: Exception lors de l'exécution de la commande : 
    "$AdminApp installInteractive C:/Documents and Settings/
      myUserName/Desktop/MyApp/myapp.ear";
    informations sur l'exception :  
    com.ibm.bsf.BSFException: erreur lors de 
    l'évaluation de l'expression Jacl : méthode
    "installInteractive" introuvable 
    avec 3 argument(s) pour la classe 
    "com.ibm.ws.scripting.AdminAppClient" 
    [z/OS]
    WASX7015E: Exception lors de l'exécution de la commande : 
    "$AdminApp installInteractive Documents and Settings/
      myUserName/Desktop/MyApp/myapp.ear"; informations sur l'exception :  
    com.ibm.bsf.BSFException: erreur lors de 
    l'évaluation de l'expression Jacl : méthode
    "installInteractive" introuvable 
    avec 3 argument(s) pour la classe 
    "com.ibm.ws.scripting.AdminAppClient" 
    Le fichier et le nom de chemin d'accès sont incorrects. Dans ce cas, le programme wsadmin a interprété le chemin d'accès comme plusieurs paramètres successifs car il contient des espaces.

    Entrez correctement le chemin d'accès au fichier .ear. Dans ce cas, en le plaçant entre guillemets :

    [AIX Solaris HP-UX Linux Windows][IBM i]
    $AdminApp installInteractive "C:\Documents 
    and Settings\myUserName\Desktop\MyApps\myapp.ear"
    [z/OS]
    $AdminApp installInteractive 
    "Documents and Settings/myUserName/Desktop/MyApps/myapp.ear"
  • Si le texte du message d'erreur est similaire à :
    [AIX Solaris HP-UX Linux Windows][IBM i]
    WASX7015E: Exception lors de l'exécution de la commande : "$AdminApp installInteractive c:\MyApps\myapp.ear "; 
    informations sur l'exception : com.ibm.ws.scripting.ScriptingException:  WASX7115E: 
    Impossible de lire le fichier d'entrée 
    "c:\WebSphere\AppServer\bin\MyAppsmyapp.ear"
    [z/OS]
    WASX7015E: Exception lors de l'exécution de la commande : "$AdminApp installInteractive 
    MyApps\myapp.ear "; 
    informations sur l'exception : com.ibm.ws.scripting.ScriptingException:  WASX7115E: 
    Impossible de lire le fichier d'entrée 
    "WebSphere\AppServer\bin\MyAppsmyapp.ear"
    Le chemin d'accès à l'application est incorrect. Dans ce cas, vous devez utiliser des séparateurs "barre oblique" (/) dans le chemin.

Installation impossible d'un bean entity CMP ou BMP dans un module EJB 3.0

Lorsqu'un module EJB 3.0 contenant une entité CMO (persistance gérée par conteneur) ou BMP (persistance gérée par bean) est installé, l'installation échoue.

Le produit ne prend pas en charge l'installation d'applications comportant un bean entity CMP ou BMP regroupé dans un module EJB 3.0. Vous devez regrouper les beans entity CMP ou BMP dans un EJB 2.1 ou antérieur.

Pour résoudre l'incident, procédez comme suit :
  1. Vous devez regrouper les beans entity CMP ou BMP dans des modules EJB 2.1 ou antérieurs.
  2. Essayez d'installer vos applications avec les modules EJB 2.1 ou antérieurs.

Un langage DDL (data definition language) généré par un outil d'assemblage émet une erreur SQL sur une plateforme cible

Si vous recevez des erreurs SQL lors de la tentative d'exécution des instructions de langage DDL (data definition language) générées par un outil d'assemblage sur une autre plateforme. Par exemple, si vous déployez un bean enterprise CMP (container-managed persistence) conçu sous Windows sur un serveur UNIX, essayez ce qui suit :
  • Vérifiez si les instructions DDL contiennent des dépendances par rapport à des identificateurs utilisateurs et des mots de passe spécifiques et rectifiez au besoin.
  • Vérifiez si les instructions DDL contiennent des dépendances par rapport à des noms de serveurs spécifiques et rectifiez au besoin.
  • Reportez-vous à la référence des messages du fournisseur pour les causes et les actions préconisées selon les erreurs SQL signalées. Pour IBM DB2, vous pouvez consulter les références des messages en ligne.
Si vous recevez l'erreur suivante après l'exécution d'un fichier DDL créé sous Windows, AIX ou Linux, l'incident peut provenir d'une différence dans les formats de fichier :
SQL0104N  Une marque (token) imprévue "CREATE
TABLE AGENT (COMM DOUBLE,  PERCENT  DOUBLE,  P" 
a été trouvée après "        ".  Les marques prévues sont notamment :  " ".  
SQLSTATE=42601
Pour résoudre ce problème :
  • [AIX][HP-UX][Solaris][Windows][z/OS]Modifiez le DDL dans l'éditeur vi en supprimant le caractère Ctl-M au début de chaque ligne.
  • [Linux]Régénérez le déploiement du fichier EAR de l'application sur une plateforme Linux.
  • [IBM i]Utilisez EDTF pour modifier le fichier.

ADMA0004E : Echec de la validation

Si le message d'erreur suivant s'affiche lorsque vous tentez d'installer une application via la console d'administration ou l'invite wsadmin :
AppDeploymentException : [ADMA0014E : Echec de la validation. 
ADMA0004E : Erreur de validation dans la tâche Spécification de la source de données par défaut 
des modules EJB Nom JNDI 
non spécifié pour le module Jar beannameBean dont l'URI est nomfichier.jar,META-INF/ejb-jar.xml. 
Vous n'avez pas indiqué 
la source de données de chacun des beans CMP de ce module. Indiquez-la 
pour chaque bean CMP ou 
indiquez la source de données par défaut pour l'intégralité du module.] 
L'une des causes possibles de cette erreur réside dans le fait que dans WebSphere Application Server 4.0, vous n'êtes pas obligé de définir la source de données de chaque bean CMP dans chaque JAR. Dans la version 5.0 et les versions ultérieures, vous pouvez désigner une source de données pour un bean CMP (Container-Managed Persistence) ou une source par défaut pour tous les beans CMP du fichier JAR. Ainsi, lors du dialogue d'installation, avec l'assistant d'installation de la console d'administration par exemple, les zones concernant la source sont facultatives mais la validation effectuée en fin d'installation vérifie si l'une des sources de données au moins a été retenue.

Pour résoudre cet incident, revoyez la procédure d'installation et indiquez une source de données par défaut ou une source de données pour chaque bean enterprise de type CMP.

Si vous utilisez l'outil wsadmin, exécutez la commande $AdminApp installInteractive nomfichier pour être invité à entrer des sources de données lors de l'installation ou fournissez-les dans un fichier de réponse.

[AIX Solaris HP-UX Linux Windows][IBM i]Mettez les sources de données en option dans la commande $AdminApp install.

Pour plus de détails sur la syntaxe, voir Installation d'applications d'entreprise à l'aide de l'outil de scriptage wsadmin.

Impossible de charger la ressource WEB-INF/ibm-web-bnd.xmi dans le fichier archive

L'application web tmp.war s'installe sur WebSphere Application Server versions 5.0 et 5.1, mais pas sur un serveur WebSphere Application Server version 6.0 ou ultérieure. L'installation de l'application échoue car le fichier WEB-INF/ibm-web-bnd.xmi contient des balises xmi que le modèle WCCM sous-jacent ne reconnaît plus.

Les messages d'erreur suivants s'affichent :

IWAE0007E Impossible de charger la ressource "WEB-INF/ibm-web-bnd.xmi" dans l'archive "tmp.war"
[2/24/05 14:53:10:297 CST] 000000bc SystemErr     R
AppDeploymentException:
com.ibm.etools.j2ee.commonarchivecore.exception.ResourceLoadException:
IWAE0007E Impossible de charger la ressource "WEB-INF/ibm-web-bnd.xmi" dans l'archive "tmp.war"
[2/24/05 14:53:10:297 CST] 000000bc SystemErr     R
com.ibm.etools.j2ee.commonarchivecore.exception.ResourceLoadException:
IWAE0007E Impossible de charger la ressource "WEB-INF/ibm-web-bnd.xmi" dans l'archive "tmp.war"
!Stack_trace_of_nested_exce!
com.ibm.etools.j2ee.exception.WrappedRuntimeException: Une exception s'est produite lors du chargement de
WEB-INF/ibm-web-bnd.xmi
!Stack_trace_of_nested_exce!

Pour éviter cet incident, supprimez la balise xmi:type=EJBLocalRef du fichier ibm-web-bnd.xmi. La suppression de cette balise n'affecte pas l'application car elle était utilisée pour faire correspondre le type de référence de document croisé. Désormais, l'application fonctionne avec WebSphere Application Server version 5.1 et ultérieures.

Configurations prises en charge 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 utilisiez un module ou une application antérieure à Java EE 5 ou un module ou une application ultérieure à Java EE 5. Un fichier de liaison ou d'extension IBM porte le nom ibm-*-ext.xmi ou ibm-*-bnd.xmi où * correspond au fichier d'extension ou de liaison, tel app, application, ejb-jar ou 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 dans l'application ou le module, le produit les ignore.

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.

sptcfg

Aucune cible valide indiquée dans ObjectName objet pour le module nom_module à partir de l'installation

Cette erreur se produit généralement dans un environnement de groupes lorsque la cellule, le serveur ou le groupe cible dans lequel l'application doit être installée n'est pas correctement indiqué. Par exemple, lorsque le nom de la cible est mal orthographié.

Pour résoudre cet incident, comparez les noms des cibles avec la topologie WebSphere Application Server et entrez-les de nouveau avec les corrections requises.

L'option addNode -includeapps ne s'affiche pas pour le téléchargement de toutes les applications sur le gestionnaire de déploiement

Cette erreur peut se produire lorsque certaines ou toutes les applications du noeud cible ont déjà été téléchargées sur le gestionnaire de déploiement. Le programme addNode détecte les applications déjà installées et ne les télécharge pas de nouveau.

Utilisez la console d'administration pour parcourir la configuration du gestionnaire de déploiement et vérifier quelles sont les applications déjà installées.

L'erreur "Dépassement du délai d'attente" s'affiche en cas de tentative d'installation d'une application enterprise sur la console d'administration

Cette erreur peut se produire lorsque vous tentez d'installer une application enterprise qui n'a pas été déployée.

Pour résoudre le problème, procédez comme suit :
  • Ouvrez le fichier nom_fichier.ear dans un outil d'assemblage, puis cliquez sur Déployer. Un fichier avec un nom du type Deployed_nom_fichier.ear est créé.
  • Dans la console d'administration, installez le fichier EAR déployé.

Un message NameNotFoundException s'affiche lors du déploiement d'une application qui contient un module d'EJB

Si vous spécifiez que l'outil de déploiement EJB doit s'exécuter lors de l'installation de l'application et que l'installation échoue avec un message d'erreur NameNotFoundException, vérifiez que le fichier d'entrée JAR ou EAR ne contient pas de fichiers source. Si le fichier d'entrée JAR ou EAR contient des fichiers source, les outils de déploiement EJB exécutent une reconstruction avant de générer le code de déploiement.

Pour éviter cet incident, supprimez les fichiers source ou incluez toutes les classes dépendantes et les fichiers de ressources du chemin d'accès aux classes. Sinon, les fichiers source ou la perte de l'accès aux classes dépendantes et aux fichiers de ressources peuvent provoquer des incidents lors de la nouvelle compilation de l'application sur le serveur.

[Windows]

Lors de l'installation de l'application, l'appel du déploiement des EJB génère une exception

Lorsque vous spécifiez que l'outil de déploiement EJB doit être exécuté lors de l'installation de l'application, si l'installation échoue car la commande est trop longue, alors la commande de déploiement générée lors de l'installation dépasse le nombre maximal de caractères d'une commande Windows.

Pour l'éviter, vous pouvez réduire la longueur du nom du fichier EAR, la longueur du nom du fichier JAR dans le fichier EAR, le chemin d'accès aux classes ou d'autres options spécifiées pour le déploiement ou modifier l'emplacement %TEMP% du système Windows pour en raccourcir le chemin.

Des erreurs de compilation surviennent et le déploiement d'EJB n'aboutit pas lors de l'installation d'un fichier JAR EJB généré pour la version 5.x ou pour une version antérieure

En cas d'installation d'une ancienne application qui utilise des modules d'EJB générés pour une exécution sur WebSphere Application Server version 5.x ou versions antérieures, des erreurs de compilation surviennent et le déploiement d'EJB n'aboutit pas. Le fichier JAR EJB contient le source Java de l'ancien code généré. L'ancien source Java a été généré pour les versions 5.x ou antérieures mais lors du déploiement sur un produit WebSphere Application Server version 6.x ou suivantes, il est compilé à l'aide des fichiers JAR d'exécution de la version 6.0 ou suivantes.

Pour éviter cet incident, supprimez tous les fichiers .java du fichier EAR de l'application. Une fois les fichiers source Java supprimés, vous pouvez déployer l'application sur un serveur.

Lors du téléchargement des documents, la commande addNode -includeapps échoue avec une exception OutOfMemoryError

Cette erreur peut survenir lorsque vous utilisez la commande addNode -includeapps alors que vous installez des applications contenant des fichiers EAR de taille importante. Pour résoudre le problème, procédez comme suit :
  • Si vous utilisez la commande addNode pour ajouter un noeud à partir du serveur de base, modifiez le script addNode pour inclure le paramètre suivant :
    -Xmxtaille
  • Si vous ajoutez un noeud à partir de la console d'administration, augmentez la valeur de la variable maximumHeapSize dans les paramètres de la machine virtuelle Java du gestionnaire de déploiement, puis redémarrez ce dernier.

    Pour plus de détails, voir Commande addNode et Paramètres de la machine virtuelle Java.

[Windows]Par exemple, dans le fichier addNode.bat qui suit, définissez une taille maximale de segment de 512 Mo sous Windows :
"%JAVA_HOME%\bin\java" -Xmx512m %DEBUG% %WAS_TRACE% %CONSOLE_ENCODING% 
"%CLIENTSOAP%" "%CLIENTSAS%" "-classpath" "%WAS_CLASSPATH%" 
"-Dws.ext.dirs=%WAS_EXT_DIRS%" %USER_INSTALL_PROP% 
-Dwas.install.root=%WAS_HOME%" "com.ibm.ws.bootstrap.WSLauncher" 
"com.ibm.ws.management.tools.NodeFederationUtility" "%CONFIG_ROOT%" "%WAS_CELL%"
"%WAS_NODE%" %*

Exception OutOfMemory dans le gestionnaire de déploiement

Si vous recevez une exception OutOfMemory lors de la tentative d'installation des applications contenant des fichiers EAR volumineux, essayez d'augmenter la taille du segment de mémoire du gestionnaire de déploiement.

Vérifiez les options que vous avez indiquées dans la page Machine virtuelle Java de la console d'administration. Augmentez la valeur de la variable maximumHeapSize dans les paramètres de la machine virtuelle Java du gestionnaire de déploiement. Redémarrez ensuite le gestionnaire de déploiement, puis relancez l'installation de l'application.

Après installation de l'application sur une autre machine, l'application ne s'exécute pas

Si votre application utilise des ressources de niveau d'application, ses informations de noeud de niveau d'application doivent être exactes pour que l'application s'exécute comme prévu.

Lorsque vous ajoutez des ressources de niveau d'application à une application et déployez l'application sur une machine, assurez-vous que les informations de noeud de niveau d'application sont exactes. Autrement, lorsque vous installez l'application sur une autre machine, son emplacement n'est pas correct et l'application ne s'exécute pas comme prévu.

Vous pouvez mettre à jour les informations de noeud de niveau d'application à l'aide d'un outil d'assemblage. Mettez à jour nomNoeud dans ciblesDéploiement du fichier deployment.xml sous ibmconfig. Assurez-vous également que le chemin d'accès de URLBinaires dans objetDéployé du fichier deployment.xml est correct.

Un fichier unique remplace tous les fichiers d'application lors de la mise à jour de l'application

Si vous sélectionnez l'option Remplacer ou ajouter un fichier unique de l'assistant de mise à jour de l'application et que l'application en cours de déploiement est composée de plusieurs fichiers, définissez le chemin d'accès complet du fichier à remplacer ou à ajouter dans Définir le chemin d'accès du fichier archive d'application installé vers le fichier à remplacer ou à ajouter.

La structure du chemin d'accès complet est généralement chemin_répertoire/nom_fichier. Le chemin d'accès complet est similaire à l'exemple suivant :

PriceChangeSession.jar/priceChangeSession/priceChangeSessionBean.class

Ne définissez pas de chemin d'accès incomplet dans Définir le chemin d'accès du fichier archive d'application installé vers le fichier à remplacer ou à ajouter. Par exemple, ne définissez pas un simple chemin d'accès de répertoire :

PriceChangeSession.jar/priceChangeSession

Si vous définissez un chemin d'accès incomplet, tous les fichiers du répertoire de l'application en cours de déploiement pourront être remplacés par le nouveau fichier unique défini sous Définir le chemin d'accès vers le fichier.


Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rtrb_installappprob
Nom du fichier : rtrb_installappprob.html