Specify running objects using the wsadmin scripting tool
Use scripting and the wsadmin tool to specify running objects.
See the topic on starting the wsadmin scripting client.
We can run wsadmin commands that obtain object names and specify running objects.
Tasks
- Obtain the configuration ID with one of the following ways:
- Obtain the object name with the completeObjectName command, for example:
- Jacl:
set var [$AdminControl completeObjectName template]- Jython:
var = AdminControl.completeObjectName(template)
Element Description set Jacl command var Variable name $ Jacl operator for substituting a variable name with its value AdminControl Enable the manipulation of MBeans running in a WebSphere server process completeObjectName AdminControl command template is a string containing a segment of the object name to be matched. The template has the same format as an object name with the following pattern: [domainName]:property=value[,property=value]*. See Object name, Attribute, Attribute list. If there are several MBeans that match the template, the completeObjectName command only returns the first match. The matching MBean object name is then assigned to a variable.
To look for server1 MBean in mynode, use the following example:
- Jacl:
set server1 [$AdminControl completeObjectName node=mynode,type=Server,name=server1,*]- Jython:
server1 = AdminControl.completeObjectName('node=mynode,type=Server,name=server1,*')
- Obtain the object name with the queryNames command, for example:
- Jacl:
set var [$AdminControl queryNames template]- Jython:
var = AdminControl.queryNames(template)
Element Description set Jacl command var variable name $ Jacl operator for substituting a variable name with its value AdminControl Enable the manipulation of MBeans running in a product process. queryNames AdminControl command template string containing a segment of the object name to be matched. The template has the same format as an object name with the following pattern: [domainName]:property=value[,property=value]*
- If there are more than one running objects returned from the queryNames command, the objects are returned in a list syntax. One simple way to retrieve a single element from the list is to use the lindex command in Jacl and split command in Jython. The following example retrieves the first running object from the server list:
- Jacl:
set allServers [$AdminControl queryNames type=Server,*] set aServer [lindex $allServers 0]- Jython:
allServers = AdminControl.queryNames('type=Server,*') # get line separator import java lineSeparator = java.lang.System.getProperty('line.separator') aServer = allServers.split(lineSeparator)[0]
For other ways to manipulate the list and then perform pattern matching to look for a specified configuration object, refer to the topic on Jacl syntax.
We can now use the running object in with other AdminControl commands that require an object name as a parameter.
Related:
ObjectName, Attribute, and AttributeList classes Use wsadmin scripting with Jacl (deprecated) Start the wsadmin scripting client wsadmin AdminControl Commands for the AdminControl object