IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Websphere Java Discussion :

[JACL] Script pour changer la valeur de genericJvmArguments


Sujet :

Websphere Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 12
    Par défaut [JACL] Script pour changer la valeur de genericJvmArguments
    Bonjour à tous,

    On m'a récemment demandé de mettre en place un script qui sera lancé au démarrage d'un serveur d'applications websphere quel qu'il soit. Ce script devra vérifier que dans le champ genericJvmArguments, la valeur "-Djava.awt.headless=true" est bien présente, et qu'il l'ajoute le cas échéant.

    Je n'en suis qu'aux balbutiement, mais je réussi à atteindre mon objectif via la console d'administration wsadmin.sh. J'arrive effectivement à modifier cette valeur grâce à la commande suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $AdminConfig modify $jvm {{genericJvmArguments -Djava.awt.headless=true}}
    Mon problème, ce sont les éléments déjà présents, puisqu'avec cette ligne, je remplace tout. Donc, je me suis amusé à récupérer les valeurs précédentes, et je me suis naïvement dit qu'il suffisait de rajouter le $oldValues à ma ligne... Mais c'etait là une grosse erreur. En effet, il essaie obstinément de m'insérer la valeur telle qu'elle ("$oldValues -Djava.awt.headless=true"), donc sans remplacement de la variable.

    J'ai fouillé toute la journée, testé toutes les solutions proposées, mais rien. Je m'en remets donc à vous. Ci-dessous, mon code (pour éclaircir au cas où j'ai été flou).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    set serverId [$AdminConfig getid "/Server:test_mandriva/"]
    set procdef [$AdminConfig list JavaProcessDef $serverId]
    set jvm [$AdminConfig list JavaVirtualMachine $procdef]
    set oldJvmOptions [$AdminConfig showAttribute $jvm genericJvmArguments]
    $AdminConfig modify $jvm {{ genericJvmArguments "$oldJvmOptions -Djava.awt.headless=true"}}
    $AdminConfig save
    Merci d'avance pour votre temps et votre éclairage sur mon problème =)

    Info : Websphere version 5.1.1.9 sous Mandriva

    Cordialement,
    Oni-Chou !

  2. #2
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 12
    Par défaut
    Bonjour,

    A force de persevérance, on arrive toujours à ce qu'on cherche. J'ai donc réussi à ajouter un élément dans ce que je désirais modifier. Ci-après le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    set serverId [$AdminConfig getid "/Server:mon_serveur_appli/"]
    set procdef [$AdminConfig list JavaProcessDef $serverId]
    set jvm [$AdminConfig list JavaVirtualMachine $procdef]
    set oldJvmOptions [$AdminConfig showAttribute $jvm genericJvmArguments]
    set newJvmOptions [list "$oldJvmOptions -Djava.awt.headless=true"]
    $AdminConfig modify $jvm "{genericJvmArguments $newJvmOptions}"
    $AdminConfig save
    Maintenant, me reste plus qu'à apprendre comment faire un if sur des chaînes de caractères en JACL, et je pourrais ajouter la valeur que si elle est absente =) (si vous voulez aider, ne vous gênez pas :p)

    Cordialement,

    Oni.

  3. #3
    Membre averti
    Inscrit en
    Juin 2006
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 12
    Par défaut
    Bonjour,

    Voici la solution pour ceux qui auraient un problème similaire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    set serverId [$AdminConfig getid "/Server:appli_server/"]
    set procdef [$AdminConfig list JavaProcessDef $serverId]
    set jvm [$AdminConfig list JavaVirtualMachine $procdef]
    set oldJvmOptions [$AdminConfig showAttribute $jvm genericJvmArguments]
    if {![string match *-Djava.awt.headless=true* $oldJvmOptions]} {
            set newJvmOptions [list "$oldJvmOptions -Djava.awt.headless=true"]
            $AdminConfig modify $jvm "{genericJvmArguments $newJvmOptions}"
            $AdminConfig save
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Script pour changer la résolution de l'écran
    Par PoichOU dans le forum Windows
    Réponses: 1
    Dernier message: 30/12/2010, 18h14
  2. Script pour changer valeur des paramètres régionaux
    Par Foxtrot dans le forum Windows XP
    Réponses: 0
    Dernier message: 14/12/2007, 19h38
  3. script pour changer le texte d'un div
    Par timaii dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 25/10/2007, 14h26
  4. Un script pour changer le password d'un utilisateur sans droit root.
    Par black.myst dans le forum Administration système
    Réponses: 2
    Dernier message: 03/02/2007, 15h30
  5. Boucles pour changer des valeurs
    Par adurand dans le forum Access
    Réponses: 7
    Dernier message: 29/01/2007, 17h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo