Commands for the AdminControl object
Overview
Use the AdminControl object to invoke operational commands that deal with running objects in the WebSphere Application Server. Many of the AdminControl commands have multiple signatures so that they can either invoke in a raw mode using parameters that are specified by JMX, or by using strings for parameters. In addition to operational commands, the AdminControl object supports some utility commands for tracing, reconnecting with a server, and converting data types.
The following commands are available for the AdminControl object:
completeObjectName
Creates a string representation of a complete ObjectName value that is based on a fragment. This command does not communicate with the server to find a matching ObjectName value. If it finds several MBeans that match the fragment, the command returns the first one.
- Parameters: name-java.lang.String
- Returns: java.lang.String
Example usage:
set serverON [$AdminControl completeObjectName node=mynode,type=Server,*]serverON = AdminControl.completeObjectName('node=mynode,type=Server,*')
getAttribute
Returns the value of the attribute for the name that you provide.
- Parameters: name-java.lang.String; attribute-java.lang.String
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] $AdminControl getAttribute $objNameString processTypeobjNameString = AdminControl.completeObjectName('WebSphere:type=Server,*') AdminControl.getAttribute(objNameString, 'processType')
getAttribute_jmx
Returns the value of the attribute for the name that you provide.
- Parameters: name-ObjectName; attribute-java.lang.String
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] set objName [java::new javax.management.ObjectName $objNameString] $AdminControl getAttribute_jmx $objName processTypeobjNameString = AdminControl.completeObjectName('WebSphere:type=Server,*') import javax.management as mgmt objName = mgmt.ObjectName(objNameString) AdminControl.getAttribute_jmx(objName, 'processType')
getAttributes
Returns the attribute values for the names that you provide.
- Parameters using Jacl: name-String; attributes-java.lang.String
- Parameters using Jython: name-String; attributes-java.lang.String or name-String; attributes-java.lang.Object[]
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] $AdminControl getAttributes $objNameString "cellName nodeName"Jython with string attributes
objNameString = AdminControl.completeObjectname('WebSphere:type=Server,*) AdminControl.getAttributes(objNameString, '[cellName nodeName]')Jython with object attributes
objNameString = AdminControl.completeObjectname('WebSphere:type=Server,*) AdminControl.getAttributes(objNameString, ['cellName', 'nodeName'])
getAttributes_jmx
Returns the attribute values for the names that you provide.
- Parameters: name-ObjectName; attributes-java.lang.String[]
- Returns: javax.management.AttributeList
Example usage:
set objectNameString [$AdminControl completeObjectName WebSphere:type=Server,*] set objName [$AdminControl makeObjectName $objectNameString] set attrs [java::new {String[]} 2 {cellName nodeName}] $AdminControl getAttributes_jmx $objName $attrsobjectNameString = AdminControl.completeObjectName('type=Server,*') objName = AdminControl.makeObjectName(objectNameString) attrs = ['cellName', 'nodeName'] AdminControl.getAttributes_jmx(objName, attrs)
getCell
Returns the name of the connected cell.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getCellAdminControl.getCell()Example output
Mycell
getConfigId
Creates a configuration ID from an ObjectName or an ObjectName fragment. Use this ID with the $AdminConfig command. Not all MBeans that run have configuration objects that correspond. If several MBeans correspond to an ObjectName fragment, a warning is created and a configuration ID builds for the first MBean it finds.
- Parameters: name-java.lang.String
- Returns: java.lang.String
Example usage:
set threadpoolCID [$AdminControl getConfigId node=mynode,type=ThreadPool,*]threadpoolCID = AdminControl.getConfigId('node=mynode,type=ThreadPool,*')
getDefaultDomain
Returns the default domain name from the server.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getDefaultDomainAdminControl.getDefaultDomain()Example output
WebSphere
getDomainName
Returns the domain name from the server.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getDomainNameAdminControl.getDomainName()Example output
WebSphere
getHost
Returns the name of your host.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getHostAdminControl.getHost()Example output
myhost
getMBeanCount
Returns the number of MBeans that are registered in the server.
- Parameters: None
- Returns: java.lang.Integer
Example usage:
$AdminControl getMBeanCountAdminControl.getMBeanCount()Example output
114
getMBeanInfo_jmx
Returns the Java Management Extension MBeanInfo structure that corresponds to an ObjectName value. No string signature exists for this command, because the Help object displays most of the information available from the getMBeanInfo command.
- Parameters: name-ObjectName
- Returns: javax.management.MBeanInfo
Example usage:
set objectNameString [$AdminControl completeObjectName type=Server,*] set objName [$AdminControl makeObjectName $objectNameString] $AdminControl getMBeanInfo_jmx $objNameobjectNameString = AdminControl.completeObjectName('type=Server,*') objName = AdminControl.makeObjectName(objectNameString) AdminControl.getMBeanInfo_jmx(objName)Example output
javax.management.modelmbean.ModelMBeanInfoSupport@10dd5f35
getNode
Returns the name of the connected node.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getNodeAdminControl.getNode()Example output
Myhost
getPort
Returns the name of your port.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getPortAdminControl.getPort()Example output
8877
getPropertiesForDataSource
Deprecated, no replacement.
This command incorrectly assumes the availability of a configuration service when running in connected mode.
- Parameters: configId-java.lang.String
- Returns: java.lang.String
Example usage:
set ds [lindex [$AdminConfig list DataSource] 0] $AdminControl getPropertiesForDataSource $dsds = AdminConfig.list('DataSource') # get line separator import java.lang.System as sys lineSeparator = sys.getProperty('line.separator') dsArray = ds.split(lineSeparator) AdminControl.getPropertiesForDataSource(dsArray[0])Example output
WASX7389E: Operation not supported - getPropertiesForDataSource command is not supported.
getType
Returns the connection type.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl getTypeAdminControl.getType()Example output
SOAP
help
Returns general help text for the AdminControl object.
- Parameters: None
- Returns: java.lang.String
Example usage:
$AdminControl helpAdminControl.help()Example output
WASX7027I: The AdminControl object enables the manipulation of MBeans that run in a WAS process. The number and type of MBeans that are available to the scripting client depend on the server to which the client is connected. If the client is connected to a deployment manager, then all the MBeans running in the Deployment Manager are visible, as are all the MBeans running in the node agents that are connected to this deployment manager, and all the MBeans that run in the application servers on those nodes. The following commands are supported by the AdminControl object; more detailed information about each of these commands is available by using the "help" command of the AdminControl object and supplying the name of the command as an argument. Many of these commands support two different sets of signatures: one that accepts and returns strings, and one low-level set that works with JMX objects like ObjectName and AttributeList. In most situations, the string signatures are likely to be more useful, but JMX-object signature versions are supplied as well. Each of these JMX-object signature commands has "_jmx" appended to the command name, so an "invoke" command, as well as a "invoke_jmx" command are supported. completeObjectName Return a String version of an object name given a template name getAttribute_jmx Given ObjectName and name of attribute, returns value of attribute getAttribute Given String version of ObjectName and name of attribute, returns value of attribute getAttributes_jmx Given ObjectName and array of attribute names, returns AttributeList getAttributes Given String version of ObjectName and attribute names, returns String of name value pairs getCell returns the cell name of the connected server getConfigId Given String version of ObjectName, return a config id for the corresponding configuration object, if any. getDefaultDomain returns "WebSphere" getDomainName returns "WebSphere" getHost returns String representation of connected host getMBeanCount returns number of registered beans getMBeanInfo_jmx Given ObjectName, returns MBeanInfo structure for MBean getNode returns the node name of the connected server getPort returns String representation of port in use getType returns String representation of connection type in use help Show help information invoke_jmx Given ObjectName, name of command, array of parameters and signature, invoke command on MBean specified invoke Invoke a command on the specified MBean isRegistered_jmx true if supplied ObjectName is registered isRegistered true if supplied String version of ObjectName is registered makeObjectName Return an ObjectName built with the given string queryNames_jmx Given ObjectName and QueryExp, retrieves set of ObjectNames that match. queryNames Given String version of ObjectName, retrieves String of ObjectNames that match. reconnect reconnects with server setAttribute_jmx Given ObjectName and Attribute object, set attribute for MBean specified setAttribute Given String version of ObjectName, attribute name and attribute value, set attribute for MBean specified setAttributes_jmx Given ObjectName and AttributeList object, set attributes for the MBean specified startServer Given the name of a server, start that server. stopServer Given the name of a server, stop that server. testConnection Test the connection to a DataSource object trace Set the wsadmin trace specification
help
Returns help text for the specific command of the AdminControl object. The command name is not case sensitive.
- Parameters: command-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl help getAttributeAdminControl.help('getAttribute')Example output
WASX7043I: command: getAttribute Arguments: object name, attribute Description: Returns value of "attribute" for the MBean described by "object name."
invoke
Invokes the object operation without any parameter. Returns the result of the invocation.
- Parameters: name- java.lang.String; operationName- java.lang.String
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] $AdminControl invoke $objNameString stopobjNameString = AdminControl.completeObjectName('WebSphere:type=Server,*') AdminControl.invoke(objNameString, 'stop')
invoke
Invokes the object operation using the parameter list that you supply. The signature generates automatically. The types of parameters are supplied by examining the MBeanInfo that the MBean supplies. Returns the string result of the invocation. The string that is returned is controlled by the Mbean method that you invoked. If the Mbean method is synchronous, then control is returned back to the wsadmin tool only when the operation is complete. If the Mbean method is asynchronous, control is returned back to the wsadmin tool immediately even though the invoked task might not be complete.
- Parameters: name-java.lang.String; operationName-java.lang.String; params-java.lang.String
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] $AdminControl invoke $objNameString appendTraceString com.ibm.*=all=enabledobjNameString = AdminControl.completeObjectName('WebSphere:type=Server,*') AdminControl.invoke(objNameString, 'appendTraceString', 'com.ibm.*=all=enabled')
invoke
Invokes the object operation by conforming the parameter list to the signature. Returns the result of the invocation.
- Parameters: name-java.lang.String; operationName-java.lang.String; params-java.lang.String; sigs-java.lang.String
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] $AdminControl invoke $objNameString appendTraceString com.ibm.*=all=enabled java.lang.StringobjNameString = AdminControl.completeObjectName('WebSphere:type=Server,*') AdminControl.invoke(objNameString, 'appendTraceString', 'com.ibm.*=all=enabled', 'java.lang.String')
invoke_jmx
Invokes the object operation by conforming the parameter list to the signature. Returns the result of the invocation.
- Parameters: name-ObjectName; operationName-java.lang.String; params- java.lang.Object[]; signature-java.lang.String[]
- Returns: java.lang.Object
Example usage
set objNameString [$AdminControl completeObjectName WebSphere:type=TraceService,*] set objName [java::new javax.management.ObjectName $objNameString] set parms [java::new {java.lang.Object[]} 1 com.ibm.ejs.sm.*=all=disabled] set signature [java::new {java.lang.String[]} 1 java.lang.String] $AdminControl invoke_jmx $objName appendTraceString $parms $signatureobjNameString = AdminControl.completeObjectName('WebSphere:type=TraceService,*') import javax.management as mgmt objName = mgmt.ObjectName(objNameString) parms = ['com.ibm.ejs.sm.*=all=disabled'] signature = ['java.lang.String'] AdminControl.invoke_jmx(objName, 'appendTraceString', parms, signature)
isRegistered
If the ObjectName value is registered in the server, then the value is true.
- Parameters: name-java.lang.String
- Returns: Boolean
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=Server,*] $AdminControl isRegistered $objNameStringobjNameString = AdminControl.completeObjectName('WebSphere:type=Server,*') AdminControl.isRegistered(objNameString)
isRegistered_jmx
If the ObjectName value is registered in the server, then the value is true.
- Parameters: name-ObjectName
- Returns: Boolean
Example usage:
set objectNameString [$AdminControl completeObjectName type=Server,*] set objName [$AdminControl makeObjectName $objNameString] $AdminControl isRegistered_jmx $objNameobjectNameString = AdminControl.completeObjectName('type=Server,*') objName = AdminControl.makeObjectName(objectNameString) AdminControl.isRegistered_jmx(objName)
makeObjectName
A convenience command that creates an ObjectName value that is based on the strings input. This command does not communicate with the server, so the ObjectName value that results might not exist. If the string you supply contains an extra set of double quotes, they are removed. If the string does not begin with a Java Management Extensions (JMX) domain, or a string followed by a colon, then the WAS string appends to the name.
- Parameters: name-java.lang.String
- Returns: javax.management.ObjectName
Example usage:
set objectNameString [$AdminControl completeObjectName type=Server,node=mynode,*] set objName [$AdminControl makeObjectName $objNameString]objectNameString = AdminControl.completeObjectName('type=Server,node=mynode,*') objName = AdminControl.makeObjectName(objectNameString)
queryNames
Returns a string that lists all the ObjectName objects based on the name template.
- Parameters: name-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl queryNames WebSphere:type=Server,*AdminControl.queryNames('WebSphere:type=Server,*')Example output
WebSphere:cell=BaseApplicationServerCell,name=server1,mbeanIdentifier=server1,type=Server,node=mynode,process=server1
queryNames_jmx
Returns a set of ObjectName objects that are based on the ObjectName object and the QueryExp query that you provide.
- Parameters: name-javax.management.ObjectName;query-javax.management.QueryExp
- Returns: java.util.Set
Example usage:
set objectNameString [$AdminControl completeObjectName type=Server,*] set objName [$AdminControl makeObjectName $objNameString] set null [java::null] $AdminControl queryNames_jmx $objName $nullobjectNameString = AdminControl.completeObjectName('type=Server,*') objName = AdminControl.makeObjectName(objectNameString) AdminControl.queryNames_jmx(objName, None)Example output
[WebSphere:cell=BaseApplicationServerCell,name=server1,mbeanIdentifier=server1,type=Server,node=mynode,process=server1]
reconnect
Reconnects to the server, and clears information out of the local cache.
- Parameters: None
- Returns: None
Example usage:
$AdminControl reconnectAdminControl.reconnect()Example output
WASX7074I: Reconnect of SOAP connector to host myhost completed.
setAttribute
Sets the attribute value for the name that you provide.
- Parameters: name-java.lang.String; attributeName-java.lang.String; attributeValue-java.lang.String
- Returns: None
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=TraceService,*] $AdminControl setAttribute $objNameString traceSpecification com.ibm.*=all=disabledobjNameString = AdminControl.completeObjectName('WebSphere:type=TraceService,*') AdminControl.setAttribute(objNameString, 'traceSpecification', 'com.ibm.*=all=disabled')
setAttribute_jmx
Sets the attribute value for the name that you provide.
- Parameters: name-ObjectName; attribute-javax.management.Attribute
- Returns: None
Example usage:
set objectNameString [$AdminControl completeObjectName WebSphere:type=TraceService,*] set objName [$AdminControl makeObjectName $objectNameString] set attr [java::new javax.management.Attribute traceSpecification com.ibm.*=all=disabled] $AdminControl setAttribute_jmx $objName $attrobjectNameString = AdminControl.completeObjectName('WebSphere:type=TraceService,*') import javax.management as mgmt objName = AdminControl.makeObjectName(objectNameString) attr = mgmt.Attribute('traceSpecification', 'com.ibm.*=all=disabled') AdminControl.setAttribute_jmx(objName, attr)
setAttributes
Sets the attribute values for the names that you provide and returns a list of successfully set names.
- Parameters using Jacl: name-String; attributes-java.lang.String
- Parameters using Jython: name-String; attributes-java.lang.String or name-String; attributes-java.lang.Object[]
- Returns: java.lang.String
Example usage:
set objNameString [$AdminControl completeObjectName WebSphere:type=TracesService,*] $AdminControl setAttributes $objNameString {{traceSpecification com.ibm.ws.*=all=enabled}}Jython with string attributes
objNameString = AdminControl.completeObjectName('WebSphere:type=TracesService,*') AdminControl.setAttributes(objNameString, '[[traceSpecification "com.ibm.ws.*=all=enabled"]]')Jython with object attributes
objNameString = AdminControl.completeObjectName('WebSphere:type=TracesService,*') 473 AdminControl.setAttributes(objNameString, [['traceSpecification', 'com.ibm.ws.*=all=enabled']])
setAttributes_jmx
Sets the attribute values for the names that you provide and returns a list of successfully set names.
- Parameters: name-ObjectName; attributes-javax.management.AttributeList
- Returns: javax.management.AttributeList
Example usage:
set objectNameString [$AdminControl completeObjectName WebSphere:type=TraceService,*] set objName [$AdminControl makeObjectName $objectNameString] set attr [java::new javax.management.Attribute traceSpecification com.ibm.ws.*=all=enabled] set alist [java::new javax.management.AttributeList] $alist add $attr $AdminControl setAttributes_jmx $objName $alistobjectNameString = AdminControl.completeObjectName('WebSphere:type=TraceService,*') import javax.management as mgmt objName = AdminControl.makeObjectName(objectNameString) attr = mgmt.Attribute('traceSpecification', 'com.ibm.ws.*=all=enabled') alist = mgmt.AttributeList() alist.add(attr) AdminControl.setAttributes_jmx(objName, alist)
startServer
Starts the specified application server by locating it in the configuration. This command uses the default wait time. We can only use this command if the scripting client is connected to a node agent. This command returns a message to indicate if the server starts successfully.
- Parameters: server name-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl startServer server1AdminControl.startServer('server1')
startServer
Starts the specified application server by locating it in the configuration. The start process waits the number of seconds specified by the wait time for the server to start. We can only use this command if the scripting client is connected to a node agent. This command returns a message to indicate if the server starts successfully.
- Parameters: server name-java.lang.String, wait time-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl startServer server1 100AdminControl.startServer('server1', 100)
startServer
Starts the specified application server by locating it in the configuration. This command uses the default wait time. We can use this command when the scripting client is either connected to a node agent or to a deployment manager process. It returns a message to indicate if the server starts successfully.
- Parameters: server name-java.lang.String, node name-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl startServer server1 myNodeAdminControl.startServer('server1', 'myNode')
startServer
Starts the specified application server by locating it in the configuration. The start process waits the number of seconds specified by the wait time for the server to start. Use this command when the scripting client is either connected to a node agent or to a deployment manager process. This command returns a message to indicate if the server starts successfully.
- Parameters: server name-java.lang.String, node name-java.lang.String, wait time-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl startServer server1 myNode 100AdminControl.startServer('server1', 'myNode', 100)
stopServer
Stops the specified application server. The command returns a message to indicate if the server stops successfully.
- Parameters: server name-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl stopServer server1AdminControl.stopServer('server1')
stopServer
Stops the specified application server. If you set the flag to immediate, the server stops immediately. Otherwise, a normal stop occurs. This command returns a message to indicate if the server stops successfully.
- Parameters: server name-java.lang.String, immediate flag-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl stopServer server1 immediateAdminControl.stopServer('server1', 'immediate')
stopServer
Stops the specified application server. This command returns a message to indicate if the server stops successfully.
- Parameters: server name-java.lang.String, node name-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl stopServer server1 myNodeAdminControl.stopServer('server1', 'my Node')
stopServer
Stops the specified application server. If you set the flag to immediate, the server stops immediately. Otherwise, a normal stop occurs. This command returns a message to indicate if the server stops successfully.
- Parameters: server name-java.lang.String, node name-java.lang.String, immediate flag-java.lang.String
- Returns: java.lang.String
Example usage:
$AdminControl stopServer server1 myNode immediateAdminControl.stopServer('server1', 'my Node', 'immediate')
testConnection
A convenience command communicates with the DataSourceCfgHelper MBean to test a DataSource connection. This command works with the DataSource that resides in the configuration repository. If the DataSource to be tested is in the temporary workspace that holds the update to the repository, you have to save the update to the configuration repository before running this command. Use this command with the configuration ID that corresponds to the DataSource and the WAS40DataSource object types. The return value is a message that contains the message indicating a successful connection or a connection with warning. If the connection fails, an exception is created from the server indicating the error.
- Parameters: configId-java.lang.String
- Returns: java.lang.String
Example usage:
set ds [lindex [$AdminConfig list DataSource] 0] $AdminControl testConnection $ds# get line separator import java.lang.System as sys lineSeparator = sys.getProperty('line.separator') ds = AdminConfig.list('DataSource').split(lineSeparator)[0] AdminControl.testConnection(ds)Example output
WASX7217I: Connection to provided datasource was successful.
testConnection
Deprecated.
This command can give false results and does not work when connected to a node agent. As of V5.0.2, the preferred way to test a data source connection is with the testConnection command that passes in the DataSource configId parameter as the only parameter.
- Parameters: configId-java.lang.String; props-java.lang.String
- Returns: java.lang.String
Example usage:
set ds [lindex [$AdminConfig list DataSource] 0] $AdminControl testConnection $ds {{prop1 val1}}# get line separator import java.lang.System as sys lineSeparator = sys.getProperty('line.separator') ds = AdminConfig.list('DataSource').split(lineSeparator)[0] AdminControl.testConnection(ds, '[[prop1 val1]]')Example output
WASX7390E: Operation not supported - testConnection command with config id and properties arguments is not supported. Use testConnection command with config id argument only.
trace
Sets the trace specification for the scripting process to the value that you specify.
- Parameters: traceSpec-java.lang.String
- Returns: None
Example usage:
$AdminControl trace com.ibm.ws.scripting.*=all=enabledAdminControl.trace('com.ibm.ws.scripting.*=all=enabled')
See Also
AdminControl object for scripted administration