asadmin get、set、および list コマンドは、Application Server の抽象階層に対するナビゲーションメカニズムを提供するために、連携して動作します。階層には、 configuration と monitoring の 2 つがあり、これらのコマンドはこの両方に対して機能します。list コマンドでは、読み取り専用または変更可能な属性を持つ管理コンポーネントの完全修飾のドット表記名で表示されます。
configuration 階層は、変更可能な属性を提供します。一方、monitoring 階層にある管理コンポーネントの属性は純粋に読み取り専用です。configuration 階層は、大まかにドメインのスキーマドキュメントに基づいていますが、 monitoring 階層は少し異なっています。
list コマンドを使用すると、必要な階層内の特定の管理コンポーネントに到達できます。次に、get および set コマンドを呼び出すと、すぐに管理コンポーネントの属性の名前と値を取得したり、値を設定することができます。ワイルドカード (*) オプションを使用すると、指定した完全修飾のドット表記名の中から、一致するものをすべて取得できます。ナビゲーション可能な階層および管理コンポーネントの詳細な説明については、例を参照してください。
アプリケーションサーバーのドット表記名では、名前全体を複数部分に分けるための区切り文字として「.」(ピリオド) を使用します。これは、Unix ファイルシステムで、ファイルの絶対パス名のレベルを「/」を使用して区切る方法と同じです。get、set、および list コマンドによって受け入れられるドット表記名を形成する場合、次の規則が適用されます。特定のコマンドには追加のセマンティクスが適用されることに留意してください。
. (ピリオド) は常に、名前を連続した 2 つの部分に区切ります。
名前の 1 つの部分は、通常、アプリケーションサーバーのサブシステムまたはその固有のインスタンス、あるいはその両方を特定します。次に例を示します。 web-container、log-service、thread-pool-1 など。
名前の一部に . (ピリオド) が含まれている場合は、. の前に \ (バックスラッシュ) を付けて、区切り文字として機能しないようにする必要があります。
* (アスタリスク) は、ドット表記名の任意の場所で使用できます。これは正規表現におけるワイルドカード文字のような役割を果たします。また、* によって、ドット表記名のすべての部分を折りたたむことができます。「<classname>this.is.really.long.hierarchy </classname>」のような長形式のドット表記名を「<classname>th*.hierarchy</classname>」に短縮することができます。ただし、. は常に名前の区切りに使われることに注意してください。
ドット表記名の最上位のスイッチは -‐monitor または -m であり、所定のコマンド行で個別に指定されます。このスイッチが存在するかしないかによって、アプリケーションサーバー管理の 2 つの階層 (monitoring と configuration) のどちらを選択するのかが示されます。
ワイルドカード文字をまったく含まない完全なドット表記名を使用する場合は、list および get/set では、セマンティクスが少し異なります。
list コマンドは、この完全なドット表記名を、抽象階層内の親ノードの完全な名前として処理します。この名前を list コマンドに与えると、そのレベルの直接の子ノードの名前が単に返されます。たとえば、list server.applications.web-module では、ドメインまたはデフォルトのサーバーに配備されたすべての Web モジュールが一覧表示されます。
get および set コマンドは、この完全なドット表記名を、ノードの属性の完全修飾名 (ノードのドット表記名そのものが、このドット表記名の最後の部分を削除したときに取得する名前となる) として処理し、その属性の値を取得または設定します。これはこのような属性が存在する場合です。したがって、最初からこれを実行することはできません。まず、階層内の特定のノードの属性名を見つけるために、ワイルドカード文字の * を使用する必要があります。たとえば、server.applications.web-module.JSPWiki.context-root* では、ドメインまたはデフォルトサーバーに配備された Web アプリケーションのコンテキストルートが返されます。
list コマンドは、これら 3 つのコマンドのナビゲーション機能では、必ず最初に来るものです。特定のアプリケーションサーバーのサブシステムの属性を set (設定) または get (取得) する場合は、そのドット表記名を知っておく必要があります。list コマンドを使用すると、サブシステムのドット表記名を見つけることができます。たとえば、/ で始まる大規模なファイルシステム内の特定のファイルの変更日 (属性) を検索する場合を考えます。最初に、そのファイルのファイルシステム内での場所を検索し、その属性を確認する必要があります。したがって、appserver の階層を理解するための最初の 2 つのコマンドは、 * list "*" と <command>* list * -‐monitor になります。これらのコマンドのソートされた出力を確認するには、get、set、または list コマンドのマニュアルページを参照してください。