Exemple : utilisation des scripts pour la création et la configuration de planificateurs
Pour appeler un script Jacl et créer une ressource SchedulerConfiguration, utilisez l'outil de création de scripts wsadmin.
L'exemple de script Jacl suivant peut être appelé à l'aide de l'outil de création de scripts wsadmin, qui crée une ressource SchedulerConfiguration à l'aide du DefaultWorkManager à la portée du serveur.
# Exemple de script JACL pour créer une SchedulerConfiguration # à la portée du serveur # Modifier la cellule, le noeud et le serveur pour qu'ils correspondent à votre environnement set cellName MyCell set nodeName MyNode set serverName server1 # Seul le premier fournisseur peut être obtenu car il n'y en a qu'un # au niveau de la portée du serveur. set schedProv [$AdminConfig getid /Cell:$cellName/Node:$nodeName/Server:$serverName/SchedulerProvider:SchedulerProvider] if {$schedProv == ""} { puts "Le SchedulerProvider pour le serveur $serverName est introuvable. Abandon." exit } puts "Un SchedulerProvider a été trouvé" # Créer un WorkManager pour notre planificateur à la portée du serveur. # Nous pourrions utiliser l'une des autres portées à condition que celle-ci soit identique # ou supérieure à la portée du planificateur. set wrkMgrProv [$AdminConfig getid /Cell:$cellName/Node:$nodeName/Server:$serverName/WorkManagerProvider:WorkManagerProvider/] if {$wrkMgrProv == ""} { puts "Le WorkManagerProvider pour le serveur $serverName est introuvable. Abandon." exit } puts "Un WorkManagerProvider trouvé" set wmName "MyScheduler WorkManager" set wmJNDIName "wm/MySchedWorkManager" set wmIsGrowable false set wmMaxThreads 1 set wmMinThreads 0 set wmNumAlarmThreads 10 set wmServiceNames "com.ibm.ws.i18n;security;UserWorkArea;zos.wlm" set wmThreadPriority 5 # Définir les attributs DefaultWorkManager set createAttrs [subst { \ {isGrowable $wmIsGrowable} \ {jndiName $wmJNDIName} \ {maxThreads $wmMaxThreads} \ {minThreads $wmMinThreads} \ {name "$wmName"} \ {numAlarmThreads $wmNumAlarmThreads} \ {serviceNames "$wmServiceNames"} \ {threadPriority $wmThreadPriority} }] puts "Création d'un WorkManager" $AdminConfig create WorkManagerInfo $wrkMgrProv $createAttrs puts "Création du WorkManager terminée" # Définir les attributs SchedulerConfiguration set schedulerName MyScheduler set schedulerJNDIName sched/MyScheduler set datasourceJNDIName jdbc/MySchedulerDatasource set datasourceAlias MySchedulerAlias set pollInterval 30 set tablePrefix MSCD set useAdminRoles true set createAttrs [subst { \ {name $schedulerName} \ {datasourceJNDIName $datasourceJNDIName} \ {datasourceAlias $datasourceAlias} \ {jndiName $schedulerJNDIName} \ {pollInterval $pollInterval} \ {tablePrefix $tablePrefix} \ {useAdminRoles true} \ {workManagerInfoJNDIName $wmJNDIName}}] puts "Création d'un planificateur" $AdminConfig create SchedulerConfiguration $schedProv $createAttrs puts "Création du planificateur terminée" # Enregistrer la configuration $AdminConfig save