Notes de version de Sun Java System Application Server 9.1 Update 1-9.1 Update 2

Administration

Cette section traite des problèmes connus liés à l'administration et les solutions associées.

Le script package-appclient ne fonctionne pas si le fichier domain1 est manquant (6171458)

Description

Par défaut, as-install/lib/package-appclient.xml comporte une valeur codée en dur pour la variable AS_ACC_CONFIG de domain1, pointée par asenv.conf. Si domain1 est supprimé et qu'un autre domaine est créé, la variable AS_ACC_CONFIG n'est pas mise à jour avec le nouveau nom de domaine, ce qui provoque l'échec du script package-appclient .

Solution

Effectuez l'une des opérations suivantes :

  1. Conservez domain1 intact et créez vos propres domaines en tenant compte de celui-ci.

  2. Supprimez domain1 et remplacez la valeur codée en dur de domain1 dans as-install/lib/package-appclient.xml par le nouveau nom de domaine.

Cette procédure devra être effectuée à chaque création d'un nouveau domaine si domain1 n'est pas présent.

Le démarrage d'Application Server avec un agent JMX supplémentaire n'est pas pris en charge (6200011)

Description

La version J2SE1.4.x, 5.0 ou version ultérieure peut être configurée sur Application Server. La fonction de démarrage d'un agent JMX est intégrée à la plate-forme J2SE 5.0. Un agent est activé lorsque vous définissez explicitement les propriétés système lors du démarrage du serveur.

Voici quelques exemples de valeurs:


name="com.sun.management.jmxremote" value="true"
name="com.sun.management.jmxremote.port" value="9999"
name="com.sun.management.jmxremote.authenticate" value="false"
name="com.sun.management.jmxremote.ssl" value="false"

Une fois les propriétés JMX configurées et le serveur démarré, un nouveau serveur jmx-connector est démarré dans la machine virtuelle d'Application Server. L'un des effets secondaires non désirés de cette opération est que celle-ci nuit aux fonctions d'administration ; la console d'administration d'Application Server et l'interface de ligne de commande peuvent alors produire des résultats inattendus. Le problème provient du fait qu'il existe des conflits entre le serveur jmx-connector intégré et le nouveau serveur jmx-connector.

Solution

Si vous utilisez jconsole (ou tout autre client JMX-compliant), pensez à réutiliser le serveur de connecteurs JMX standard lancé au démarrage d'Application Server.

Lorsque le serveur démarre, une ligne similaire à celle indiquée ci-dessous s'affiche dans le journallog. Vous pouvez vous connecter à l'URL JMXService spécifié et exécutez les mêmes opérations de configuration/gestion après avoir fourni des données d'authentification correctes ; par exemple :


