Configuration d'application pour la gestion de session à l'aide de scripts
Cette tâche fournit un exemple dans lequel l'objet AdminConfig permet de configurer un gestionnaire de session pour l'application.
Avant de commencer
Une application doit être installée sur un serveur en cours d'exécution.
Pourquoi et quand exécuter cette tâche
L'objet AdminConfig permet de définir des configurations dans une application. Certains paramètres de configuration ne sont pas accessibles via l'objet AdminConfig.
Procédure
- Démarrez l'outil de scriptage wsadmin.
- Identifiez l'objet de configuration de déploiement pour l'application et affectez-le à la variable de déploiement. Remarque : Cette étape n'est pas nécessaire pour une application OSGi.Exemple :
- Langage Jacl :
test
set deployments [$AdminConfig getid /Deployment:myApp/]
- Langage Jython :
deployments = AdminConfig.getid('/Deployment:myApp/') print deployments
où :Tableau 1. Eléments de la commande getid. Exécutez la commande getid pour identifier un objet de déploiement. Elément Description set est une commande Jacl deployments est un nom de variable $ est un opérateur Jacl permettant de remplacer un nom de variable par sa valeur AdminConfig est un objet représentant la configuration WebSphere Application Server getid est une commande AdminConfig Déploiement est un attribut myApp est la valeur de l'attribut Exemple de sortie :myApp(cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#Deployment_1)
- Extrayez l'objet de déploiement d'applications et affectez-le à la variable appDeploy. Exemple :
- Langage Jacl :
set appDeploy [$AdminConfig showAttribute $deployments deployedObject]
- Langage Jython :
appDeploy = AdminConfig.showAttribute(deployments, 'deployedObject') print appDeploy
Remarque : Pour une application OSGi, utilisez le code jython suivant pour cette étape :appDeploy = AdminTask.getOSGiApplicationDeployedObject('-cuName nom_cu')
où :Tableau 2. Eléments de la commande set. Exécutez la commande set pour attribuer une valeur à l'objet de déploiement. Elément Description set est une commande Jacl appDeploy est un nom de variable $ est un opérateur Jacl permettant de remplacer un nom de variable par sa valeur AdminConfig est un objet représentant la configuration WebSphere Application Server showAttribute est une commande AdminConfig deployments a pour valeur l'ID de l'objet déploiement spécifié à l'étape numéro 1 deployedObject est un attribut nom_cu est le nom de l'unité de composition Exemple de sortie :(cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#ApplicationDeployment_1)
- Pour obtenir une liste des attributs que vous pouvez définir pour un gestionnaire de session, utilisez la commande attributes. Exemple :
- Langage Jacl :
$AdminConfig attributes SessionManager
- Langage Jython :
print AdminConfig.attributes('SessionManager')
où :Tableau 3. Eléments de la commande attributes. Exécutez la commande attributes pour répertorier les attributs d'un gestionnaire de session. Elément Description $ est un opérateur Jacl permettant de remplacer un nom de variable par sa valeur AdminConfig est un objet représentant la configuration WebSphere Application Server attributes est une commande AdminConfig SessionManager est un attribut Exemple de sortie :"accessSessionOnTimeout Boolean" "allowSerializedSessionAccess Boolean" "context ServiceContext@" "defaultCookieSettings Cookie" "enable Boolean" "enableCookies Boolean" "enableProtocolSwitchRewriting Boolean" "enableSSLTracking Boolean" "enableSecurityIntegration Boolean" "enableUrlRewriting Boolean" "maxWaitTime Integer" "properties Property(TypedProperty)*" "sessionDRSPersistence DRSSettings" "sessionDatabasePersistence SessionDatabasePersistence" "sessionPersistenceMode ENUM(DATABASE, DATA_REPLICATION, NONE)" "tuningParams TuningParams"
Si vous configurez une application de gestion de session, nous vous recommandons de définir chaque attribut.
Eviter les incidents: Si vous configurez les attributs de gestion de session pour un cluster, vous devez également mettre à jour l'élément targetMappings de l'objet AdminConfig pour le cluster avant l'application des paramètres spécifiés pour l'élément sessionManagment. Si vous ne mettez pas à jour l'élément targetMappings, les paramètres ne deviendront pas effectifs même s'ils figurent dans le fichier deployment.xml.gotcha
- Configurez les attributs du gestionnaire de session.
L'exemple ci-dessous définit quatre attributs de niveau supérieur dans le gestionnaire de session. Vous pouvez modifier l'exemple afin de définir d'autres attributs du gestionnaire de session, notamment les attributs imbriqués dans les types d'objet DRSSettings, SessionDataPersistence et TuningParms.
Eviter les incidents: Le gestionnaire de session requiert la définition des attributs defaultCookieSettings et tuningParams avant l'initialisation d'une application. Si vous ne définissez pas ces attributs, le gestionnaire de session ne peut pas initialiser l'application, et celle-ci ne démarre pas. gotcha
Pour répertorier les attributs pour ces types d'objet, utilisez la commande attributes de l'objet AdminConfig.
- Langage Jacl :
set attr1 [list enableSecurityIntegration true] set attr2 [list maxWaitTime 30] set attr3 [list sessionPersistenceMode NONE] set kuki [list maximumAge -1] set cookie [list $kuki] Set cookieSettings [list defaultCookieSettings $cookie] set attrs [list $attr1 $attr2 $attr3 $cookieSettings] set sessionMgr [list sessionManagement $attrs]
Exemple de sortie à l'aide de Jacl :sessionManagement {{enableSecurityIntegration true} {maxWaitTime 30} {sessionPersistenceMode NONE} {defaultCookieSettings {{maximumAge -1}}}}
- Langage Jython :
attr1 = ['enableSecurityIntegration', 'true'] attr2 = ['maxWaitTime', 30] attr3 = ['sessionPersistenceMode', 'NONE'] kuki = ['maximumAge', -1] cookie = [kuki] cookieSettings = ['defaultCookieSettings', cookie] attrs = [attr1, attr2, attr3, cookieSettings] sessionMgr = [['sessionManagement', attrs]]
Exemple de sortie à l'aide de Jython :[[sessionManagement, [[enableSecurityIntegration, true], [maxWaitTime, 30], [sessionPersistenceMode, NONE], [defaultCookieSettings [[maximumAge, -1]]]]
où :Tableau 4. Eléments de la commande set. Exécutez la commande set pour définir les attributs d'un gestionnaire de session. Elément Description set est une commande Jacl attr1, attr2, attr3, attrs, sessionMgr sont des noms de variable $ est un opérateur Jacl permettant de remplacer un nom de variable par sa valeur enableSecurityIntegration est un attribut true est une valeur de l'attribut enableSecurityIntegration maxWaitTime est un attribut 30 est une valeur de l'attribut maxWaitTime sessionPersistenceMode est un attribut AUCUNE est une valeur de l'attribut sessionPersistenceMode - Effectuez l'une des opérations suivantes :
- Créez le gestionnaire de session pour l'application. Exemple :
- Langage Jacl :
$AdminConfig create ApplicationConfig $appDeploy [list $sessionMgr]
- Langage Jython :
print AdminConfig.create('ApplicationConfig', appDeploy, sessionMgr)
où :Tableau 5. Eléments de la commande create. Exécutez la commande create pour créer un gestionnaire de session. Elément Description $ est un opérateur Jacl permettant de remplacer un nom de variable par sa valeur AdminConfig est un objet représentant la configuration WebSphere Application Server Créer est une commande AdminConfig ApplicationConfig est un attribut appDeploy évalue l'ID de l'application déployée spécifiée à l'étape 2 list est une commande Jacl sessionMgr évalue l'ID du gestionnaire de session mentionné à l'étape 4. Exemple de sortie :(cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#ApplicationConfig_1)
- Si un gestionnaire de session existe déjà, utilisez la commande modify de
l'objet AdminConfig pour mettre à jour sa configuration. Exemple :
- Langage Jacl :
set configs [lindex [$AdminConfig showAttribute $appDeploy configs] 0] set appConfig [lindex $configs 0] set SM [$AdminConfig showAttribute $appConfig sessionManagement] $AdminConfig modify $SM $attrs
- Langage Jython :
configs = AdminConfig.showAttribute (appDeploy, 'configs') appConfig = configs[1:len(configs)-1] SM = AdminConfig.showAttribute (appConfig, 'sessionManagement') AdminConfig.modify (SM, attrs)
- Créez le gestionnaire de session pour l'application. Exemple :
- Sauvegardez les modifications de configuration. Entrez l'exemple de commande suivante pour sauvegarder les modifications de configuration :
AdminConfig.save()
- Synchronisez le noeud. Utilisez les scripts syncActiveNode ou syncNode de la bibliothèque de scripts AdminNodeManagement pour propager les modifications de configuration sur un ou plusieurs noeudsµµ.
- Utilisez le script syncActiveNodes pour propager les modifications sur chacun des noeuds dans la cellule, comme dans l'exemple suivant :
AdminNodeManagement.syncActiveNodes()
- Utilisez le script syncNode pour propager les modifications sur un noeud spécifique, comme dans l'exemple suivant :
AdminNodeManagement.syncNode("myNode")
- Utilisez le script syncActiveNodes pour propager les modifications sur chacun des noeuds dans la cellule, comme dans l'exemple suivant :


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_sessionmgt
Nom du fichier : txml_sessionmgt.html