![[AIX Solaris HP-UX Linux Windows]](../images/dist.gif)
![[IBM i]](../images/iseries.gif)
Disabling application loading in deployed targets using wsadmin scripting
You can use the AdminConfig object and scripting to disable application loading in deployed targets.
About this task
The following example uses the AdminConfig object to disable application loading in deployed targets:
Procedure
- 啟動 wsadmin Scripting 工具。
- Obtain the Deployment object for the application and assign
it to the deployments variable, for example:
- Using Jacl:
set deployments [$AdminConfig getid /Deployment:myApp/]
- Using Jython:
deployments = AdminConfig.getid("/Deployment:myApp/")
Table 1. getid Deployment command elements. Run the getid command to get a deployment object. Element Description set is a Jacl command deployments is a variable name $ is a Jacl operator for substituting a variable name with its value AdminConfig is an object that represents the WebSphere® Application Server configuration getid is an AdminConfig command Deployment is an attribute myApp is the value of the application name 避免困難: If you are using the Jython scripting language, make sure that you read the notes concerning a space character within application names.gotcha
Example output:myApp(cells/mycell/applications/myApp.ear/deployments/myApp|deployment.xml#Deployment_1)
- Obtain the target mappings in the application and assign
them to the targetMappings variable, for example:
- Using Jacl:
set deploymentObj1 [$AdminConfig showAttribute $deployments deployedObject] set targetMap1 [lindex [$AdminConfig showAttribute $deploymentObj1 targetMappings] 0]
Example output:(cells/mycell/applications/ivtApp.ear/deployments/ivtApp|deployment.xml#DeploymentTargetMapping_1)
- Using Jython:
deploymentObj1 = AdminConfig.showAttribute(deployments, 'deployedObject') targetMap1 = AdminConfig.showAttribute(deploymentObj1, 'targetMappings') targetMap1 = targetMap1[1:len(targetMap1)-1].split(" ") print targetMap1
避免困難: When you attempt to obtain the target mappings in the application through scripting and then assigning those values to the targetMappings variable, be aware when the application has a space in the name or blank. In these cases, you must compensate for the occurrence of a blank or space character as the Jython example demonstrates. Errors can occur if you do not make this adjustment. Consider the following scenarios:
- If only one single DeploymentTargetMapping value
exists within the deployment.xml file, you can
either split the targetMappings value with a space
or a line.separator entry. The line.separator entry
syntax works when the application name contains a space, such as "IVT
Application". For example:
ortargetMap1 = targetMap1[1:len(targetMap1)-1].split(" ")
targetMap1 = targetMap1[1:len(targetMap1)-1].split(java.lang.System.getProperty("line.separator"))
- If multiple DeploymentTargetMapping values
exist within the deployment.xml file, split the targetMappings values
with a space. However, you must also use "\" and " ", as
appropriate, when the application name or deployment target string
contains a space character. For example:
targetMap1 = targetMap1[1:len(targetMap1)-1].split(" ")
Example output:['(cells/mycell/applications/ivtApp.ear/deployments/ivtApp|deployment.xml#DeploymentTargetMapping_1)']
- If only one single DeploymentTargetMapping value
exists within the deployment.xml file, you can
either split the targetMappings value with a space
or a line.separator entry. The line.separator entry
syntax works when the application name contains a space, such as "IVT
Application". For example:
Table 2. showAttribute command elements. Run the showAttribute command to assign target mappings. Element Description set is a Jacl command deploymentObj1 is a variable name $ is a Jacl operator for substituting a variable name with its value AdminConfig is an object that represents the WebSphere Application Server configuration showAttribute is an AdminConfig command deployments evaluates the ID of the Deployment object that is specified in step number 1 deployedObject is an attribute targetMap1 is a variable name targetMappings is an attribute lindex is a Jacl command print is a Jython command - Disable the loading of the application on each deployed
target, for example:
- Using Jacl:
foreach tm $targetMap1 {$AdminConfig modify $tm {{enable false}}}
- Using Jython:
for targetMapping in targetMap1: AdminConfig.modify(targetMapping, [["enable", "false"]])
- Save the configuration changes. 請利用下列指令範例來儲存您的配置變更:
AdminConfig.save()
- In a network deployment environment only,
synchronize the node. 請利用 AdminNodeManagement Script 程式庫中的 syncActiveNode 或 syncNode Script,將配置變更傳播給節點。
- 利用 syncActiveNodes Script,依照下列範例所示,將變更傳播給 Cell 中的每個節點:
AdminNodeManagement.syncActiveNodes()
- 利用 syncNode Script,依照下列範例所示,將變更傳播給特定的節點:
AdminNodeManagement.syncNode("myNode")
- 利用 syncActiveNodes Script,依照下列範例所示,將變更傳播給 Cell 中的每個節點:
Related reference:


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_appload
檔名:txml_appload.html