Préparation de l'installation d'une application par programmation

L'architecture de gestion des applications du produit fournit un ensemble de classes avec lesquelles les développeurs d'applications peuvent collecter les informations de déploiement propres à WebSphere Application Server, appelées ci-après informations de liaison, et les stocker dans le fichier EAR de l'application. Ce fichier EAR peut ensuite être installé dans une configuration WebSphere Application Server, à l'aide des interfaces de gestion des applications décrites dans la rubrique Installation d'une application par programmation. Cette rubrique utilise un exemple de programmation pour expliquer comment remplir un fichier EAR avec des informations de liaison.

Avant de commencer

Cette tâche suppose une connaissance de base des interfaces de programmation WebSphere Application Server et de la programmation de MBean. Voir la documentation sur les interfaces de programmation d'applications pour en savoir plus sur les interfaces de programmation de WebSphere Application Server et sur la programmation de MBean.

Pourquoi et quand exécuter cette tâche

Effectuez les tâches suivantes pour préparer l'installation d'une application par programmation.

Procédure

  1. Créez une instance AppDeploymentController.
    L'instance AppDeploymentController utilise un fichier EAR comme argument et crée une séquence d'étapes, représentées par des objets AppDeploymentTask (ci-après appelés tâches). Les tâches sont généralement présentées au déployeur pour la collecte des informations de liaison ou sont manipulées à l'aide d'un programme. L'extrait de code suivant indique comment créer une instance AppDeploymentController :
    // create preferences to pass in the locale information 
    Hashtable prefs = new Hashtable(); 
    prefs.put(AppConstants.APPDEPL_LOCALE, Locale.getDefault()); 
    
    
    // create a controller instance for EAR file 
    // specified by a fully-qualified path in earName 
    AppDeploymentController flowController =
    AppManagementFactory.readArchive (earName, prefs); 
  2. Obtenez des instances AppDeploymentTask. Après avoir créé l'instance AppDeploymentController, vous pouvez itérer sur les objets de tâche qu'elle crée. Chaque tâche collecte un type d'informations de liaison spécifique pour divers modules de l'application ou pour l'application elle-même. Une tâche peut avoir les attributs suivants, et les méthodes d'accès get et set correspondantes, le cas échéant. Pour plus d'informations sur ces attributs, voir le Javadoc relatif à l'API AppDeploymentTask.
    Tableau 1. Attributs de tâche. Le tableau suivant décrit les attributs possibles pour une tâche AppDeploymentController.
    Chaîne Description Valeur
    appController Instance de contrôleur qui gère les tâches. AppDeploymentController
    colNames Noms de colonne de tâche. java.lang.String[]
    hasHiddenColumns Indique si la tâche a des colonnes masquées. booléen
    HiddenColumns Tableau de valeurs booléennes indiquant que ces colonnes ne doivent pas être affichées par l'outil qui présente les tâches à l'utilisateur final. booléen[]
    HIGHEST_VERSION java.lang.String HIGHEST_VERSION public statique final static java.lang.String
    isSufficientlyDone Indique si la tâche a des données obligatoires qui ne sont pas spécifiées. booléen
    isTaskDisabled Indique si la tâche doit être affichée ou modifiée. booléen
    isTaskEmpty Indique si la tâche comporte des données. booléen
    isValidationEnabled Indique si la tâche doit être validée. booléen
    mutables Tableau de valeurs booléennes indiquant si les données de tâche d'un index de colonne spécifique peuvent être modifiées par la personne qui déploie l'application. booléen[]
    name Nom de tâche unique. java.lang.String
    requiredColumns Tableau de valeurs booléennes indiquant si une colonne de tâche doit avoir une valeur définie. booléen[]
    taskData Tableau (table) de chaînes à deux dimensions. La première ligne du tableau contient les en-têtes de colonne de la tâche (par exemple, nom du module, URI du module, nom JNDI, etc.). Les lignes restantes représentent des informations propres à l'application. java.lang.String[]
    taskValidateErrorMessages Messages d'erreur générés lorsqu'une tâche est validée. java.lang.String[]
    VERSION_HIGHEST entier VERSION_HIGHEST public statique final static int

    Le tableau suivant répertorie divers noms de tâches généralement créées par l'instance AppDeploymentController pour une application J2EE 1.2, J2EE 1.3, Java™ EE 5 ou ultérieure. Il peut y avoir davantage de tâches si l'application contient des extensions d'entreprise WebSphere Application Server.

    Tableau 2. Noms de tâches généralement créées par l'instance AppDeploymentController pour une application J2EE 1.2, J2EE 1.3, Java EE 5 ou ultérieure. Le tableau suivant fournit les noms de tâches généralement créées par l'instance AppDeploymentController pour une application J2EE 1.2, J2EE 1.3, Java EE 5 ou ultérieure. Il donne également une description de chaque tâche et les noms de colonne de tâche.
    Nom AppDeploymentTask Description Noms de colonne de tâche
    MapRolesToUsers Permet de spécifier des utilisateurs ou des groupes pour un rôle de sécurité. Vous devez mapper chaque rôle défini dans l'application ou le module vers un utilisateur ou un groupe à partir du registre d'utilisateurs du domaine. Chaque ligne de données de tâche représente un rôle de sécurité unique. Vous pouvez spécifier plusieurs utilisateurs ou groupes pour un rôle unique en les séparant par un guillemet (").
    • role : répertorie les possibilités spécifiques données à un utilisateur. Les privilèges de rôle accordent aux utilisateurs et aux rôles des droits leur permettant de s'exécuter comme indiqué. Par exemple, vous pouvez mapper l'utilisateur Jean au rôle d'administrateur, pour lui permettre d'effectuer toutes les tâches associées au rôle d'administrateur. Les règles d'autorisation ne sont appliquées que si la sécurité globale est activée.
    • everyone : indique si chaque utilisateur doit être mappé à un rôle spécifié.
    • allAuthenticatedUsers : indique s'il convient de mapper tous les utilisateurs authentifiés à un rôle spécifié quel que soit le domaine.
    • mappedUsers : répertorie les utilisateurs mappés au rôle spécifié dans cette application.
    • mappedGroups : répertorie les groupes mappés à ce rôle spécifié dans cette application.
    • AllAuthenticatedInTrustedRealms - indique s'il convient de mapper tous les utilisateurs des domaines de confiance sur un rôle particulier.
    • userAccessIds : représente les informations utilisateur prises en compte pour l'autorisation Java Platform, Enterprise Edition lorsque le moteur d'autorisation WebSphere Application Server par défaut est utilisé. Le format de l'ID d'accès de l'utilisateur est user:realm/uniqueUserID.
    • groupAccessIds : indique les informations du groupe. Le format de l'ID d'accès du groupe est group:realm/uniqueGroupID.
    • ID des accès utilisateurs mappés - Indique les ID d'accès des utilisateurs mappés.
    • ID des accès groupes mappés - Indique les ID d'accès des groupes mappés.
    MapRunAsRolesToUsers Permet d'indiquer des données d'identification pour un rôle d'exécution. Les beans d'entreprise que vous installez contiennent des rôles d'exécution prédéfinis. Les rôles RunAs sont utilisés par les beans enterprise qui doivent s'exécuter en tant que rôle particulier pour être reconnus pendant l'interaction avec un autre bean enterprise. Chaque ligne de données de tâche représente un rôle d'exécution unique.
    • role : mappe des fonctionnalités spécifiques à un utilisateur. Les règles d'autorisation ne sont appliquées que si la sécurité globale est activée.
    • userName : spécifie un nom pour l'utilisateur du rôle d'exécution. Cet utilisateur est déjà mappé à un rôle spécifié pour la tâche MapRolesToUsers. Vous pouvez mapper l'utilisateur à son rôle approprié soit directement, soit en mappant un groupe contenant cet utilisateur.
    • password : indique le mot de passe de l'utilisateur d'exécution (RunAs).
    BindJndiForEJBNonMessageBinding Permet de spécifier des noms JNDI pour les EJB (Enterprise JavaBeans). Ce nom JNDI est utilisé pour rechercher des objets EJB home à partir de programmes client. Une ligne de données de tâche spécifie un EJB unique pour lequel un nom JNDI peut être fourni.
    • EJBModule : spécifie le module EJB qui contient les beans enterprise associés au nom JNDI.
    • EJB : indique le nom du bean enterprise contenu par le module.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JNDI : spécifie le nom JNDI associé au bean enterprise dans un module EJB.
    BindJndiForEJBMessageBinding Permet d'indiquer un nom de port d'écoute ou JNDI d'une spécification d'activation pour les beans gérés par message (MDB). Veillez à ce que chaque bean géré par message (MDB) de votre application ou module soit lié à un nom de port d'écoute ou JNDI d'une spécification d'activation. Chaque ligne de données de tâche représente un bean géré par message unique.
    • EJBModule : indique le module Enterprise JavaBeans qui contient le bean enterprise.
    • EJB : indique le nom d'un bean géré par message (MDB) dans l'application.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • listenerPort : indique un nom de port d'écoute pour le bean géré par message (MDB).
    • actSpecJNDI : indique un nom JNDI de spécification d'activation pour le bean géré par message (MDB). Lorsqu'un bean géré par message est lié à un nom JNDI de spécification d'activation, vous pouvez également indiquer l'alias d'authentification et le nom JNDI de la destination.
    • actSpecDestinationJNDI : indique un nom JNDI de destination pour la spécification d'activation.
    • actSpecAuth : indique un alias d'authentification permettant d'accéder au nom d'utilisateur et au mot de passe définis dans la spécification d'activation J2C configurée.
    BindJndiForEJBBusiness Permet de spécifier des liaisons de nom JNDI pour chaque bean enterprise disposant d'une interface métier dans un module EJB. Chaque bean enterprise disposant d'une interface métier dans un module EJB doit être associé à un nom JNDI. Une ligne de données de tâche spécifie un bean enterprise unique pour lequel un nom JNDI peut être fourni.
    • EJBModule : spécifie le module EJB qui contient les beans enterprise associés au nom JNDI.
    • EJB : spécifie le nom d'un bean enterprise associé au nom JNDI.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • businessInterface : spécifie l'interface métier du bean enterprise dans un module EJB.
    • JNDI : spécifie le nom JNDI associé à l'interface métier du bean enterprise dans un module EJB.
    MapEJBRefToEJB Permet de spécifier les noms JNDI d'EJB liés à des ejb-refs. Chaque ligne de données de tâche représente un ejb-ref unique défini dans un module.

    Un module EJB 3.0 ne peut contenir de module CMP ou BMP. L'installation échoue lorsqu'un bean entity BMP ou CMP est intégré à un module EJB 3.0 d'une application Java EE. Vous ne pouvez packager d'EJB CMP ou BMP que dans un module EJB 2.1 ou antérieur.

    Si la référence d'EJB provient d'un module EJB 3.0, Web 2.4 ou Web 2.5, le nom JNDI est facultatif. Si l'option Autoriser la résolution automatique des cibles de référence d'EJB est activée, le nom JNDI est facultatif pour tous les modules. Si aucune association n'est fournie, l'environnement d'exécution fournit un conteneur par défaut ou résout automatiquement la référence d'EJB.

    • EJB : indique le nom du bean enterprise contenu par le module.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • referenceBinding : indique le nom de la référence EJB utilisée dans le bean enterprise.
    • class : définit le nom d'une classe Java associé au bean enterprise.
    • JNDI : spécifie le nom JNDI associé au bean enterprise dans un module EJB.
    MapResRefToEJB Permet de spécifier les noms JNDI de ressources définies dans la configuration WebSphere Application Server et liées à des resource-refs. Chaque ligne de données de tâche représente une resource-ref unique définie dans un module.
    • AppVersion : indique la version de l'application.
    • ModuleVersion : indique la version du module.
    • Module : indique le nom d'un module de l'application.
    • EJB : indique le nom d'un bean enterprise qui contient la référence de ressource. (Valable uniquement pour un module EJB)
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • referenceBinding : indique le nom d'une référence de ressource contenue par le module.
    • targetResourceJNDI : indique le nom JNDI de la ressource qui représente la cible du mappage pour la référence de ressource.
    • Configuration de la connexion : cette colonne est valable pour les sources de données et les fabriques de connexions uniquement et indique la méthode d'authentification permettant de sécuriser la ressource.

      La configuration de connexion DefaultPrincipalMapping est utilisée par les connecteurs J2C (Java 2 Connectors) pour associer les utilisateurs aux principaux définis dans les entrées de données d'authentification J2C. Si login.config.name prend la valeur DefaultPrincipalMapping, une propriété est créée avec le nom com.ibm.mapping.authDataAlias. La valeur de la propriété est définie par les propriétés d'authentification. Si le nom login.config ne prend pas la valeur DefaultPrincipalMapping, authentication.props peut spécifier plusieurs propriétés.

    • propriétés d'authentification : indique les propriétés utilisées par la configuration de la connexion. Le format de chaîne est :
      websphere:name= <name1>,value=
      <value1>,description=<desc1>

      Vous pouvez utiliser le signe plus (+) pour indiquer plusieurs propriétés.

    • Autorisation des ressources : indique le type d'autorisation pour sécuriser la ressource.
    • Propriétés de sources de données étendues : indique les propriétés des sources de données étendues d'une base de données DB2. Ces propriétés permettent d'autoriser une application à étendre les propriétés personnalisées d'une source de données ou de substituer des propriétés non-centrales déjà existantes pour cette source de données.
    MapResEnvRefToRes Permet de spécifier les noms JNDI de ressources définies dans la configuration WebSphere Application Server et liées à des resource-env-refs. Chaque ligne de données de tâche représente une resource-env-ref unique définie dans un module.
    • Module : indique le nom d'un module de l'application.
    • EJB : indique le nom d'un bean enterprise qui contient la référence d'environnement de ressource. (Valable uniquement pour un module EJB)
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • referenceBinding : indique le nom d'une référence d'environnement de ressource. La référence correspond à une ressource associée à une entrée d'environnement de ressource dans l'espace de nom JNDI du serveur d'applications.
    • resEnvRef.type : indique le type associé à la référence d'environnement de ressource.
    • JNDI : indique le nom JNDI de l'entrée d'environnement de ressource qui représente la cible du mappage pour la référence d'environnement de ressource.
    MapSharedLibForMod Permet d'associer des bibliothèques partagées définies à une application ou un module Web. Une bibliothèque partagée est un fichier JAR (archive Java) externe qui est utilisé par une ou plusieurs applications. L'utilisation de bibliothèques partagées permet à plusieurs applications déployées sur un serveur d'utiliser une bibliothèque unique au lieu de plusieurs copies de la même bibliothèque. Une fois que vous avez associé des bibliothèques partagées à une application ou un module, le chargeur de classe de l'application ou du module charge les classes représentées par les bibliothèques partagées et les met à la disposition de l'application ou du module. Chaque ligne de données de tâche représente une application ou un module Web unique.
    • application : indique le nom de l'application que vous installez.
    • module : indique le nom du module associé aux bibliothèques partagées.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • sharedLibraries : indique le nom des fichiers de bibliothèque partagée associés à l'application ou au module.
    SharedLibRelationship Permet d'indiquer des identificateurs de relation et des noms d'unité de composition pour les bibliothèques partagées utilisées par les modules dans votre application d'entreprise. Lors de l'installation de votre application d'entreprise, le produit crée une unité de composition pour chaque relation de bibliothèque partagée de l'application de niveau métier que vous avez spécifiée. Chaque ligne de données de tâche représente une application ou un module Web unique.
    • module : indique le nom du module associé aux bibliothèques partagées.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • relationshipIdentifiers : indique un identificateur d'unité de composition ou d'actif de bibliothèque partagée pour la relation de bibliothèque partagée de module. Le format de chaîne est :
      assetname=<assetName> or cuname=<cuName>

      Vous pouvez utiliser le signe plus (+) pour indiquer plusieurs relations.

    • compositionUnit : spécifie le nom d'une unité de composition pour la relation de la bibliothèque partagée. Le produit utilise cette valeur pour nommer l'unité de composition créée pour la relation de bibliothèque partagée de l'application de niveau métier. Le nom de l'unité de composition est mis en correspondance par position avec le nom de l'identificateur d'unité de composition ou d'actif spécifié dans la zone de relation.
    • matchTarget : indique si le produit mappe l'unité de composition de la relation de bibliothèque partagée à la même cible de déploiement que l'application de niveau métier. Les valeurs suivantes sont valides pour cette colonne :
      • AppConstants.YES_KEY : indique que vous souhaitez que le produit mappe l'unité de composition de la relation de bibliothèque partagée à la même cible de déploiement que l'application de niveau métier.
      • AppConstants.NO_KEY : indique que vous ne souhaitez pas que le produit mappe l'unité de composition de la relation de bibliothèque partagée à la même cible de déploiement que l'application de niveau métier.
    CtxRootForWebMod Permet d'indiquer la racine de contexte pour des modules Web pendant ou après l'installation d'une application sur une cible de déploiement WebSphere Application Server. Chaque ligne de données de tâche représente un module Web unique.
    • webModule : indique le nom d'un module Web dans l'application que vous installez ou que vous affichez après l'installation.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • contextRoot : spécifie la racine de contexte de l'application Web (WAR). Une racine de contexte pour chaque module Web est définie dans le descripteur de déploiement d'application au cours de l'assemblage de l'application. La racine du contexte est combinée avec le mappage de servlet défini (à partir du fichier WAR) pour composer l'URL complète que les utilisateurs saisissent pour accéder au servlet. Par exemple, si la racine de contexte est /gettingstarted et si le mappage de servlet est MySession, l'URL est http://host:port/gettingstarted/MySession.
    MapInitParamForServlet Permet d'indiquer les valeurs des paramètres initiaux pour les servlets dans les modules Web pendant ou après l'installation d'une application sur une cible de déploiement WebSphere Application Server. Les valeurs <param-value> spécifiées dans les instructions <init-param> du fichier web.xml des modules Web sont utilisées par défaut. Chaque ligne de données de tâche représente un servlet unique.
    • module : indique le nom d'un module dans l'application que vous installez ou que vous affichez après l'installation.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • servlet : indique un nom unique pour le servlet dans l'application. Vous devez placer les servlets dans un fichier WAR (archive Web) ou un module Web en vue de leur déploiement sur le serveur d'applications. A l'instar des applets qui s'exécutent dans un navigateur et étendent les fonctionnalités de ce dernier, les servlets s'exécutent sur un serveur Web compatible Java pour en étendre les fonctionnalités.
    • name : indique le nom du paramètre initial transmis à la méthode d'initialisation du filtre de servlet du module Web. L'exemple suivant d'instruction de filtre de servlet d'un fichier web.xml spécifie le nom de paramètre initial de l'attribut :
      <init-param>
         <param-name>attribute</param-name>
         <param-value>tests.Filter.
      DoFilter_Filter.SERVLET_MAPPED
      </param-value>
      </init-param>
    • value : indique la valeur attribuée à un paramètre initial transmis à la méthode d'initialisation du filtre de servlet du module Web. Pour l'exemple suivant, l'instruction de filtre de servlet d'un fichier web.xml spécifie la valeur de paramètre initial tests.Filter.DoFilter_Filter.SERVLET_MAPPED pour l'attribut du paramètre d'initialisation :
      <init-param>
         <param-name>attribute</param-name>
         <param-value>tests.Filter.
      DoFilter_Filter.SERVLET_MAPPED
      </param-value>
      </init-param>
    • description : donne des informations sur le paramètre initial.
    MapEnvEntryForEJBMod permet de configurer les entrées d'environnement des modules Enterprise JavaBeans™ (EJB) tels que les beans entity, session ou gérés par message. Chaque ligne de données de tâche représente une entrée d'environnement unique dans un module EJB.
    • module : indique le nom d'un module EJB.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • EJB : indique le nom du bean enterprise contenu par le module.
    • name : spécifie le nom de l'entrée d'environnement que vous éditez ou affichez actuellement. L'entrée d'environnement est la propriété env-entry dans le module EJB.
    • type : spécifie un type de données pour l'entrée d'environnement définie par la propriété env-entry dans le module EJB.
    • description : spécifie des informations sur l'entrée d'environnement.
    • value : indique une valeur modifiable pour l'entrée d'environnement définie par la propriété env-entry dans le module EJB.
    MapEnvEntryForWebMod Permet de configurer les entrées d'environnement des modules Web tels que des servlets et des fichiers JavaServer Pages (JSP). Chaque ligne de données de tâche représente une entrée d'environnement unique dans un module Web.
    • module : indique le nom d'un module Web.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • name : spécifie le nom de l'entrée d'environnement que vous éditez ou affichez actuellement. L'entrée d'environnement est la propriété env-entry dans le module Web.
    • type : spécifie un type de données pour l'entrée d'environnement définie par la propriété env-entry dans le module Web.
    • description : spécifie des informations sur l'entrée d'environnement.
    • value : indique une valeur modifiable pour l'entrée d'environnement définie par la propriété env-entry dans le module Web.
    MapMessageDestinationRefToEJB Permet d'indiquer le nom JNDI de l'objet géré J2C pour lier la référence de destination des messages aux beans gérés par message. Chaque ligne de données de tâche représente une référence de destination de message unique dans un module.
    • module : indique le nom d'un module EJB.
    • EJB : indique le nom des beans gérés par message (MDB) contenus par le module.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • messageDestinationObject : indique le nom de la référence de destination de message ou du lien de destination de message si un lien de destination est fourni.
    • JNDI : indique le JNDI cible du bean de destination de message référencé. Si un lien de destination de message est fourni, cette zone utilise par défaut le nom JNDI de destination du bean géré par message référencé par le lien de destination de message.
    DataSourceFor10EJBModules Permet d'indiquer le nom JNDI de la source de données par défaut utilisée pour un module EJB qui contient des beans EJB1.x. Chaque ligne de données de tâche représente un module EJB unique.
    • EJBModule : indique le nom du module contenant les beans enterprise 1.x.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JNDI : spécifie le nom JNDI de la source de données par défaut pour le module EJB.
    • userName : indique le nom d'utilisateur qui, avec le mot de passe, comprend l'alias d'authentification pour sécuriser la source de données.
    • password : indique le mot de passe qui, avec le nom d'utilisateur, comprend l'alias d'authentification pour sécuriser la source de données.
    • Configuration de la connexion : indique la méthode d'authentification permettant de sécuriser la source de données.
    • propriétés d'authentification : indique les propriétés utilisées par la configuration de la connexion. Le format de chaîne est :
      websphere:name= <name1>,value=<value1>,
      description=<desc1>

      Vous pouvez utiliser le signe plus (+) pour indiquer plusieurs propriétés.

    DataSourceFor20EJBModules Permet d'indiquer le nom JNDI de la fabrique de connexions par défaut utilisée pour un module EJB qui contient des beans EJB2.x. Chaque ligne de données de tâche représente un module EJB unique.
    • EJBModule : indique le nom du module contenant les beans enterprise 1.x.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JNDI : spécifie le nom JNDI de la source de données par défaut pour le module EJB.
    • Autorisation des ressources : indique le type d'autorisation pour sécuriser la ressource. Les valeurs admises sont les suivantes :
      AppConstants.APPDEPL_CMPBINDING_
      RESAUTHTYPE_CONTAINER
      et
      AppConstants.APPDEPL_CMPBINDING_
      RESAUTHTYPE_PER_CONNECTION_FACTORY
      .
    • Configuration de la connexion : indique la méthode d'authentification permettant de sécuriser la source de données.
    • propriétés d'authentification : indique les propriétés utilisées par la configuration de la connexion. Le format de chaîne est :
      websphere:name= <name1>,value=<value1>,
      description=<desc1>

      Vous pouvez utiliser le signe plus (+) pour indiquer plusieurs propriétés.

    • Propriétés de sources de données étendues : indique les propriétés des sources de données étendues d'une base de données DB2.

      Ces propriétés permettent d'autoriser une application à étendre les propriétés personnalisées d'une source de données ou de substituer des propriétés non-centrales déjà existantes pour cette source de données.

    DataSourceFor10CMPBeans Permet d'indiquer le nom JNDI de la source de données à utiliser pour un bean EJB1.x avec persistance gérée par conteneur (CMP). Une ligne de données de tâche représente un EJB unique.
    • EJBModule : indique le nom du module contenant les beans enterprise 1.x.
    • EJB : indique le nom du bean enterprise contenu par le module.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JNDI : spécifie le nom JNDI de la source de données par défaut pour le module EJB.
    • userName : indique le nom d'utilisateur qui, avec le mot de passe, comprend l'alias d'authentification pour sécuriser la source de données.
    • password : indique le mot de passe qui, avec le nom d'utilisateur, comprend l'alias d'authentification pour sécuriser la source de données.
    • Configuration de la connexion : indique la méthode d'authentification permettant de sécuriser la source de données.
    • propriétés d'authentification : indique les propriétés utilisées par la configuration de la connexion. Le format de chaîne est :
      websphere:name= <name1>,value=<value1>,
      description=<desc1>

      Vous pouvez utiliser le signe plus (+) pour indiquer plusieurs propriétés.

    DataSourceFor20CMPBeans Permet d'indiquer le nom JNDI de la fabrique de connexions à utiliser pour un bean EJB2.x avec persistance gérée par conteneur (CMP). Une ligne de données de tâche représente un EJB unique.
    • EJBModule : indique le nom du module contenant les beans enterprise 1.x.
    • EJB : indique le nom du bean enterprise contenu par le module.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JNDI : spécifie le nom JNDI de la source de données par défaut pour le module EJB.
    • Autorisation des ressources : indique le type d'autorisation pour sécuriser la ressource. Les valeurs admises sont les suivantes :
      AppConstants.APPDEPL_CMPBINDING_
      RESAUTHTYPE_CONTAINER
      et
      AppConstants.APPDEPL_CMPBINDING_
      RESAUTHTYPE_PER_CONNECTION_FACTORY
      .
    • Configuration de la connexion : indique la méthode d'authentification permettant de sécuriser la source de données.
    • propriétés d'authentification : indique les propriétés utilisées par la configuration de la connexion. Le format de chaîne est :
      websphere:name= <name1>,value=<value1>,
      description=<desc1>

      Vous pouvez utiliser le signe plus (+) pour indiquer plusieurs propriétés.

    • Propriétés de sources de données étendues : indique les propriétés des sources de données étendues d'une base de données DB2.

      Ces propriétés permettent d'autoriser une application à étendre les propriétés personnalisées d'une source de données ou de substituer des propriétés non-centrales déjà existantes pour cette source de données.

    MapWebModToVH Permet de spécifier des hôtes virtuels pour les modules Web. Chaque ligne de données de tâche représente un module Web de l'application pour lequel des informations sur les hôtes virtuels doivent être collectées. Les modules Web peuvent être installés sur le même hôte virtuel ou répartis sur plusieurs hôtes virtuels. Chaque ligne de données de tâche représente un module Web unique.
    • webModule : indique le nom d'un module Web dans l'application que vous installez ou que vous affichez après l'installation.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • virtualHost : indique le nom de l'hôte virtuel auquel est actuellement mappé le module Web.

      Ne spécifiez pas le même hôte virtuel pour des modules Web différents ayant la même racine de contexte et déployés sur des cibles appartenant au même noeud, même si les modules Web sont contenus dans différentes applications. La spécification d'hôtes virtuels identiques entraîne un erreur de validation.

    EnsureMethodProtectionFor10EJB Permet d'indiquer si toutes les méthodes non protégées d'un module EJB1.x doivent être inaccessibles. Chaque ligne de tâche représente un module EJB1.x unique.
    • EJBModule : indique le nom du module contenant les beans EJB2.x.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • method.denyAllAccessPermission : indique l'un des droits d'accès suivants :
      • AAppConstants.YES_KEY indique que vous souhaitez protéger ce module EJB en le rendant inaccessible aux utilisateurs quel que soit leur droit d'accès.
      • AppConstants.NO_KEY indique que vous souhaitez rendre ce module EJB accessible aux utilisateurs disposant des droits d'accès appropriés.
    EnsureMethodProtectionFor20EJB Permet d'indiquer un niveau de protection pour les méthodes non protégées des beans EJB2.x dans les modules EJB. Chaque ligne de données de tâche indique une protection de méthode par module EJB.
    • EJBModule : indique le nom du module contenant les beans EJB2.x.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • method.protectionType : indique l'une des méthodes de protection suivantes :
      • AppConstants.APPDEPL_METHOD_PROTECTION_UNCHECK indique que vous ne souhaitez pas que le serveur d'applications vérifie les droits d'accès au module EJB. Tous les utilisateurs peuvent accéder au module EJB.
      • AppConstants.APPDEPL_METHOD_PROTECTION_EXCLUDE indique que vous souhaitez protéger ce module EJB en le rendant inaccessible aux utilisateurs quel que soit leur droit d'accès.
    AppDeploymentOptions Permet de spécifier diverses options spécifiques au déploiement. Cette tâche comporte 2 lignes uniquement. La première ligne indique le nom de l'option et la deuxième ligne indique la valeur d'option correspondante. Les valeurs suivantes sont les valeurs valides pour ces options, sauf indication contraire dans la description de l'option :
    • AppConstants.YES_KEY indique que vous souhaitez utiliser cette option de déploiement.
    • AppConstants.NO_KEY indique que vous ne souhaitez pas utiliser cette option de déploiement.
    Voici les noms d'options qui peuvent être indiqués :
    • preCompileJSPs : indique si les fichiers JavaServer Pages sont précompilés.
    • installed.ear.destination : indique le répertoire dans lequel vous souhaitez installer le fichier EAR (entreprise archive). La valeur de cette option est un chemin de répertoire complet tel que racine_profil/installedApps/mycell/myapp.ear
    • distributeApp : indique si le composant de gestion des applications distribue les fichiers binaires de l'application.
    • useMetaDataFromBinary : indique si les métadonnées utilisées lors de l'exécution, par exemple, les descripteurs de déploiement, les liaisons et les extensions, proviennent du fichier EAR.
    • deployejb : indique s'il convient d'exécuter l'outil EJBDeploy au cours de l'installation.
    • appname : indique le nom de l'application que vous déployez avec ces options.
    • createMBeansForResources : indique si des MBeans sont créés pour toutes les ressources (servlets, fichiers JSP et beans enterprise) définies dans une application lorsque l'application démarre sur une cible de déploiement.
    • reloadEnabled : indique si les fichiers mis à jour sont recherchés sur le système de fichiers de l'application afin que les modifications soient rechargées de manière dynamique.
    • reloadInterval : indique, en secondes, la période pendant laquelle les fichiers mis à jour sont recherchés sur le système de fichiers de l'application. La valeur spécifiée pour cette option est un entier supérieur à zéro.
    • eployws : indique s'il convient d'exécuter l'outil wsdeploy au cours du déploiement.
    • validateinput : indique si le produit étudie les références d'application indiquées lors de l'installation ou de la mise à jour de l'application et, si la validation est activée, s'il vous avertit de références erronées ou arrête l'opération. Les valeurs valides sont AppConstants.APPDEPL_VALIDATE_INSTALL_OFF, AppConstants.APPDEPL_VALIDATE_INSTALL_WARM et AppConstants.APPDEPL_VALIDATE_INSTALL_FAIL.
    • processEmbeddedConfig : indique si la configuration imbriquée doit être traitée. Une configuration imbriquée se compose de fichiers, tels que resource.xml et variables.xml.
    • filepermission : indique les droits d'accès aux fichiers binaires des applications installées qui sont développés dans le répertoire indiqué.
    • blaname : indique si le produit crée une application de niveau métier avec l'application d'entreprise en cours d'installation ou transforme l'application d'entreprise en une unité de composition appartenant à une application de niveau métier existante.
    • autolink : indique si le produit affecte des valeurs JNDI par défaut aux cibles de référence EJB incomplètes ou effectue une résolution automatique des cibles de référence EJB incomplètes.
    JSPReloadForWebMod Permet de configurer le rechargement de classe des modules Web tels que des fichiers JavaServer Pages (JSP) et de sélectionner une implémentation JSF à utiliser avec cette application. Chaque ligne de données de tâche représente un module Web unique.
    • webModule : indique le nom d'un module Web dans l'application que vous installez ou que vous affichez après l'installation.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • enableJSPClassReloading : indique si le rechargement de classe doit ou non être activé lorsque les fichiers JSP sont mis à jour.
    • JSPReloadInterval : indique, en secondes, la fréquence à laquelle le produit analyse le système de fichiers pour que l'application vérifie les fichiers JSP mis à jour.
    EJBDeployOptions Permet d'indiquer des options pour l'outil de déploiement de composants EJB (Enterprise JavaBeans). Cet outil génère le code nécessaire à l'exécution des fichiers de bean enterprise. Vous pouvez indiquer des chemins de classes supplémentaires, des options RMIC (Remote Method Invocation Compiler), des types de base de données et des noms de schémas de base de données supplémentaires devant être utilisés lors de l'exécution de l'outil de déploiement d'EJB.
    • deployejb.classpath : indique le chemin d'accès aux classes du ou des fichiers zippés ou JAR (Java archive) dont le fichier JAR ou EAR en cours d'installation dépend.
    • deployejb.rmic : indique si l'outil de déploiement d'EJB transmet les options RMIC (Remote Method Invocation Compiler) au compilateur RMI. Pour obtenir des informations sur ces options, voir la documentation des outils RMI. Les valeurs suivantes sont valides pour cette colonne :
      • AAppConstants.YES_KEY permet à l'outil de déploiement d'EJB de transmettre les options RMIC (Remote Method Invocation Compiler) au compilateur RMI.
      • AppConstants.NO_KEY empêche l'outil de déploiement d'EJB de transmettre les options RMIC (Remote Method Invocation Compiler) au compilateur RMI.
    • deployejb.dbtype : indique le nom du fournisseur de base de données qui permet de déterminer les types de colonne de base de données, les informations de mappage, Table.sql, ainsi que d'autres informations. Si vous indiquez un type de base de données, les identificateurs d'arrière plan définis auparavant pour tous les modules EJB sont remplacés par le type de base de données choisi. Pour activer les identificateurs d'arrière plan pour des modules EJB individuels, n'indiquez aucune valeur pour cette colonne.
    • deployejb.dbschema : indique le nom du schéma à créer. L'outil de déploiement d'EJB enregistre les informations sur la base de données contenues dans le document de schéma dans le fichier JAR ou EAR. Par conséquent, vous n'avez pas besoin de redéfinir vos options. Cela implique également que, lorsque le fichier JAR ou EAR est généré, vous devez définir la base de données appropriée dès cette étape, car vous ne pourrez pas la modifier ultérieurement. Si le nom de schéma contient des espaces, placez toute la chaîne entre guillemets. Par exemple :
      "my schema"
    • deployejb.dbaccesstype : indique le type d'accès à la base de données DB2 qui prend en charge le langage SQL pour Java (Structured Query Language). Utilisez le langage SQL pour Java pour développer les applications d'accès aux données qui se connectent aux bases de données DB2. Le langage SQL pour Java est un ensemble d'extensions de programmation qui prend en charge l'utilisation du langage de programmation Java pour imbriquer les instructions générant des requêtes de base de données SQL (Structured Query Language).
    • deployejb.SQLJclasspath : indique le chemin d'accès aux classes du fichier sqlj.zip de l'outil SQL pour Java DB2. Le produit utilise ce chemin d'accès aux classes pour lancer l'outil SQL pour Java DB2 pendant l'installation de l'application et générer des profils SQL pour Java (fichiers .ser).
    • deployejb.JDKcompliancelevel : indique le niveau de conformité du compilateur Java Developer Kit lorsque vous intégrez des fichiers source d'application pour compilation.
    JSPCompileOptions Permet d'indiquer diverses options que doit utiliser le compilateur de JavaServer Pages (JSP).
    • webModule : indique le nom d'un module Web de l'application.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JSPclasspath : indique un chemin de classes temporaire à l'usage du compilateur JSP lors de la compilation de fichiers JSP au cours de l'installation d'une application. Ce chemin n'est pas enregistré lorsque l'installation est terminée et n'est pas utilisé lorsque l'application est en cours d'exécution. Ce chemin n'est utilisé que pour identifier les ressources hors application qui sont nécessaires pour la compilation JSP et qui seront identifiées par d'autres moyens (tels que des bibliothèques partagées) une fois l'application installée.

      Dans les configurations de déploiement de réseau, ce chemin de classes est spécifique à la machine de gestionnaire de déploiement.

    • useFullPackageNames : indique si le moteur JSP génère et charge des classes JSP à l'aide de noms de module complets. Quand des noms de module complets sont utilisés, les fichiers de classe JSP précompilés peuvent être configurés comme servlets dans le fichier web.xml, sans qu'il soit nécessaire d'utiliser l'attribut jsp-file. Lorsque les noms de module complets ne sont pas utilisés, toutes les classes JSP sont générées dans le même module, ce qui présente l'avantage de chemins de système de fichiers plus petits.
    • JDKSourceLevel : indique le niveau source auquel le compilateur Java compile les sources Java JSP. Lorsque vous indiquez la valeur de cette colonne, ne tapez pas le séparateur décimal dans le numéro de niveau. Par exemple, indiquez 15 pour le niveau JDK 1.5.
    • disableJSPRuntimeCompilation : indique si un fichier JSP doit ne jamais être converti ou compilé lors de l'exécution, même lorsqu'il n'existe pas de fichier .class. Les valeurs suivantes sont valides pour cette colonne :
      • AAppConstants.YES_KEY indique que vous voulez désactiver la compilation de la phase d'exécution JSP.
      • AppConstants.NO_KEY indique que vous ne voulez pas désactiver la compilation de la phase d'exécution JSP.
    MapModulesToServers Permet d'indiquer les clusters ou serveurs cibles pour les modules d'une application. Chaque ligne de données de tâche représente un module de l'application. La cible serveur est indiquée sous la forme WebSphere:cell=cellName,node=nodeName,server=serveName, et la cible cluster sous la forme WebSphere:cell=cellName,cluster=clusterName. Vous pouvez indiquer plusieurs cibles pour un module donné en les séparant par "+". Chaque ligne de données de tâche représente un module unique.
    • Module : indique le nom d'un module de l'application.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • server : indique le cluster ou serveur cible pour ce module.
    CorrectUseSystemIdentity Permet de gérer les propriétés d'identité du système pour la méthode EJB Enterprise JavaBeans™ dans votre application.
    • role : spécifie le rôle d'exécution utilisé pour cette méthode EJB.
    • userName : spécifie un nom pour l'utilisateur du rôle d'exécution. Ce nom d'utilisateur est utilisé conjointement avec le rôle d'exécution que vous sélectionnez comme rôle.
    • password : spécifie le mot de passe associé au nom d'utilisateur dans le registre des utilisateurs.
    CorrectOracleIsolationLevel Permet d'indiquer le niveau d'isolement du fournisseur de type Oracle pour les références de ressources mappées à des ressources faisant appel en arrière-plan à une base de données Oracle. Chaque ligne représente une référence de ressource mappée à une ressource de base de données Oracle.
    • Module : indique le nom d'un module de l'application.
    • resourceRef : indique le nom d'une référence de ressource.
    • JNDI : nom JNDI de la ressource qui représente la cible du mappage pour la référence de ressource.
    • isolationLevel : indique le niveau d'isolement que vous souhaitez utiliser pour le fournisseur de type Oracle. Voici les deux valeurs qui peuvent être indiquées pour cette colonne :
      • rc : indique le niveau d'isolement Lecture validée JDBC.
      • s : indique le niveau d'isolement JDBC Sérialisable.
    ActSpecJNDI Permet de fournir des noms JNDI pour les objets JCA de modules d'adaptateurs de ressources intégrés.
    • Module : indique le nom d'un module de l'application.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • JCA object : indique le nom d'un objet JCA pour une fabrique de connexions J2C, un objet géré ou une spécification d'activation.
    • JNDI : indique le nom JNDI de l'objet JCA.
    BackendIdSelection Permet de modifier l'ID dorsal pour les modules JAR (Java archive) de bean enterprise contenant des beans à persistance gérée par conteneur (CMP). Un module JAR de bean enterprise peut prendre en charge plusieurs configurations de dorsal selon les indications à l'aide d'un outil d'assemblage d'application. Cette tâche est utile si l'application comporte des modules EJB pour lesquels un code de déploiement a été généré pour plusieurs bases de données dorsales à l'aide d'un outil d'assemblage.
    • Module : indique le nom d'un module EJB de l'application.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • ID : ID dorsal existant qui représente une base de données dorsale.
    • currentID : indique le nouvel ID dorsal représentant la base de données dorsale à utiliser.
    MetadataCompleteForModules Permet à chaque module EJB 3.0 ou Web 2.5 d'écrire le descripteur de déploiement complet, y compris les informations de déploiement des annotations. Le système marque alors le descripteur comme complet. Chaque ligne de données de tâche représente un module unique.
    • module : indique le nom d'un module EJB 3.0 ou Web 2.5.
    • uri : l'URI (Uniform Resource Identifier) indique l'emplacement de l'archive du module par rapport à la racine du fichier EAR de l'application.
    • metadataComplete : indique s'il faut écrire le descripteur de déploiement complet du module, y compris les informations de déploiement issues des annotations, au format XML. Lorsque les métadonnées complètes d'un module sont définies sur true, WebSphere écrit le descripteur de déploiement complet, y compris les informations de déploiement des annotations. Les valeurs suivantes sont valides pour cette colonne :
      • AppConstants.YES_KEY indique que les modules EJB 3.0 ou Web 2.5 peuvent écrire le descripteur de déploiement complet, y compris les informations de déploiement des annotations.
      • AppConstants.NO_KEY indique que les modules EJB 3.0 ou Web 2.5 ne peuvent pas écrire le descripteur de déploiement complet, y compris les informations de déploiement des annotations.

    Dans plusieurs tâches, la colonne URI identifie de manière unique un module de l'application en utilisant le format comme valeur, où moduleURI est le nom du fichier de module défini dans le descripteur de déploiement de l'application, et ddURI est l'URI du descripteur de déploiement au sein du module (pour le descripteur de déploiement standard) ou l'URI du descripteur de déploiement de substitution du module, comme défini dans le descripteur de déploiement de l'application. Par exemple, si une application a un module Web dans MyWeb.war et si le module utilise un descripteur de déploiement standard, la valeur de la colonne URI dans diverses tâches de ce module est MyWeb.war,WEB-INF/web.xml. Ainsi, la valeur de la colonne URI garantit toujours l'identification unique d'un module.

    L'extrait de code suivant indique comment obtenir des tâches de l'instance AppDeploymentController :

    AppDeploymentTask task =flowController.getFirstTask(); 
    while (task != null) 
    {
    // manipulate task data as necessary
    task = flowController.getNextTask();
    } 
  3. Manipulez des données de tâche.

    A l'aide du nom de tâche, des noms de colonne de tâche et de l'artefact J2EE pour lequel des informations de liaison doivent être fournies, les données de tâche peuvent être modifiées si la colonne correspondante est marquée comme modifiable. L'exemple de code suivant indique comment des informations de liaison peuvent être fournies pour une tâche spécifique. Dans cet exemple, nous spécifions des utilisateurs pour un rôle de sécurité : supposons que l'application a un rôle de sécurité nommé Role1 et que vous devez lui affecter les utilisateurs User1 et User2 :

    if (task.getName().equals ("MapRolesToUsers") && !task. isTaskDisabled()) 
    { 
    // find out column index for role and user column 
    // refer to the table to find the column names 
    int roleColumn = -1;
    int userColumn = -1;
    String[] colNames = task.getColumnNames();
    for (int i=0; i < colNames.length; i++)
    { 
    if (colNames[i].equals ("role"))
    roleColumn = i;
    else if (colNames[i].equals ("role.user"))
    userColumn = i; 
    } 
    
    // iterate over task data starting at row 1 as row0 is
    // column names
    String[][]data = task.getTaskData();
    for (int i=1; i < data.length; i++)
    {
    if (data[i][roleColumn].equals ("Role1")) 
    {
    data[i][userColumn]="User1|User2";
    break;
    }
    } 
    
    // now that the task data is changed, save it back
    task.setTaskData (data);
    } 
    

    Vous pouvez utiliser une logique similaire pour spécifier tous les autres types d'informations de liaison, comme des noms JNDI pour les EJB, des noms d'hôte virtuel pour les modules Web, etc., dans diverses tâches. Les informations sur la tâche et l'exemple de code ne vous autorisent pas à collecter des informations de liaison pour des modules client d'application. Vous devez utiliser l'outil de configuration de client fourni avec WebSphere Application Server pour configurer les clients d'application.

  4. Sauvegardez le fichier EAR et obtenez les options d'installation.

    Une fois que toutes les informations de liaison nécessaires ont été fournies dans les diverses tâches, les données de tâche doivent être sauvegardées dans le fichier EAR de sorte que le fichier EAR rempli puisse être installé dans la configuration WebSphere Application Server. Outre les informations de liaison stockées dans le fichier EAR, plusieurs autres options de déploiement sont collectées par les tâches, par exemple AppDeploymentOptions, EJBDeployOptions et MapModulesToServers. Ces options ne sont pas sauvegardées dans le fichier EAR mais doivent être transmises lorsque l'application est installée dans la configuration WebSphere Application Server. Une fois que les données de tâche ont été manipulées comme il convient et que le fichier EAR a été sauvegardé, ces options peuvent être obtenues de l'instance AppDeploymentController sous forme de table de hachage. Autrement, ces options peuvent être transmises directement lors de l'installation de l'application, comme indiqué dans la section d'installation des applications, et dans le Javadoc relatif à l'API installApplication de l'interface com.ibm.websphere.management.application.AppManagement.

    Le code suivant indique comment sauvegarder les données de tâche dans le fichier EAR et obtenir les options d'installation générées :

    // the following line of code saves the task data
    // in the EAR file specified as earName in step 1
    flowController.saveAndClose();
    
    
    // get the installation options
    Hashtable options = flowController.getAppDeploymentSavedResults();

Que faire ensuite

Utilisez la programmation pour installer l'application.


Icône indiquant le type de rubrique Rubrique de tâche



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=tjmx_prepappforinstall
Nom du fichier : tjmx_prepappforinstall.html