この付録では、Mbean とその属性を指定するために使用可能なドット表記名属性について説明します。domain.xml ファイル内のすべての要素は対応する MBean を持ちます。これらの名前は、「個々の名前をピリオドで区切る」という構文規則に従うため、「ドット表記名」と呼ばれます。
* (アスタリスク) は、ドット表記名の任意の場所で使用できます。これは正規表現におけるワイルドカード文字のような役割を果たします。ワイルドカード文字を使用すると、ドット表記名のすべての部分を折りたたむことができるという利点があります。たとえば、this.is.really.long.hierarchy などの長形式のドット表記名を、th*.hierarchy に短縮することができます。ただし、常に. を使用して名前を区切ります。* によって、ドット表記名の全体を一覧表示できます。
この付録の内容は次のとおりです。
domain.xml ファイル内のすべてのトップレベル要素で、次の条件が満たされている必要があります。
サーバー、設定、クラスタ、またはノードエージェントの名前はそれぞれ一意である必要があります。
サーバー、設定、クラスタ、またはノードエージェントに「domain」という名前を付けることはできません。
サーバーインスタンスに「agent」という名前を付けることはできません。
次の表に、トップレベル要素と対応するドット表記名プレフィックスを示します。
要素名 |
ドット表記名プレフィックス |
---|---|
applications |
domain.applications |
resources |
domain.resources |
configurations |
domain.configs |
servers |
domain.servers この要素に含まれるすべてのサーバーは、server-name としてアクセス可能です。ここで、server-name は、server サブ要素の name 属性の値です。 |
clusters |
domain.clusters この要素に含まれるすべてのクラスタは、cluster-name としてアクセス可能です。ここで、cluster-name は、cluster サブ要素の name 属性の値です。 |
node-agents |
domain.node-agents |
lb-configs |
domain.lb-configs |
system-property |
domain.system-property |
次の 2 つのレベルの別名が利用可能です。
1 つ目のレベルの別名を使えば、プレフィックス domain.servers または domain.clusters を使わずにサーバーインスタンスまたはクラスタの属性にアクセスできます。したがって、たとえば、server1 という形式のドット表記名は、ドット表記名 domain.servers.server1 (server1 は特定のサーバーインスタンス) にマッピングされます。
2 つ目のレベルの別名を使えば、特定のクラスタまたはスタンドアロンサーバーインスタンス (ターゲット) の設定、アプリケーション、およびリソースを参照できます。
次の表に、サーバー名またはクラスタ名で始まるドット表記名と、それらの別名であるドメイン配下のトップレベル名を示します。
ドット表記名 |
別名 |
説明 |
---|---|---|
target.applications.* |
domain.applications.* |
この別名の解決結果は、target のみによって参照されるアプリケーションになります。 |
target.resources.* |
domain.resources.* |
この別名の解決結果は、target によって参照されるすべての jdbc-connection-pool、connector-connection-pool、resource-adapter-config、およびその他のすべてのリソースになります。 |
次の表に、サーバー名またはクラスタ名で始まるドット表記名と、それらの別名である、そのサーバーまたはクラスタによって参照されている設定内のトップレベル名を示します。
ドット表記名 |
別名 |
---|---|
target.http-service |
config-name.http-service |
target.iiop-service |
config-name.iiop-service |
target.admin-service |
config-name.admin-service |
target.web-container |
config-name.web-container |
target.ejb-container |
config-name.ejb-container |
target.mdb-container |
config-name.mdb-container |
target.jms-service |
config-name.jms-service |
target.log-service |
config-name.log-service |
target.security-service |
config-name.security-service |
target.transaction-service |
config-name.transaction-service |
target.monitoring-service |
config-name.monitoring-service |
target.java-config |
config-name.java-config |
target.availability-service |
config-name.availability-service |
target.thread-pools |
config-name.thread-pools |
クラスタ化されたインスタンスでは、別名を使用すべきではありません。クラスタ化されたインスタンスの特定のシステムプロパティーを取得する際のドット表記名属性は、clustered-instance-name.system-property ではなく、domain.servers.clustered-instance-name.system-property のように記述してください。
asadmin get、set、および list コマンドは、Application Server の抽象階層に対するナビゲーションメカニズムを提供するために、連携して動作します。階層には、設定と監視の 2 つがあり、これらのコマンドはこの両方に対して機能します。list コマンドでは、読み取り専用または変更可能な属性を持つ管理コンポーネントの完全修飾のドット表記名で表示されます。
設定階層は、変更可能な属性を提供します。一方、監視階層にある管理コンポーネントの属性は純粋に読み取り専用です。設定階層は、大まかにドメインのスキーマドキュメントに基づいています。list コマンドを使用すると、必要な階層内の特定の管理コンポーネントに到達できます。次に、get および set コマンドを呼び出すと、管理コンポーネントの属性の名前と値を取得したり、値を設定することができます。ワイルドカード (*) オプションを使用すると、指定した完全修飾のドット表記名の中から一致するものをすべて取得することができます。get、set、および list コマンドの使用例については、次のマニュアルページを参照してください。