(57)【要約】【課題】運用者の利便性を向上させる。【解決手段】オブジェクト指向プログラミングにおけるオブジェクトを記憶するオブジェクト記憶部１３１と、オブジェクトを抽出するための抽出条件を受信する抽出条件受信部１０１と、受信した抽出条件に一致するオブジェクトをオブジェクト記憶部に記憶されているオブジェクトから抽出するオブジェクト抽出部１０２と、抽出したオブジェクトに共通する属性名および操作名を特定する共通項目特定部１０３と、特定した属性名および操作名をオブジェクトの属性項目および操作項目に設定し、受信した抽出条件を、オブジェクトを抽出する際に参照する抽出条件項目に設定してグループオブジェクトを生成するグループオブジェクト生成部１０６と、生成したグループオブジェクトをオブジェクト記憶部に登録するグループオブジェクト登録部１０７とを備える。【選択図】図１
2011053874.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト指向プログラミングにおけるオブジェクトを記憶する記憶部と、
前記オブジェクトを抽出するための抽出条件を受信する受信手段と、
前記受信手段によって受信された前記抽出条件に一致する前記オブジェクトを前記記憶部に記憶されている前記オブジェクトから抽出する抽出手段と、
前記抽出手段によって抽出された前記オブジェクトに共通する属性名および操作名を特定する特定手段と、
前記特定手段によって特定された前記属性名および前記操作名のうちの少なくとも１つをオブジェクトの属性項目および操作項目に設定し、前記受信手段によって受信された前記抽出条件を、前記操作項目に設定された前記操作名が指定されて実行されたときに参照するオブジェクトの抽出条件項目に設定してグループオブジェクトを生成する生成手段と、
前記生成手段によって生成された前記グループオブジェクトを前記オブジェクトとして前記記憶部に登録する登録手段と、
を備えることを特徴とするアプリケーションサーバ。
【請求項２】
前記抽出手段によって抽出された前記オブジェクトのオブジェクト名、ならびに前記特定手段によって特定された前記属性名および前記操作名を外部に送信する送信手段を、さらに備えることを特徴とする請求項１記載のアプリケーションサーバ。
【請求項３】
前記グループオブジェクトのオブジェクト名、ならびに前記特定手段によって特定された前記属性名および前記操作名のうちの少なくとも１つを指定して前記グループオブジェクトを生成するように要求する生成要求を受信する生成要求受信手段を、さらに備え、
前記生成手段は、前記生成要求に含まれる前記オブジェクト名を前記オブジェクトのオブジェクト名項目に設定し、前記生成要求に含まれる前記属性名および前記操作名を前記オブジェクトの属性項目および操作項目に設定してグループオブジェクトを生成することを特徴とする請求項１または２記載のアプリケーションサーバ。
【請求項４】
前記グループオブジェクトに対する操作として、前記グループオブジェクトの前記操作項目に設定されている前記操作名を指定して実行された場合に、当該グループオブジェクトの前記抽出条件項目に設定されている前記抽出条件に一致する前記オブジェクトを前記記憶部に記憶されている前記オブジェクトから抽出する操作実行時抽出手段と、
前記操作実行時抽出手段によって抽出された前記オブジェクトの前記操作項目に設定されている前記操作名のうち、前記実行された前記操作名と同一の前記操作名を指定して実行させる実行手段と、
をさらに備えることを特徴とする請求項１〜３のいずれか１項に記載のアプリケーションサーバ。
【請求項５】
前記グループオブジェクトの前記属性項目および前記操作項目に設定されている前記属性名および前記操作名のうちのいずれかの内容が変更された場合に、当該グループオブジェクトの前記抽出条件項目に設定されている前記抽出条件に一致する前記オブジェクトを前記記憶部に記憶されている前記オブジェクトから抽出する変更時抽出手段と、
前記変更時抽出手段によって抽出された前記オブジェクトの前記属性項目および前記操作項目に設定されている属性名および操作名の内容を、前記変更された前記属性名および前記操作名のうちのいずれかの内容にしたがって変更する変更手段と、
をさらに備えることを特徴とする請求項１〜４のいずれか１項に記載のアプリケーションサーバ。
【請求項６】
オブジェクト指向プログラミングにおけるオブジェクトを記憶する記憶部を有する装置において実行されるオブジェクト管理方法であって、
前記オブジェクトを抽出するための抽出条件を受信する受信ステップと、
前記受信ステップにおいて受信された前記抽出条件に一致する前記オブジェクトを前記記憶部に記憶されている前記オブジェクトから抽出する抽出ステップと、
前記抽出ステップにおいて抽出された前記オブジェクトに共通する属性名および操作名を特定する特定ステップと、
前記特定ステップにおいて特定された前記属性名および前記操作名のうちの少なくとも１つをオブジェクトの属性項目および操作項目に設定し、前記受信手段によって受信された前記抽出条件を、前記操作項目に設定された前記操作名が指定されて実行されたときに参照するオブジェクトの抽出条件項目に設定してグループオブジェクトを生成する生成ステップと、
前記生成ステップにおいて生成された前記グループオブジェクトを前記オブジェクトとして前記記憶部に登録する登録ステップと、
を含むことを特徴とするオブジェクト管理方法。
【請求項７】
請求項６に記載の各ステップをコンピュータに実行させるためのオブジェクト管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションサーバ、オブジェクト管理方法およびオブジェクト管理プログラムに関する。
【背景技術】
【０００２】
オブジェクト指向プログラムによるアプリケーションを管理・監視するフレームワークとしてJava（登録商標） Management Extensions（以下、「ＪＭＸ」という。)が知られている。このＪＭＸ仕様のアプリケーションサーバで管理されるオブジェクトは、ＪＭＸで標準化されているインターフェースを使用することでオブジェクトの属性名や操作名を取り扱うことができる。このようなシステムとして、例えば、下記特許文献１に記載されたアプリケーション管理システムがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２９５４６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ＪＭＸ仕様のインターフェースを使用してオブジェクトの属性名や操作名を取り扱う場合には、運用者にとって不便なことが多々ある。例えば、オブジェクトの操作名や属性名を表示させると、オブジェクトに設定されている全ての操作名や属性名が表示されてしまうことや、複数のオブジェクトに対して同一の作業を行う場合であっても、それぞれのオブジェクトに対して同一の作業を繰り返し行わなければならないこと等が挙げられる。
【０００５】
本発明は、上述した課題を解決するためになされたものであり、運用者の利便性を向上させることができるアプリケーションサーバ、オブジェクト管理方法およびオブジェクト管理プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明のアプリケーションサーバは、オブジェクト指向プログラミングにおけるオブジェクトを記憶する記憶部と、オブジェクトを抽出するための抽出条件を受信する受信手段と、受信手段によって受信された抽出条件に一致するオブジェクトを記憶部に記憶されているオブジェクトから抽出する抽出手段と、抽出手段によって抽出されたオブジェクトに共通する属性および操作を特定する特定手段と、特定手段によって特定された属性名および操作名のうちの少なくとも１つをオブジェクトの属性項目および操作項目に設定し、受信手段によって受信された抽出条件を、操作項目に設定された操作名が指定されて実行されたときに参照するオブジェクトの抽出条件項目に設定してグループオブジェクトを生成する生成手段と、生成手段によって生成されたグループオブジェクトをオブジェクトとして記憶部に登録する登録手段と、を備える。
【０００７】
本発明のオブジェクト管理方法は、オブジェクト指向プログラミングにおけるオブジェクトを記憶する記憶部を有する装置において実行されるオブジェクト管理方法であって、オブジェクトを抽出するための抽出条件を受信する受信ステップと、受信ステップにおいて受信された抽出条件に一致するオブジェクトを記憶部に記憶されているオブジェクトから抽出する抽出ステップと、抽出ステップにおいて抽出されたオブジェクトに共通する属性および操作を特定する特定ステップと、特定ステップにおいて特定された名および操作名のうちの少なくとも１つをオブジェクトの属性項目および操作項目に設定し、受信手段によって受信された抽出条件を、操作項目に設定された操作名が指定されて実行されたときに参照するオブジェクトの抽出条件項目に設定してグループオブジェクトを生成する生成ステップと、生成ステップにおいて生成されたグループオブジェクトをオブジェクトとして記憶部に登録する登録ステップと、を含む。
【０００８】
本発明のオブジェクト管理プログラムは、上記オブジェクト管理方法に含まれる各ステップをコンピュータに実行させる。
【発明の効果】
【０００９】
本発明によれば、運用者の利便性を向上させることができる。
【図面の簡単な説明】
【００１０】
【図１】実施形態におけるアプリケーションサーバの機能構成を示すブロック図である。
【図２】グループオブジェクトを登録する際の処理内容を模式的に示した図である。
【図３】グループオブジェクトを登録する際の処理手順を示すフローチャートである。
【図４】グループオブジェクトに属するオブジェクトを一括操作する際の処理内容を模式的に示した図である。
【図５】グループオブジェクトに属するオブジェクトを一括操作する際の処理手順を示すフローチャートである。
【図６】グループオブジェクトに属するオブジェクトの属性や操作を一括変更する際の処理手順を示すフローチャートである。
【図７】変形例におけるグループオブジェクトを登録する際の処理内容を模式的に示した図である。
【図８】変形例におけるグループオブジェクトに属するオブジェクトを一括操作する際の処理内容を模式的に示した図である。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して、本発明に係るアプリケーションサーバの好適な実施形態について説明する。
【００１２】
まず、図１を参照して、アプリケーションサーバを含むアプリケーション管理システムの構成について説明する。
【００１３】
図１に示すように、アプリケーション管理システム１は、アプリケーションサーバ１０と、管理ツール２０と、を備える。アプリケーションサーバ１０には、ＪＭＸが実装されている。アプリケーションサーバ１０は、オブジェクト指向プログラミングにおけるオブジェクトを管理する。管理ツール２０は、運用者が、アプリケーションサーバ１０のオブジェクトを取り扱う際に使用するツールである。管理ツール２０には、ＪＭＸで標準化されているインターフェースが含まれる。
【００１４】
図１を参照して、実施形態におけるアプリケーションサーバの機能構成について説明する。アプリケーションサーバ１０は、抽出条件受信部（受信手段）１０１と、オブジェクト抽出部（抽出手段）１０２と、共通項目特定部（特定手段）１０３と、抽出・特定結果送信部１０４（送信手段）と、グループオブジェクト生成要求受信部（生成要求受信手段；以下、「ＧＯ生成要求受信部」という。）１０５と、グループオブジェクト生成部（生成手段；以下、「ＧＯ生成部」という。）１０６と、グループオブジェクト登録部（登録手段；以下、「ＧＯ登録部」という。）１０７と、を有する。
【００１５】
また、アプリケーションサーバ１０は、グループオブジェクト操作実行受信部（以下、「ＧＯ操作実行受信部」という。）１１１と、グループオブジェクト変更処理受信部（以下、「ＧＯ変更処理受信部」という。）１１２と、対象オブジェクト抽出部（操作実行時抽出手段、変更時抽出手段）１１３と、操作実行部（実行手段）１１４と、変更処理部（変更手段）１１５と、をさらに有する。アプリケーションサーバ１０には、オブジェクトを記憶するオブジェクト記憶部（記憶部）１３１が備えられている。
【００１６】
オブジェクトには、各種の情報を設定するための項目が設けられている。設定項目としては、例えば、オブジェクト名項目、属性項目、操作項目および抽出条件項目がある。オブジェクト名項目には、オブジェクトを一意に特定するオブジェクト名称が設定される。また、オブジェクト名項目には、オブジェクトタイプを設定することもできる。オブジェクトタイプとしては、例えば、“application”や“resource”、“service”がある。属性項目および操作項目には、オブジェクトによって提供されるサービスを運用する際に必要となる属性（データ）の名称および操作（メソッド）の名称がそれぞれ設定される。属性名としては、例えば、オブジェクトの状態を表す“state”がある。操作名としては、例えば、サービスを起動するための“start”、サービスを停止するための“stop”、オブジェクトを検索するための“query”、オブジェクトを登録するための“create”、オブジェクトを削除するための“delete”がある。抽出条件項目には、query操作を実行するときの抽出条件（データ）が設定される。
【００１７】
抽出条件受信部１０１は、オブジェクト記憶部１３１から所定のオブジェクトを抽出するための抽出条件を管理ツール２０から受信する。抽出条件は、運用者が所望するオブジェクトをオブジェクト記憶部１３１から抽出するための条件である。抽出条件は、例えば、抽出対象となるオブジェクトのオブジェクト名を正規表現した文字列で表現することができる。具体的には、nameキーが任意の値であり、typeキーがapplicationであるオブジェクト名を有するオブジェクトを抽出する場合には、“name=*,type=application”が抽出条件となる。このような抽出条件は、例えば、管理ツール２０を使用する運用者が、抽出・生成用オブジェクトのquery操作を実行する際に設定することができる。
【００１８】
オブジェクト抽出部１０２は、抽出条件受信部１０１によって受信された抽出条件に一致するオブジェクトをオブジェクト記憶部１３１から抽出する。
【００１９】
共通項目特定部１０３は、オブジェクト抽出部１０２によって抽出されたオブジェクトに共通する属性名および操作名を特定する。
【００２０】
抽出・特定結果送信部１０４は、オブジェクト抽出部１０２によって抽出されたオブジェクトのオブジェクト名と、共通項目特定部１０３によって特定された属性名および操作名とを、管理ツール２０に送信する。
【００２１】
ＧＯ生成要求受信部１０５は、グループオブジェクトの生成要求を管理ツール２０から受信する。生成要求は、グループオブジェクトを生成するように要求する際に発行されるメッセージである。生成要求には、例えば、生成するグループオブジェクトのオブジェクト名、属性名および操作名や、自グループオブジェクトに属するオブジェクトを抽出する際に用いるオブジェクト名の抽出条件が含まれる。生成要求のオブジェクト名には、運用者が任意に指定したオブジェクトの名称が設定される。生成要求の属性名および操作名には、共通項目特定部１０３によって特定された共通の属性名および操作名が設定される。生成要求の抽出条件には、抽出条件受信部１０１によって受信された抽出条件が設定される。このような生成要求に含まれる各情報は、例えば、管理ツール２０を使用する運用者が、抽出・生成用オブジェクトのcreate操作を実行する際に設定することができる。
【００２２】
なお、生成要求に、オプションとして、共通の属性名および操作名の中から運用者が任意に選択した属性名や操作名の抽出条件を、さらに含めることができる。これにより、自グループオブジェクトに属するオブジェクトを抽出する際に、抽出対象となるオブジェクトの属性名や操作名を、この抽出条件で指定した属性名や操作名に限定することができる。
【００２３】
ＧＯ生成部１０６は、生成要求に含まれる情報に基づいてグループオブジェクトを生成する。具体的に、ＧＯ生成部１０６は、グループオブジェクトのオブジェクト名項目に対して生成要求に含まれるグループオブジェクト名を設定し、グループオブジェクトの属性項目および操作項目に対して生成要求に含まれる属性名および操作名を設定する。また、ＧＯ生成部１０６は、グループオブジェクトの抽出条件項目に対して生成要求に含まれるオブジェクト名の抽出条件を設定する。なお、オプションとして、属性名や操作名の抽出条件が生成要求に含まれている場合に、ＧＯ生成部１０６は、グループオブジェクトの抽出条件項目に対して生成要求に含まれる属性名や操作名の抽出条件をさらに追加設定する。
【００２４】
ＧＯ登録部１０７は、ＧＯ生成部１０６によって生成されたグループオブジェクトをオブジェクト記憶部１３１に登録する。
【００２５】
ＧＯ操作実行受信部１１１は、管理ツール２０を使用する運用者によってグループオブジェクトの操作が実行された場合に、グループオブジェクトの操作が実行されたことを示す操作実行メッセージを管理ツール２０から受信する。操作実行メッセージには、例えば、操作が実行されたグループオブジェクトのオブジェクト名と、実行された操作名とが含まれる。
【００２６】
ＧＯ変更処理受信部１１２は、管理ツール２０を使用する運用者によってグループオブジェクトの属性名および操作名のうちのいずれかの内容が変更された場合に、グループオブジェクトの属性名および操作名の内容が変更されたことを示す変更メッセージを管理ツール２０から受信する。変更メッセージには、例えば、変更されたグループオブジェクトのオブジェクト名と、変更された内容とが含まれる。なお、属性名および操作名の内容には、属性名および操作名そのものの内容と、属性名および操作名によって特定されるモジュールの内容とが含まれる。
【００２７】
対象オブジェクト抽出部１１３は、ＧＯ操作実行受信部１１１またはＧＯ変更処理受信部１１２によって操作実行メッセージまたは変更メッセージが受信された場合に、グループオブジェクトの抽出条件項目に設定されている抽出条件に一致するオブジェクトをオブジェクト記憶部１３１から抽出する。
【００２８】
操作実行部１１４は、対象オブジェクト抽出部１１３によって抽出されたオブジェクトの操作項目に設定されている操作名のうち、操作実行メッセージに含まれる操作名と同一の操作名を指定して実行する。
【００２９】
変更処理部１１５は、対象オブジェクト抽出部１１３によって抽出されたオブジェクトの属性項目および操作項目に設定されている属性名および操作名の内容を、変更メッセージに含まれる変更内容にしたがって変更する。
【００３０】
ここで、アプリケーションサーバ１０は、物理的には、ＣＰＵと、メモリと、入出力インターフェースとを含んで構成される。メモリには、例えば、ＣＰＵで処理されるプログラムやデータを記憶するＲＯＭやＨＤＤと、主として制御処理のための各種作業領域として使用されるＲＡＭとが含まれる。これらの要素は、互いにバスを介して接続されている。ＣＰＵが、ＲＯＭに記憶されたプログラムを実行し、入出力インターフェースを介して受信される各種のメッセージや、ＲＡＭに展開された各種のデータを用いて処理することで、上述したアプリケーションサーバ１０における各部の機能を実現することができる。
【００３１】
次に、図面を参照して、本実施形態におけるアプリケーションサーバ１０の動作について説明する。
【００３２】
まず、図２および図３を参照して、グループオブジェクトを登録する際の動作について説明する。図２は、グループオブジェクトを登録する際の処理内容を模式的に示した図である。図３は、グループオブジェクトを登録する際の処理手順を示すフローチャートである。
【００３３】
動作を説明するにあたり、説明の便宜上、アプリケーションサーバ１０のオブジェクト記憶部１３１には、サービスＡ、サービスＢ、サービスＣを実行するためのオブジェクトとして、オブジェクトＡ、オブジェクトＢ、オブジェクトＣが登録されていることとする。
【００３４】
オブジェクトＡのオブジェクト名項目には“moduleA”が設定されており、オブジェクトタイプ項目には“application”が設定されており、属性項目には“state”が設定されており、操作項目には“start”および“stop”が設定されている。オブジェクトＢのオブジェクト名項目には“moduleB”が設定されており、オブジェクトタイプ項目には“application”が設定されており、属性項目には“state”が設定されており、操作項目には“start”および“stop”が設定されている。オブジェクトＣのオブジェクト名項目には“moduleC”が設定されており、オブジェクトタイプ項目には“resource”が設定されており、属性項目には“state”が設定されており、操作項目には“start”および“stop”が設定されている。
【００３５】
また、オブジェクト記憶部１３１には、アプリケーションサーバ１０においてオブジェクトを抽出する際やオブジェクトを生成する際に使用する抽出・生成用オブジェクトが登録されている。抽出・生成用オブジェクトのオブジェクト名項目には“jmx-service”が格納されており、オブジェクトタイプ項目には“service”が設定されており、操作項目には“query”、“create”および“delete”が設定されている。なお、図２には、以下で説明するグループオブジェクトを登録する際の動作によって生成されるグループオブジェクトＸが既に図示されている。以下に、このグループオブジェクトＸを登録する際の動作について説明する。
【００３６】
最初に、運用者が管理ツール２０を使用して抽出・生成用オブジェクトのquery操作を実行すると、アプリケーションサーバ１０の抽出条件受信部１０１は、query操作によって発行された抽出条件を管理ツール２０から受信する（ステップＳ１０１）。本動作では、抽出条件として、“name=*,type=application”が受信されたこととする。
【００３７】
続いて、アプリケーションサーバ１０のオブジェクト抽出部１０２は、抽出条件受信部１０１によって受信された抽出条件に一致するオブジェクトをオブジェクト記憶部１３１から抽出する（ステップＳ１０２）。本動作では、抽出・生成用オブジェクトによってオブジェクトＡおよびオブジェクトＢが抽出される。
【００３８】
続いて、アプリケーションサーバ１０の共通項目特定部１０３は、オブジェクト抽出部１０２によって抽出されたオブジェクトに共通する属性名および操作名を特定する（ステップＳ１０４）。本動作では、抽出・生成用オブジェクトによって“state”、“start”および“stop”が共通の属性名および操作名として特定される。
【００３９】
続いて、アプリケーションサーバ１０の抽出・特定結果送信部１０４は、上記ステップＳ１０２で抽出されたオブジェクトのオブジェクト名と、上記ステップＳ１０４で特定された共通の属性名および操作名とを、管理ツール２０に送信する（ステップＳ１０５）。これにより、管理ツール２０の画面上には、オブジェクトＡおよびオブジェクトＢのオブジェクト名である“moduleA”および“moduleB”と、オブジェクトＡおよびオブジェクトＢに共通の属性名および操作名となる“state”、“start”および“stop”とが表示される。つまり、運用者は、グループ化の対象となるオブジェクトに共通する属性名・操作名のみを確認することができる。
【００４０】
続いて、運用者が管理ツール２０を使用して抽出・生成用オブジェクトのcreate操作を実行すると、アプリケーションサーバ１０のＧＯ生成要求受信部１０５は、create操作によって発行されたグループオブジェクトの生成要求を管理ツール２０から受信する（ステップＳ１０６）。本動作では、create操作において、グループオブジェクト名として”name=moduleX,type=application”が指定され、グループオブジェクトの属性名として”state”が指定され、グループオブジェクトの操作名として“start”および“stop”が指定され、自グループオブジェクトに属するオブジェクトの抽出条件として“name=*,type=application”が指定されたこととする。生成要求には、create操作で指定された上記各情報が含まれることとなる。
【００４１】
続いて、アプリケーションサーバ１０のＧＯ生成部１０６は、生成要求に含まれる各情報に基づいてグループオブジェクトを生成する（ステップＳ１０７）。これにより、グループオブジェクトＸが生成される。
【００４２】
続いて、ＧＯ登録部１０７は、生成されたグループオブジェクトＸをオブジェクト記憶部１３１に登録する（ステップＳ１０８）。
【００４３】
次に、図４および図５を参照して、グループオブジェクトに属するオブジェクトを一括操作する際の動作について説明する。図４は、グループオブジェクトに属するオブジェクトを一括操作する際の処理内容を模式的に示した図である。図５は、グループオブジェクトに属するオブジェクトを一括操作する際の処理手順を示すフローチャートである。
【００４４】
最初に、運用者が管理ツール２０を使用してグループオブジェクトＸのstart操作を実行すると、アプリケーションサーバ１０のＧＯ操作実行受信部１１１は、start操作によって発行された操作実行メッセージを管理ツール２０から受信する（ステップＳ２０１）。この操作実行メッセージには、グループオブジェクトＸのオブジェクト名である”name=moduleX,type=application”と、実行された操作名である“start”とが含まれる。
【００４５】
続いて、アプリケーションサーバ１０の対象オブジェクト抽出部１１３は、グループオブジェクトＸの抽出条件項目に設定されている抽出条件に一致するオブジェクトをオブジェクト記憶部１３１から抽出する（ステップＳ２０２）。本動作では、グループオブジェクトＸの抽出条件項目に設定されているオブジェクト名の抽出条件“name=*,type=application”に基づいて、抽出・生成用オブジェクトのquery操作を実行することとなる。これにより、オブジェクトＡおよびオブジェクトＢが抽出されることとなる。なお、抽出・生成用オブジェクトのquery操作ではなく、グループオブジェクトのquery操作を実行することとしてもよい。
【００４６】
続いて、アプリケーションサーバ１０の操作実行部１１４は、上記ステップＳ２０２で抽出されたオブジェクトの操作項目に設定されている操作名のうち、上記ステップＳ２０１で受信された操作実行メッセージに含まれる操作名と同一の操作名を指定して実行する（ステップＳ２０４）。本動作では、オブジェクトＡの“start”操作とオブジェクトＢの“start”操作とが、それぞれ実行されることとなる。これにより、サービスＡとサービスＢとがそれぞれ稼働することとなる。
【００４７】
次に、図６を参照して、グループオブジェクトに属するオブジェクトの属性名や操作名を一括変更する際の動作について説明する。図６は、グループオブジェクトに属するオブジェクトの属性名や操作名を一括変更する際の処理手順を示すフローチャートである。
【００４８】
最初に、運用者が管理ツール２０を使用してグループオブジェクトＸの属性名および操作名のうちのいずれかの内容を変更すると、アプリケーションサーバ１０のＧＯ変更処理受信部１１２は、変更処理によって発行された変更メッセージを管理ツール２０から受信する（ステップＳ３０１）。この変更メッセージには、グループオブジェクトＸの属性名や操作名に対する変更内容が含まれる。
【００４９】
続いて、アプリケーションサーバ１０の対象オブジェクト抽出部１１３は、グループオブジェクトＸの抽出条件項目に設定されている抽出条件に一致するオブジェクトをオブジェクト記憶部１３１から抽出する（ステップＳ３０２）。本動作では、グループオブジェクトＸの抽出条件項目に設定されているオブジェクト名の抽出条件“name=*,type=application”に基づいて、抽出・生成用オブジェクトのquery操作を実行することとなる。これにより、オブジェクトＡおよびオブジェクトＢが抽出されることとなる。
【００５０】
続いて、アプリケーションサーバ１０の変更処理部１１５は、上記ステップＳ３０２で抽出されたオブジェクトの属性項目および操作項目に設定されている属性名および操作名の内容を、上記ステップＳ３０１で受信された変更メッセージに含まれる変更内容にしたがって変更する（ステップＳ３０４）。
【００５１】
上述してきたように、実施形態におけるアプリケーションサーバ１０によれば、運用者によって指定された条件で抽出されるオブジェクトをグループ化し、グループ化したオブジェクトに共通する属性名・操作名のみを提供することが可能となる。これにより、ＪＭＸに準拠した全てのオブジェクトを対象にして、既存のオブジェクトを変更することなく、運用者が指定した任意の条件でグループオブジェクトを生成して登録することができるとともに、運用者が必要とする属性名・操作名のみを運用者に提示することが可能となる。それゆえに、運用者の利便性を向上させることができる。
【００５２】
また、グループオブジェクトの操作名を実行することで、このグループオブジェクトに属する各オブジェクトに対して同一の操作名を一括して実行することができ、グループオブジェクトの属性名や操作名の内容を変更することで、このグループオブジェクトに属する各オブジェクトの属性名や操作名の内容を一括して変更することができる。これにより、運用者の利便性をさらに向上させることができる。
【００５３】
なお、上述した実施形態は、単なる例示に過ぎず、実施形態に明示していない種々の変形や技術の適用を排除するものではない。すなわち、本発明は、その趣旨を逸脱しない範囲で様々な形態に変形して実施することができる。
【００５４】
例えば、上述した実施形態では一つのアプリケーションサーバで本発明を実施しているが、本発明は複数のアプリケーションサーバで実施することもできる。この場合には、上述した実施形態におけるアプリケーションサーバが有する各機能を複数のアプリケーションサーバに分散し、アプリケーションサーバ群を上述した実施形態におけるアプリケーションサーバと同様に機能させればよい。
【００５５】
図７を参照して、本変形例における複数のアプリケーションサーバについて説明する。図７は、本変形例におけるグループオブジェクトを登録する際の処理内容を模式的に示した図である。
【００５６】
図７に示すように、本変形例では、アプリケーションサーバ１０Ｘとアプリケーションサーバ１０Ａとアプリケーションサーバ１０Ｂとでアプリケーションサーバ群を構成する。各アプリケーションサーバ１０Ｘ、１０Ａ、１０Ｂに実装されるＪＭＸは、ネットワークを介して相互に通信可能である。それぞれのサーバのホスト名（ドメイン）は、adminX、hostA、hostBである。アプリケーションサーバ１０Ｘは、グループオブジェクトを管理する機能を有する。アプリケーションサーバ１０Ａ、１０Ｂは、グループオブジェクトに属するオブジェクトを管理する機能を有する。
【００５７】
アプリケーションサーバ１０Ａ、１０Ｂのオブジェクト記憶部１３１には、それぞれ同一のオブジェクトＡ、Ｂが登録されている。つまり、アプリケーションサーバ１０Ａ、１０Ｂでは、それぞれにおいて同一のサービスＡ、Ｂを稼動させることができる。オブジェクトＡおよびオブジェクトＢの内容は、上述した実施形態と同様である。ただし、同一のオブジェクトＡ、Ｂがアプリケーションサーバ１０Ａ、１０Ｂにそれぞれ登録されているため、各オブジェクトを特定するときには、ドメイン（ホスト名）を指定することで一意に特定することとなる。例えば、アプリケーションサーバ１０ＡのオブジェクトＡは、“hostA:name=moduleA”と指定し、アプリケーションサーバ１０ＢのオブジェクトＡは、“hostB:name=moduleA”と指定することで一意に特定することができる。
【００５８】
アプリケーションサーバ１０Ｘのオブジェクト記憶部１３１には、オブジェクトを抽出する際や、オブジェクトを生成する際に使用する抽出・生成用オブジェクトが登録されている。抽出・生成用オブジェクトの内容は、上述した実施形態と同様である。アプリケーションサーバ１０Ｘのオブジェクト記憶部１３１には、グループオブジェクトが登録される。図７では、グループオブジェクトとして、グループオブジェクトＡおよびグループオブジェクトＢが既に登録されている。
【００５９】
図３および図７を参照して、本変形例におけるグループオブジェクトを登録する際の動作について説明する。
【００６０】
最初に、運用者が管理ツール２０を使用して抽出・生成用オブジェクトのquery操作を実行すると、アプリケーションサーバ１０Ｘの抽出条件受信部１０１は、query操作によって発行された抽出条件を管理ツール２０から受信する（ステップＳ１０１）。本動作では、抽出条件として、“host＊:name=moduleA,type=application”が受信されたこととする。この抽出条件は、ドメインがhostで始まり、nameキーがmoduleAであり、typeキーがapplicationであるオブジェクト名を有するオブジェクトを抽出するための条件となる。
【００６１】
続いて、アプリケーションサーバ１０Ｘのオブジェクト抽出部１０２は、抽出条件受信部１０１によって受信された抽出条件に一致するオブジェクトを、アプリケーションサーバ１０Ａのオブジェクト記憶部１３１およびアプリケーションサーバ１０Ｂのオブジェクト記憶部１３１からそれぞれ抽出する（ステップＳ１０２）。本動作では、抽出・生成用オブジェクトによってアプリケーションサーバ１０ＡのオブジェクトＡおよびアプリケーションサーバ１０ＢのオブジェクトＡがそれぞれ抽出される。
【００６２】
続いて、アプリケーションサーバ１０Ｘの共通項目特定部１０３は、オブジェクト抽出部１０２によって抽出されたオブジェクトに共通する属性名および操作名を特定する（ステップＳ１０４）。本動作では、抽出・生成用オブジェクトによって“state”、“start”および“stop”が共通の属性名および操作名として特定される。
【００６３】
続いて、アプリケーションサーバ１０Ｘの抽出・特定結果送信部１０４は、上記ステップＳ１０２で抽出されたオブジェクトのオブジェクト名と、上記ステップＳ１０４で特定された共通の属性名および操作名とを、管理ツール２０に送信する（ステップＳ１０５）。これにより、管理ツール２０の画面上には、オブジェクトＡのオブジェクト名である“hostA:name=moduleA”および“hostB:name=moduleA”と、オブジェクトＡの属性名および操作名である“state”、“start”および“stop”とが表示される。
【００６４】
続いて、運用者が管理ツール２０を使用して抽出・生成用オブジェクトのcreate操作を実行すると、アプリケーションサーバ１０ＸのＧＯ生成要求受信部１０５は、create操作によって発行されたグループオブジェクトの生成要求を管理ツール２０から受信する（ステップＳ１０６）。本動作では、create操作において、グループオブジェクト名として”adminX:name=moduleA,type=application”が指定され、グループオブジェクトの属性名として”state”が指定され、グループオブジェクトの操作名として“start”および“stop”が指定され、自グループオブジェクトに属するオブジェクトの抽出条件として“host＊:name=moduleA,type=application”が指定されたこととする。生成要求には、create操作で指定された上記各情報が含まれることとなる。
【００６５】
続いて、アプリケーションサーバ１０ＸのＧＯ生成部１０６は、生成要求に含まれる各情報に基づいてグループオブジェクトを生成する（ステップＳ１０７）。これにより、グループオブジェクトＡが生成される。
【００６６】
続いて、ＧＯ登録部１０７は、生成されたグループオブジェクトＡをアプリケーションサーバ１０Ｘのオブジェクト記憶部１３１に登録する（ステップＳ１０８）。
【００６７】
次に、図５および図８を参照して、本変形例におけるグループオブジェクトに属するオブジェクトを一括操作する際の動作について説明する。図８は、本変形例におけるグループオブジェクトに属するオブジェクトを一括操作する際の処理内容を模式的に示した図である。
【００６８】
最初に、運用者が管理ツール２０を使用してグループオブジェクトＡのstart操作を実行すると、アプリケーションサーバ１０ＸのＧＯ操作実行受信部１１１は、start操作によって発行された操作実行メッセージを管理ツール２０から受信する（ステップＳ２０１）。この操作実行メッセージには、グループオブジェクトＡのオブジェクト名である”adminX:name=moduleA,type=application”と、実行された操作名である“start”とが含まれる。
【００６９】
続いて、アプリケーションサーバ１０Ｘの対象オブジェクト抽出部１１３は、グループオブジェクトＡの抽出条件項目に設定されている抽出条件に一致するオブジェクトを、アプリケーションサーバ１０Ａのオブジェクト記憶部１３１およびアプリケーションサーバ１０Ｂのオブジェクト記憶部１３１からそれぞれ抽出する（ステップＳ２０２）。本動作では、グループオブジェクトＡの抽出条件項目に設定されているオブジェクト名の抽出条件“host＊:name=moduleA,type=application”に基づいて、抽出・生成用オブジェクトのquery操作を実行することとなる。これにより、アプリケーションサーバ１０ＡのオブジェクトＡおよびアプリケーションサーバ１０ＢのオブジェクトＡがそれぞれ抽出されることとなる。
【００７０】
続いて、アプリケーションサーバ１０Ｘの操作実行部１１４は、上記ステップＳ２０２で抽出されたオブジェクトの操作項目に設定されている操作のうち、上記ステップＳ２０１で受信された操作実行メッセージに含まれる操作名と同一の操作名を実行する（ステップＳ２０４）。本動作では、アプリケーションサーバ１０ＡのオブジェクトＡのstart操作と、アプリケーションサーバ１０ＢのオブジェクトＡのstart操作とが、それぞれ実行されることとなる。これにより、アプリケーションサーバ１０ＡにおけるサービスＡと、アプリケーションサーバ１０ＢにおけるサービスＡとが、それぞれ稼働することとなる。
【００７１】
次に、図６を参照して、本変形例におけるグループオブジェクトに属するオブジェクトの属性名や操作名を一括変更する際の動作について説明する。
【００７２】
最初に、運用者が管理ツール２０を使用してグループオブジェクトＡの属性名や操作名を変更すると、アプリケーションサーバ１０ＸのＧＯ変更処理受信部１１２は、変更処理によって発行された変更メッセージを管理ツール２０から受信する（ステップＳ３０１）。この変更メッセージには、グループオブジェクトＡの属性名や操作名のうち、変更された属性名や操作名の内容が含まれる。
【００７３】
続いて、アプリケーションサーバ１０Ｘの対象オブジェクト抽出部１１３は、グループオブジェクトＡの抽出条件項目に設定されている抽出条件に一致するオブジェクトを、アプリケーションサーバ１０Ａのオブジェクト記憶部１３１およびアプリケーションサーバ１０Ｂのオブジェクト記憶部１３１からそれぞれ抽出する（ステップＳ３０２）。本動作では、グループオブジェクトＡの抽出条件項目に設定されているオブジェクト名の抽出条件“host＊:name=moduleA,type=application”に基づいて、抽出・生成用オブジェクトのquery操作を実行することとなる。これにより、アプリケーションサーバ１０ＡのオブジェクトＡおよびアプリケーションサーバ１０ＢのオブジェクトＡがそれぞれ抽出されることとなる。
【００７４】
続いて、アプリケーションサーバ１０Ｘの変更処理部１１５は、上記ステップＳ３０２で抽出されたオブジェクトの属性項目および操作項目に設定されている属性名および操作名を、上記ステップＳ３０１で受信された変更メッセージに含まれる内容で変更する（ステップＳ３０４）。
【００７５】
最後に、上述した実施形態および変形例において説明したアプリケーションサーバ１０は、図１に示す各要素を備えているが、アプリケーションサーバ１０は、必ずしもこれら全ての要素を備える必要はない。例えば、アプリケーションサーバ１０は、少なくとも、抽出条件受信部１０１と、オブジェクト抽出部１０２と、共通項目特定部１０３と、グループオブジェクト生成部１０６と、グループオブジェクト登録部１０７と、オブジェクト記憶部１３１と、を備えることとしてもよい。
【００７６】
このようなアプリケーションサーバ１０によって、運用者が指定したオブジェクトの抽出条件に一致するオブジェクトをオブジェクト記憶部１３１から抽出し、抽出したオブジェクトに共通する属性名および操作名と上記抽出条件とを有するグループオブジェクトを生成してオブジェクト記憶部１３１に登録することができる。これにより、グループオブジェクトを用いて各オブジェクトが有する特定の属性名・操作名を参照することが可能となり、各オブジェクトが有する特定の属性名・操作名を一括して変更することや各オブジェクトが有する特定の操作名を一括して実行することが可能となる。すなわち、運用者の利便性を向上させることができる。
【符号の説明】
【００７７】
１…アプリケーション管理システム、１０、１０Ａ、１０Ｂ、１０Ｘ…アプリケーションサーバ、２０…管理ツール、１０１…抽出条件受信部、１０２…オブジェクト抽出部、１０３…共通項目特定部、１０４…抽出・特定結果送信部、１０６…グループオブジェクト生成部、１０７…グループオブジェクト登録部、１１１…グループオブジェクト操作実行受信部、１１２…グループオブジェクト変更処理受信部、１１３…対象オブジェクト抽出部、１１４…操作実行部、１１５…変更処理部、１３１…オブジェクト記憶部。
【図１】
2011053874.tif 000003
【図２】
2011053874.tif 000004
【図３】
2011053874.tif 000005
【図４】
2011053874.tif 000006
【図５】
2011053874.tif 000007
【図６】
2011053874.tif 000008
【図７】
2011053874.tif 000009
【図８】
2011053874.tif 000010