Stopping applications using wsadmin scripting
You can use the wsadmin tool to stop applications.
Before you begin
There are two ways to complete this task. The example in this topic uses the AdminControl object to stop the application. Alternatively, you can use the scripts in the AdminApplication script library to start, stop, and administer your application configurations.
Procedure
- Start the wsadmin scripting tool.
- Identify the application manager MBean for the server where the application resides, and
assign it to the
appManagervariable.-
Using Jacl:
set appManager [$AdminControl queryNames cell=mycell,node=mynode,type= ApplicationManager,process=server1,*] -
Using Jython:
appManager = AdminControl.queryNames('cell=mycell,node=mynode,type= ApplicationManager,process=server1,*') print appManager
Table 1. queryNames command elements. Run the queryNames command to get the name of the application manager MBean. Command element Description setis a Jacl command appManageris a variable name $is a Jacl operator for substituting a variable name with its value AdminControlis an object that enables the manipulation of MBeans running in a WebSphere® server process queryNamesis an AdminControl command cell=mycell,node=mynode,type=ApplicationManager,process=server1is the hierarchical containment path of the configuration object printis a Jython command This command returns the application manager MBean.
Example output:WebSphere:cell=mycell,name=ApplicationManager,mbeanIdentifier=ApplicationManager, type=ApplicationManager,node=mynode,process=server1 -
- Query the running applications belonging to this server and assign the result to the apps
variable.
-
Using Jacl:
set apps [$AdminControl queryNames cell=mycell,node=mynode,type=Application,process=server1,*] -
Using Jython:
# get line separator import java.lang.System as sys lineSeparator = sys.getProperty('line.separator') apps = AdminControl.queryNames('cell=mycell,node=mynode,type=Application, process=server1,*').split(lineSeparator) print apps
Table 2. queryNames command elements. Run the queryNames command to query running applications. Command element Description setis a Jacl command appsis a variable name $is a Jacl operator for substituting a variable name with its value AdminControlis an object that enables the manipulation of MBeans running in a WebSphere server process queryNamesis an AdminControl command cell=mycell,node=mynode,type=ApplicationManager,process=server1is the hierarchical containment path of the configuration object printis a Jython command This command returns a list of application MBeans.
Example output:WebSphere:cell=mycell,name=adminconsole,mbeanIdentifier=deployment.xml #ApplicationDeployment_1,type=Application,node=mynode,Server=server1, process=server1,J2EEName=adminconsole WebSphere:cell=mycell,name=filetransfer,mbeanIdentifier=deployment.xml #ApplicationDeployment_1,type=Application,node=mynode,Server=server1, process=server1,J2EEName=filetransfer -
- Stop all the running applications.
-
Using Jacl:
foreach app $apps { set appName [$AdminControl getAttribute $app name] $AdminControl invoke $appManager stopApplication $appName} -
Using Jython:
for app in apps: appName = AdminControl.getAttribute(app, 'name') AdminControl.invoke(appManager, 'stopApplication', appName)
This command stops all the running applications by invoking the stopApplication operation on the MBean, passing in the application name to stop. -
Results
Once you complete the steps for this task, all running applications on the server are stopped.