wsadmin スクリプト・ツールによる実行オブジェクトの指定
スクリプトと wsadmin ツールを使用して、実行中オブジェクトを指定します。
始める前に
このタスクを開始する前に、wsadmin ツールが稼働している必要があります。 『wsadmin スクリプト・クライアントの開始』トピックを参照してください。
このタスクについて
オブジェクト名を取得する wsadmin コマンドを実行し、実行中のオブジェクトを指定することができます。
手順
- 以下のいずれかの方法で、構成 ID を取得します。
- completeObjectName コマンドを使用して、オブジェクト名を取得します。以下に例を示します。
- Jacl を使用:
set var [$AdminControl completeObjectName template]
- Jython を使用:
var = AdminControl.completeObjectName(template)
表 1. AdminConfig completeObjectName コマンドの説明. テンプレートを指定して completeObjectName コマンドを実行します。 エレメント 説明 set Jacl コマンドです。 var 変数名です。 $ 変数名を値で置換する Jacl 演算子です。 AdminControl WebSphere® サーバー・プロセスで稼働する MBean の操作を使用可能にするオブジェクトです。 completeObjectName AdminControl コマンドです。 template 一致するオブジェクト名のセグメントを含むストリングです。このテンプレートは、以下のパターンのオブジェクト名と同じフォーマットです。[domainName]:property=value[,property=value]* 詳しくは、『オブジェクト名、属性、属性リスト』を参照してください。 このテンプレートに一致する MBean が複数ある 場合、completeObjectName コマンドは、最初の一致のみを戻します。 次に、一致する MBean オブジェクト名が変数に割り当てられます。
mynode にある server1 MBean を探すには、次の例のようにします。
- Jacl を使用:
set server1 [$AdminControl completeObjectName node=mynode,type=Server,name=server1,*]
- Jython を使用:
server1 = AdminControl.completeObjectName('node=mynode,type=Server,name=server1,*')
- queryNames コマンドを使用して、オブジェクト名を取得します。以下に例を示します。
- Jacl を使用:
set var [$AdminControl queryNames template]
- Jython を使用:
var = AdminControl.queryNames(template)
表 2. AdminControl queryNames コマンドの説明. テンプレートを指定して queryNames コマンドを実行します。 エレメント 説明 set Jacl コマンドです。 var 変数名です。 $ 変数名を値で置換する Jacl 演算子です。 AdminControl 製品プロセスで稼働する MBean の操作を 使用可能にするオブジェクトです。 queryNames AdminControl コマンドです。 template 一致するオブジェクト名のセグメントを含むストリングです。 このテンプレートは、以下のパターンのオブジェクト名と同じフォーマットです。[domainName]:property=value[,property=value]*
- completeObjectName コマンドを使用して、オブジェクト名を取得します。以下に例を示します。
- queryNames コマンドから戻される実行オブジェクトが複数ある場合は、これらのオブジェクトは、リスト構文で戻されます。リストから単一のエレメントを検索する簡単な方法の 1 つに、lindex コマンド (Jacl) および split コマンド (Jython) を使用する方法があります。以下の例では、サーバー・リストから最初の実行オブジェクトを検索しています。
- 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]
リストを操作してからパターン・マッチングを実行し、指定された構成オブジェクトを検索するその他の方法については、Jacl 構文に関するトピックを参照してください。
タスクの結果
これで、パラメーターとしてオブジェクト名を必要とする その他の AdminControl コマンドで、この実行オブジェクトを使用することができます。


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_specifyrunobj
ファイル名:txml_specifyrunobj.html