[#|2004-11-24T17:49:08.203-0800|INFO|sun-appserver-ee8.1|
javax.enterprise.system.tools.admin|_ThreadID=10;|ADM1501: 
Here is the JMXServiceURL for the JMXConnectorServer: 
[service:jmx:rmi:///jndi/rmi://hostname:8686/management/
rmi-jmx-connector]. This is where the remote administrative 
clients should connect using the JSR 160 JMX Connectors.|#]

Pour plus d'informations, reportez-vous au manuel Sun Java System Application Server 9.1 Administration Guide .

Le fichier de configuration de l'équilibreur de charge n'est pas créé avec l'URL d'extrémité d'un service Web (6236544, 6275436)

Description

Lors de la configuration de l'équilibreur de charge avec une application dotée d'un module EJB qui exporte l'URL d'un service Web, la racine du contexte du service Web ne figure pas dans le fichier loadbalancer.xml en résultant.

Solution

  1. Modifiez le fichier loadbalancer.xml de manière à ajouter le module Web manquant comme suit :


    <web-module context-root="context-root-name"
    disable-timeout-in-minutes="30" enabled="true"/>
  2. Remplacez la valeur context-root-name par le nom de la racine de contexte du service Web présenté comme EJB.

Le redémarrage d'serveur d'application à l'aide de sun-appserv-admin génère une erreur LoginException. (6288893)

Solution

  1. Renommez le script existant as-install/bin/asant en asant.bak.

  2. Copiez le fichier asant.template de as-install /lib/install/templates/ee (pour la version SE/EE) dans le répertoire as-install /bin/, puis renommez-le en asant.

  3. Modifiez le script copié as-install/bin/asant en remplaçant le jeton %CONFIG_HOME% par as-install/config.

  4. En cas de modifications manuelles apportées au fichier asant.bak , fusionnez-les dans le nouveau script asant.

Le fichier .asadmintruststore n'est pas décrit dans la documentation d'serveur d'application (6315957)

Description

Le fichier .asadmintruststore n'est pas présenté dans la documentation d'serveur d'application. Si ce fichier n'existe pas dans le répertoire home de l'administrateur, vous pouvez rencontrer de graves bogues lors de la mise à niveau d'applications hébergées sur le serveur.

Solution

Échec du démarrage des instances clusterisées suite à l'expiration du délai d'accès au courtier JMS (6523663)

Description

Le mode d'intégration MQ par défaut d'une instance clusterisée d'serveur d'application est LOCAL. Lorsqu'serveur d'application est installé dans un emplacement (PATH) long (c'est-à-dire « non court »), imqbrokerscv.exe s'arrête brutalement au démarrage de l'instance clusterisée. Le problème provient d'une allocation de mémoire incorrecte dans imqbrokersvc.

Solution

Il est nécessaire de modifier le type de service JMS pour l'instance clusterisée, de la valeur par défaut LOCAL sur REMOTE. Avec cette configuration, toutes les instances pointent vers le courtier DAS. Suivez les instructions ci-dessous pour configurer un cluster en mode REMOTE.


Remarque –

Avec le mode REMOTE, toutes les instances n'utilisent qu'un seul courtier (DAS), par conséquent aucun cluster de courtier n'est créé au démarrage du cluster d'serveur d'application. Pour plus d'informations, reportez-vous à la section Auto-clustering de la section 4.1, division iii de la page unique sur http://www.glassfishwiki.org/gfwiki/attach/OnePagersOrFunctionalSpecs/as-mq-integration-gfv2.txt. La fonctionnalité susmentionnée ne sera pas disponible.


ProcedureUtilisation de la ligne de commande

Avant de commencer

Modifiez le port et le fichier de mots de passe selon votre environnement. Notez que dans les instructions ci-dessous, le nom du cluster est racluster, le port d'administration DAS est 5858 et le port JMS DAS 7676 .

  1. Modifiez la configuration du cluster, en changeant le type JMS sur REMOTE .


    as-install/bin/asadmin.bat set --port 5858 --user admin --passwordfile \
    as-install/bin/password_file racluster.jms-service.type=REMOTE
  2. Créez un hôte JMS correspondant à l'hôte JMS DAS.


    as-install/bin/asadmin.bat create-jms-host --port 5858 --user admin --passwordfile \
    as-install/bin/password_file --target racluster --mqhost localhost --mqport 7676 \
    --mquser admin --mqpassword admin dashost
  3. Définissez l'hôte JMS DAS créé à l'étape précédente comme le nouvel hôte JMS par défaut.


    as-install/bin/asadmin.bat set --port 5858 --user admin --passwordfile \
    as-install/bin/password_file racluster.jms-service.default-jms-host=dashost

ProcedureUtilisation de l'IG d'administration

  1. Accédez à Configurations->cluster-name-config->Java Message Service->Hôtes JMS.

  2. Cliquez sur Nouveau pour créer un nouvel hôte JMS ; nommez-le dashost.

  3. Entrez les paramètres de configuration correspondant au service JMS pour le DAS ; les valeurs par défaut sont les suivantes :

    • Hostname: localhost

    • Port : 7676

    • Utilisateur administrateur : admin

    • Password: admin

    Modifiez ces paramètres au besoin pour votre service JMS DAS.

  4. Retournez à l'onglet Java Message Service, puis modifiez le type de service JMS sur REMOTE (défini sur LOCAL par défaut).

  5. Choisissez dashost à partir de la liste déroulante default-jms-host.

  6. Enregistrez vos modifications, puis démarrez votre agent de nœud ou votre cluster.

Impossible d'afficher le diagramme jmaki sous les navigateurs Netscape 8.1.3, Mozilla 1.7 et Safari 2.0.4 (6543014)

Description

Lorsque vous essayez d'afficher un diagramme de la page de contrôle des statistiques de journalisation à l'aide d'un navigateur non pris en charge, le message d'erreur suivant peut s'afficher :


Error loading jmaki.widgets.jmaki.charting.line.Widget : id=form1:jmaki_chart11
Script: http://easqelx5.red.iplanet.com:4848/resources/jmaki/charting/ \
line/component.js (line:5437).
Message: area.initialize is not a function

Solution

Utilisez un navigateur pris en charge. Reportez-vous à la section Navigateurs pour obtenir la liste des navigateurs pris en charge par serveur d'application 9.1 Update 1.

Changements des ports par défaut dans chaque version principale d'AS (6566481)

Description

Dans les trois dernières versions principales d'serveur d'application, le port d'administration par défaut a été modifié. De manière plus spécifique, les ports d'administration par défaut dans 7.x, 8. x et 9.x sont les suivants :

Solution

Il ne s'agit pas d'un bogue mais d'un fait à prendre en compte. Le port d'administration par défaut est simplement une recommandation. Nous pensons d'ailleurs que les prochaines versions d'serveur d'application conserveront le port 4848.

La commande create-domain échoue avec le mot de passe principal personnalisé sous AIX (6628170)

Description

Sous le système d'exploitation AIX, toute tentative de création de domaine avec un mot de passe principal personnalisé échoue avec l'erreur suivante :


keytool error (likely untranslated): java.lang.NullPointerException
 Enter keystore password:  New keystore password:

ProcedureSolution : (AIX) Créer un domaine avec un mot de passe principal personnalisé


Remarque –

Dans la procédure suivante, seules les options requises pour chaque étape sont présentées. Si vous avez besoin d'options supplémentaires pour une commande, spécifiez ces options directement dans la commande. Pour plus d'informations sur les commandes serveur d'application, reportez-vous au manuel Sun Java System Application Server 9.1 Update 1-9.1 Update 2 Reference Manual .


  1. Créez un script shell comportant les lignes de code suivantes :

    #!/bin/sh
    changeKeystorePass() {
      keytool -storepasswd -keystore ${KEYSTORE} -storepass ${OLD} -new ${NEW}
    }
    changeTruststorePass() {
      keytool -storepasswd -keystore ${TRUSTSTORE} -storepass ${OLD} -new ${NEW}
    }
    changeKeyPass() {
      keytool -keypasswd -alias s1as -keystore ${KEYSTORE} -storepass ${NEW} -keypass ${OLD} -new ${NEW}
    }
    changeDomainPasswordEntry() {
      keytool -storepasswd -storetype JCEKS -keystore ${DOMAINPASSWORDS} -storepass ${OLD} -new ${NEW}
    }
    deleteMasterPasswordFile() {
      if [ -f ${DOMAIN_PATH}/master-password ] ; then
        echo Deleting ${DOMAIN_PATH}/master-password
        rm -f ${DOMAIN_PATH}/master-password
      fi
    }
    DOMAIN_PATH=$1
    OLD=$2
    NEW=$3
    if [ $# != 3 ] ; then
      echo Usage: $0 domain-path old-master-pass new-master-pass
      exit 1
    fi
    echo Processing ...
    if [ ! -f ${DOMAIN_PATH}/config/domain.xml ] ; then
      echo "Domain with folder ${DOMAIN_PATH} does not exist, create it first"
      exit 2
    else
      KEYSTORE=${DOMAIN_PATH}/config/keystore.jks
      TRUSTSTORE=${DOMAIN_PATH}/config/cacerts.jks
      DOMAINPASSWORDS=${DOMAIN_PATH}/config/domain-passwords
      changeKeystorePass
      changeTruststorePass
      changeKeyPass
      changeDomainPasswordEntry
      deleteMasterPasswordFile
    fi
  2. Créez un domaine en spécifiant le mot de passe principal par défaut.


    aadmin create-domain {--adminport aminportno|--portbase portbase} domain-name
    Please enter the admin user name>admin-user
    Please enter the admin password>admin-user-password
    Please enter the admin password again>admin-user-password
    Please enter the master password [Enter to accept the default]:>
    Please enter the master password again [Enter to accept the default]:>

    Le mot de passe principal par défaut est changeit.

  3. Modifiez le mot de passe principal du domaine tout juste créé.

    Pour ce faire, exécutez le script créé à l'Étape 1.


    script-name domain-path old-password new-password
    
  4. Démarrez le domaine créé à l'Étape 2.


    asadmin start-domain domain-name
    

    Étant donné que le domaine comporte un mot de passe principal personnalisé, vous êtes invité à saisir le mot de passe principal.

  5. À l'invite correspondante, entrez votre nouveau mot de passe principal.

  6. Pour les domaines configurés pour prendre les clusters en charge, créez et démarrez un agent de nœud.

    1. Créez un agent de noeud pour le domaine réalisé à l'Étape 2.


      asadmin create-node-agent --port portno --user admin-user
      
    2. Démarrez l'agent de noeud créé à l'Étape a.


      asadmin start-node-agent
      

      Étant donné que le domaine comporte un mot de passe principal personnalisé, vous êtes invité à saisir le mot de passe principal.

    3. À l'invite correspondante, entrez votre nouveau mot de passe principal.

Voir aussi

Les principales pages d'serveur d'application :

AIX : 0403-027 The parameter list is too long (la liste des paramètres est trop longue) (6625591)

Description

Sous le système d'exploitation AIX, certaines opérations liées au SE risquent d'échouer avec le message d'erreur suivant :


0403-027 The parameter list is too long

Ce type d'opérations comprend par exemple le déploiement d'applications ou l'exécution du conteneur client de l'application.

Ce problème survient généralement en présence de longs chemins de fichier dans la variable d'environnement CLASSPATH.

Solution

Utilisez l'une des solutions suivantes :

Procedure(AIX) Augmenter la taille maximale de la ligne de commande

L'attribut ncargs détermine la longueur maximale de la ligne de commande, notamment des variables d'environnement. Sous le système d'exploitation AIX, la valeur par défaut de l'attribut ncargs est de 4 blocs de 4 Ko. Pour vous assurer que les commandes d'serveur d'application ne dépassent pas la longueur maximale de la ligne de commande, augmentez cette valeur sur 16 blocs de 4 Ko.


Remarque –

Après avoir modifié la valeur de l'attribut ncargs, il n'est pas nécessaire de redémarrer ou de réinitialiser les démons.


  1. Déterminez la valeur de l'attribut ncargs.


    lsattr -EH -l sys0 | grep ncargs
    
  2. Si la valeur de l'attribut ncargs est inférieure à 16 blocs de 4 Ko, augmentez cette valeur sur 16.


    chdev -l sys0 -a ncargs=16