(57)【要約】【課題】  第1のコンポーネントが第2のコンポーネントを参照する場合、コンポーネントを使用したシステム開発が困難であった。【解決手段】  コンポーネント実行基盤に配備した第2のコンポーネントのコンポーネント物理名とコンポーネント情報を取得してコンポーネント情報管理テーブルを生成する。そして第1のコンポーネントが保持する、第2のコンポーネントのコンポーネント情報を入力源として、生成したコンポーネント情報管理テーブルから、第2のコンポーネントのコンポーネント物理名を検索し、第1のコンポーネントが保持する、第2のコンポーネントを指すコンポーネント論理名と、検索して得た第2のコンポーネントのコンポーネント物理名を対応付ける。【選択図】  図1
2008210393.tif 000002
【特許請求の範囲】
【請求項１】
J2EEにおける名前対応付け方法であって、コンポーネントの実行基盤であるコンポーネント実行部に配備する第1のコンポーネントが、前記コンポーネント実行部に配備した第2のコンポーネントを参照し、前記第1のコンポーネントが、前記第2のコンポーネントを指す前記第1のコンポーネント内で唯一となる名前であるコンポーネント論理名と、前記第2のコンポーネントの外部インタフェース名とタイプを含むコンポーネント情報を保持し、前記第2のコンポーネントが、前記コンポーネント実行部内で唯一となる名前であるコンポーネント物理名と、前記コンポーネント情報を保持する場合において、前記第2のコンポーネントの前記コンポーネント情報と前記コンポーネント物理名を一覧形式で保持するコンポーネント情報管理テーブルを生成し、前記第1のコンポーネントが保持する前記コンポーネント情報を用いて、前記コンポーネント情報管理テーブルから、前記第2のコンポーネントの前記コンポーネント物理名を検索し、前記第1のコンポーネントが保持する前記コンポーネント論理名に、前記コンポーネント情報管理テーブルから検索して得た前記第2のコンポーネントの前記コンポーネント物理名を対応付けることを特徴とする名前対応付け方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、第1のコンポーネントが第2のコンポーネントを参照する場合における、第1のコンポーネントが保持する、第2のコンポーネントを指す第1のコンポーネント内で唯一となる名前であるコンポーネント論理名と、前記第2のコンポーネントが保持する、コンポーネント実行部内で唯一となる名前であるコンポーネント物理名の名前対応付け方法及び装置に関する。
【背景技術】
【０００２】
近年ビジネスモデルの市場への早期投入及び高利益を目的に、エンタープライズアプリケーションの早期開発、開発コストの削減及び高品質化の要求がある。
これらの要求はエンタープライズアプリケーションに対して再利用性とポータビリティの向上を促し、その結果コンポーネントモデルを導入することが主流となった。
【０００３】
コンポーネントモデルでは、業務部品をコンポーネントとして集約し、コンポーネントをコンポーネントの実行基盤であるコンポーネント実行部へ配備する。配備とは、作業者がコンポーネントにコンポーネント実行部依存の属性を設定し、コンポーネントをコンポーネント実行部にインストールすることである。
【０００４】
コンポーネントモデルの第1の公知例は、米サンマイクロシステムズ社発行の「Enterprise JavaBeans Specification, v1.1(1999)」（非特許文献１）に記載されている（Enterprise JavaBeansは米サンマイクロシステムズ社の登録商標である）。本公知例では、Enterprise Beanと呼ばれるコンポーネント(以下、EJBコンポーネント)を
コンポーネント実行部であるEJB Containerに配備する。
【０００５】
コンポーネントモデルの第2の公知例は、米サンマイクロシステムズ社発行の
「Java 2 Platform, Enterprise Edition Specification, v1.2(1999)」（非特許文献２）に記載されている。本公知例（以下、J2EEと呼ぶ）では、多階層のエンタープライズアプリケーションを開発するための指針を示しており、各階層ごとにコンポーネントを分類し、分類したコンポーネントを、それぞれのコンポーネントに対応するコンポーネント実行部に配備する。
【０００６】
コンポーネントモデルでは、コンポーネントが他のコンポーネントを参照することにより、コンポーネント間で連携することが可能である。コンポーネント間で連携するには、コンポーネントの配備時に、配備する第1のコンポーネントが保持する、第1のコンポーネントが参照する第2のコンポーネントを指すコンポーネント論理名と、第2のコンポーネントが保持する、第2のコンポーネントを指すコンポーネント物理名を対応付ける。コンポーネント論理名とは、コンポーネント内で唯一となる名前である。またコンポーネント物理名とは、コンポーネント実行部内で唯一となる名前である。
【０００７】
従来技術におけるコンポーネント論理名とコンポーネント物理名の名前対応付け方法では、コンポーネント配備者がコンポーネント設定情報を参照して、１つづつコンポーネント論理名とコンポーネント物理名を手動で対応付ける。コンポーネント設定情報は、コンポーネント論理名とコンポーネント物理名の対応表や、コンポーネント物理名とコンポーネント情報の対応表を含み、マニュアルなどの形態をとる。コンポーネント情報は、コンポーネントのタイプと、コンポーネントをコンポーネント実行部外から操作するために使用するインタフェースである外部インタフェースの名前を含む。またコンポーネント情報は、コンポーネントを説明するコンポーネントデスクリプションを含むことがあり、コンポーネント配備者はコンポーネントを特定するために、コンポーネントデスクリプションを補助的に使用することがある。
【非特許文献１】米サンマイクロシステムズ社発行の「Enterprise JavaBeans Specification, v1.1(1999)」
【非特許文献２】米サンマイクロシステムズ社発行の「Java 2 Platform, Enterprise Edition Specification, v1.2(1999)」
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来の方法では、コンポーネント論理名とコンポーネント物理名との名前対応付け作業において、コンポーネント配備者は、コンポーネント設定情報を参照して手動で名前を対応付ける。加えて、多数のコンポーネントが多数のコンポーネントを参照する場合においても、同様の手続きを用いて1つずつコンポーネント論理名とコンポーネント物理名を対応付けなければならない。そのため、コンポーネント配備者に負担がかかり、コンポーネントを使用したシステム開発の効率を悪化させる。
【０００９】
このように従来の方法では、コンポーネント配備者にとって、コンポーネント論理名とコンポーネント物理名の名前対応付け作業の負担が大きく、コンポーネントを使用したシステム開発工程を遅延させるという問題があった。
【００１０】
本発明の目的は、第1のコンポーネントが第2のコンポーネントを参照する場合において、第1のコンポーネントが保持するコンポーネント論理名に対応する第2のコンポーネントのコンポーネント物理名を検索し、対応付ける方法及び装置を提供することにある。
【００１１】
本発明のもう1つの目的は、上記検索方法で使用するデータに、唯一な値を持ったコンポーネントデスクリプションを適用し、コンポーネント論理名とコンポーネント物理名を一意に対応付ける方法及び装置を提供することにある。
【課題を解決するための手段】
【００１２】
配備する第1のコンポーネントが、コンポーネント実行部に配備した第2のコンポーネントを参照する場合における名前対応付けの解決手段を以下に述べる。
【００１３】
第1の解決手段として、第2のコンポーネントのコンポーネント物理名とコンポーネント情報を取得し、コンポーネントの外部インタフェース名とコンポーネントのタイプを含むコンポーネント情報とコンポーネント物理名を一覧形式として保持するコンポーネント情報管理テーブルを生成する。コンポーネント情報とコンポーネント物理名の取得方法は、以下の3通りがある。
（１）コンポーネント物理名とコンポーネント情報をコンポーネント実行部から取得する。
（２）コンポーネント物理名をネーミングサービスから取得し、さらにネーミングサービスに問い合わせてコンポーネント物理名に対応するオブジェクトリファレンスを取得する。そしてオブジェクトリファレンスを解析して、第2のコンポーネントのコンポーネント情報のアドレスを示すコンポーネント情報アドレスを取得する。最後に、コンポーネント情報アドレスから第2のコンポーネントのコンポーネント情報を取得する。
（３）コンポーネント物理名をネーミングサービスから取得し、さらにネーミングサービスに問い合わせてコンポーネント物理名に対応するオブジェクトリファレンスを取得する。そしてオブジェクトリファレンスを用いて、コンポーネント実行部が第2のコンポーネントに付与したコンポーネントメタデータを取得する。コンポーネントメタデータは、コンポーネントの外部インタフェースとコンポーネントのタイプを含む。最後に、コンポーネントメタデータから第2のコンポーネントのコンポーネント情報を取得する。
【００１４】
コンポーネント情報管理テーブルを生成した後、第1のコンポーネントが保持する第2のコンポーネントのコンポーネント情報を入力源として、コンポーネント情報管理テーブルから第2のコンポーネントのコンポーネント物理名を検索する。
【００１５】
最後に、検索して得た1個以上のコンポーネント物理名を、第1のコンポーネントが保持する第2のコンポーネントを指すコンポーネント論理名に対応付ける。
【００１６】
第2の解決手段として、第1のコンポーネントが保持するコンポーネント情報と、第2のコンポーネントが保持するコンポーネント情報に、同じ外部インタフェース名とタイプを持つコンポーネント内で唯一な値を格納したコンポーネントデスクリプションを含ませる。
【００１７】
そしてコンポーネントデスクリプションを含むコンポーネント情報と、コンポーネント物理名を第1の解決手段で述べた方法と同様の方法で取得して、コンポーネント情報管理テーブルを生成する。第1のコンポーネントが保持する第2のコンポーネントのコンポーネント情報を入力源として、生成したコンポーネント情報管理テーブルから第2のコンポーネントのコンポーネント物理名を検索し、第1のコンポーネントが保持する第2のコンポーネントを指すコンポーネント論理名に一意に対応付ける。
【発明の効果】
【００１８】
本発明の第1の解決手段を、コンポーネントモデルにおけるコンポーネント間の参照設定に適用することにより、コンポーネント配備者の名前対応付け作業の負担を軽減することができ、本発明の第2の解決手段をコンポーネントモデルにおけるコンポーネント間の参照設定に適用することにより、コンポーネント配備者の名前対応付け作業の負担をなくすことができる。加えて、名前対応付け作業時におけるエラー発生を抑えることにより、コンポーネントを使用したシステム開発工程を遅延させる可能性を最小限に抑えることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施形態を詳細に説明する。
【００２０】
図1は、本発明における課題を解決する名前対応付け方法の原理を示した図である。コンポーネント101は、コンポーネント101内で唯一な名前であるコンポーネント論理名102と、コンポーネント101が参照するコンポーネント111の外部インタフェース名とタイプを含むコンポーネント情報103を保持する。コンポーネント配備部121は、コンポーネント論理名102と、検索127の結果得られる、コンポーネント実行部131内で唯一な名前であるコンポーネント物理名107を対応付ける。コンポーネント実行部131は、コンポーネント配備部121が配備したコンポーネント111と、コンポーネント実行部131がコンポーネント111に与えたコンポーネント物理名107を組にして保持し、コンポーネント配備部121が配備するコンポーネント101と、コンポーネント実行部131がコンポーネント101に与えるコンポーネント物理名105と、コンポーネント論理名102とコンポーネント論理名102に対応するコンポーネント物理名107を組にして保持するコンポーネント参照情報191を保持する。
【００２１】
コンポーネント情報管理部141は、コンポーネント情報103とコンポーネント情報103が指すコンポーネント111のコンポーネント物理名107を組にして一覧形式で保持するコンポーネント情報管理テーブル151を保持する。参照コンポーネント情報管理部171は、コンポーネント配備部121がコンポーネント実行部131にコンポーネント111の外部インタフェース名とタイプの値が格納されているコンポーネント情報の所在を表すコンポーネント情報アドレス185を組にして保持する。
【００２２】
本発明における課題を解決する名前対応付け方法の処理の流れを以下に示す。
まず、コンポーネント配備部121は、コンポーネント101を入力115として受け取る。次に、コンポーネント配備部121は、コンポーネント情報管理部141に対してコンポーネント101のコンポーネント情報103を入力として検索127を行い、出力としてコンポーネント物理名107を得る。コンポーネント情報管理部141は、検索127の延長で、参照コンポーネント情報管理部171に対して取得147を行い、コンポーネント物理名107と、コンポーネント情報アドレス185を得、コンポーネント情報アドレス185の値を元に、コンポーネント情報管理テーブル151を生成する。
次に、コンポーネント配備部121は、コンポーネント実行部131に対してコンポーネント101およびコンポーネント論理名102とコンポーネント物理名107の組を引数として配備125を行う。コンポーネント実行部131は、配備125の延長で、コンポーネント101にコンポーネント物理名105を与え、コンポーネント101とコンポーネント参照情報191を関連付ける。
【００２３】
図2は、本発明適用前における、従来技術を用いたコンポーネント論理名とコンポーネント物理名の名前対応付けを示した図である。コンポーネント101は、コンポーネント論理名102とコンポーネント情報103を保持し、コンポーネント情報103には、コンポーネント111に関する情報の値が格納されている。コンポーネント111は、コンポーネント実行部131に配備済みであり、コンポーネント実行部131によりコンポーネント物理名107が与えられている。
【００２４】
コンポーネント配備部221は、入力115からコンポーネント論理名102の値とコンポーネント情報103の値を取得する。そして取得したコンポーネント情報103の値を検索129の入力とし、コンポーネント設定情報211からコンポーネント情報103に対応したコンポーネント物理名107を検索する。次にコンポーネント配備部221は、コンポーネント論理名102に、検索129から取得したコンポーネント物理名107を対応付ける。次に出力125は、コンポーネント配備部221でコンポーネント論理名102とコンポーネント物理名107を対応付けた情報をコンポーネント情報191としてコンポーネント101に付与し、コンポーネント実行部131へ出力する。最後にコンポーネント実行部131は、コンポーネント101にコンポーネント物理名105を付与して配備する。
【００２５】
図3は、Enterprise JavaBeansに、本発明における課題を解決する名前対応付け方法を適用した1つ目の図である。EJBコンポーネント311は、EJBコンポーネント371を参照し、EJBコンポーネントの実装部品であるEJB実装313と、EJBコンポーネント311の配備情報が格納されているファイルであるEJB配備記述子315から構成される。また、EJB配備記述子315は、配備情報として参照EJBコンポーネント情報316が記録されており、参照EJBコンポーネント情報316にはEJBコンポーネント371のEJBコンポーネント情報317の値とEJBコンポーネント論理名318の値が記録されている。EJBコンポーネント371は、EJBコンポーネント実行部391に配備済みであり、EJBコンポーネント物理名331の値が付与している。
【００２６】
EJBコンポーネント配備部321は、入力319から参照EJBコンポーネント情報316を取得し、検索333へEJBコンポーネント情報317の値を入力する。検索333にEJBコンポーネント情報317の値を入力した後、EJBコンポーネント情報管理部361はEJBコンポーネント物理名検索手続き341を使用して、テーブル生成通知345からEJBコンポーネント情報管理テーブル生成部351にEJBコンポーネント情報管理テーブル381を生成するように通知する。通知を受けたEJBコンポーネント情報管理テーブル生成部351は、EJBコンポーネント情報管理テーブル取得手続き385を用いて、参照337から参照EJBコンポーネント情報管理部374に問い合わせて、EJBコンポーネント情報317の値とEJBコンポーネント物理名331の値を取得する。
【００２７】
取得したEJBコンポーネント情報317の値とEJBコンポーネント物理名331の値を元に、EJBコンポーネント情報管理テーブル生成部351はEJBコンポーネント情報管理テーブル381を生成する。EJBコンポーネント情報管理テーブル381を生成した後、EJBコンポーネント物理名検索手続き341は、EJBコンポーネント情報318の値を元に、EJBコンポーネント情報管理テーブル381からEJBコンポーネント物理名331の値を検索する。EJBコンポーネント配備部321は、検索して得たEJBコンポーネント物理名331の値を検索333から取得し、EJBコンポーネント名前対応付け手続き375を用いて、EJBコンポーネント論理名318の値に対応付ける。
【００２８】
配備325は、EJBコンポーネント配備部321でEJBコンポーネント論理名318の値とEJBコンポーネント物理名331の値を対応付けた情報をEJBコンポーネント参照情報312として、またEJBコンポーネント物理名323の値をEJBコンポーネント311に付与して、EJBコンポーネント実行部391に配備する。
【００２９】
図4は、EJBコンポーネント情報317の構成を示した１つ目の図である。EJBコンポーネント情報317は、EJBコンポーネント411、EJBコンポーネント421及びEJBコンポーネントインタフェース名431から構成され、レコード451に、EJBコンポーネント371のEJBコンポーネントタイプ411、EJBコンポーネントホーム名421及びEJBコンポーネントインタフェース名431に対応した値をそれぞれ格納する。
【００３０】
図5は、EJBコンポーネント情報317の構成を示した2つ目の図である。EJBコンポーネント情報317は、EJBコンポーネントタイプ411、EJBコンポーネントホーム名421、EJBコンポーネントインタフェース名431に加えて、EJBコンポーネントデスクリプション471から構成される。
【００３１】
ここでEJBコンポーネントデスクリプション471とは、EJBコンポーネントの作成者がコンポーネントに付与するものであり、その目的は、EJBコンポーネントの参照者にEJBコンポーネントの説明を示すことにある。また、EJBコンポーネント物理名検索手続き341が、検索するEJBコンポーネント物理名の値を一意に定めることを目的に、EJBコンポーネントデスクリプション471に、EJBコンポーネント371を配備したコンポーネント実行部内で唯一な値を格納する。
【００３２】
レコード481に、EJBコンポーネント371のEJBコンポーネントタイプ411、EJBコ
ンポーネントホーム名421、EJBコンポーネントインタフェース名431およびEJBコンポーネントデスクリプション471に対応した値をそれぞれ格納する。
【００３３】
図6は、EJB配備記述子315を示した図である。要素511の値515は、EJBコンポーネント371のEJBコンポーネントデスクリプション471の値であり、カラム467に値として格納される。要素521の値525は、EJBコンポーネント371のEJBコンポーネント論理名318の値であり、EJBコンポーネント論理名318の値として格納される。要素531の値535は、EJBコンポーネント371のEJBコンポーネントタイプ411の値であり、カラム461に値として格納される。要素541の値545は、EJBコンポーネント371のEJBコンポーネントホーム名421の値であり、カラム463の値として格納される。要素551の値555は、EJBコンポーネント371のEJBコンポーネントインタフェース名431の値であり、カラム465の値として格納される。
【００３４】
図７は、EJBコンポーネント管理テーブル381の構成を示した1つ目の図である。EJBコンポーネント管理テーブル381は、EJBコンポーネントタイプ411、EJBコンポーネントホーム名421、EJBコンポーネントインタフェース名431及びEJBコンポーネント物理名331から構成される。レコード642に、EJBコンポーネント371に対応した各値を格納する。
【００３５】
図8は、EJBコンポーネント管理テーブル381の構成を示した2つ目の図である。EJBコンポーネント管理テーブル381は、EJBコンポーネントタイプ411、EJBコンポーネントホーム名421、EJBコンポーネントインタフェース名431、EJBコンポーネントデスクリプション471およびEJBコンポーネント物理名331から構成される。レコード851にEJBコンポーネント371に対応した各値を格納する。
【００３６】
図9は、EJBコンポーネント物理名検索手続き341をフローチャートとして示した図である。まずEJB配備記述子315の参照EJBコンポーネント情報316のEJBコンポーネント情報317を検索333から取得する(ステップ701)。
【００３７】
次に、EJBコンポーネント物理名検索手続き341は、EJBコンポーネント情報管理テーブル生成部を用いて、EJBコンポーネント情報管理テーブル381を生成する(ステップ703)。次に、取得したEJBコンポーネント情報317を元に、EJBコンポーネント情報管理テーブル381から、対応するEJBコンポーネント物理名331の値を検索する(ステップ705)。
【００３８】
次に、検索したEJBコンポーネント物理名331の値が0個かどうか判定し(ステップ707)、EJBコンポーネント物理名331の値が0個の時は、長さ0個の配列として出力する(ステップ715)。EJBコンポーネント物理名331の値が0個でない時は、さらにEJBコンポーネント物理名331の値が1個かどうかを判定する(ステップ709)。EJBコンポーネント物理名331の値が1個以上存在する時は、1個以上のEJBコンポーネント物理名331の値を１つの配列に格納して出力する(ステップ711)。EJBコンポーネント物理名331の値が1個の時は、1個のEJBコンポーネント物理名331の値を１つの配列に格納して出力する(ステップ713)。
【００３９】
図10は、EJBコンポーネント名前対応付け手続き375をフローチャートとして示した図である。まず検索333から、EJBコンポーネント物理名検索手続き341の出力した配列を取得する(ステップ751)。取得した配列の長さが0かどうかチェックする(ステップ753)。配列の長さが0の時は、エラー処理を行う(ステップ761)。配列の長さが0以外の時は、配列に格納されているEJBコンポーネント物理名331の値を配列から取り出し、配列に格納されているEJBコンポーネント物理名331の値が1個かどうかチェックする。(ステップ755)。
【００４０】
EJBコンポーネント物理名331の値が1個の時は、EJBコンポーネント物理名331の値をコンポーネント論理名318の値に対応付ける (ステップ759)。
【００４１】
EJBコンポーネント物理名331の値が1個以上の時は、コンポーネント配備者がコンポーネント論理名318の値に対応するコンポーネント物理名331の値を1個選択する。(ステップ757)。そしてコンポーネント配備者が選択したEJBコンポーネント物理名331の値を、EJBコンポーネント論理名318の値に対応付ける(ステップ763)。
【００４２】
図11は、EJBコンポーネント配備部321が提供するGUIを示した図である。EJBコンポーネント配備ツール811の参照EJBコンポーネント設定項目821は、フィールド831、フィールド833、フィールド835、フィールド837及びフィールド841から構成される。フィールド831にはEJBコンポーネント論理名318の値を、フィールド833にはEJBコンポーネントタイプ411の値を、フィールド835にはEJBコンポーネントホーム名421の値を、フィールド837にはEJBコンポーネントインタフェース名431の値を、フィールド841にはEJBコンポーネント物理名331の値をそれぞれ指定する。
【００４３】
図12は、図3に対する装置構成を示した図である。計算機901は、主記憶装置921、CPU951、マウス955、ディスプレイ961、キーボード965、2次記憶装置971、ネットワークインタフェース975及びこれらを相互接続するバス981から構成される。そして、計算機901は、ネットワークインタフェース975を介して、ネットワーク991に接続される。
【００４４】
主記憶装置921には、オペレーティングシステム931、Java仮想マシン933、EJBコンポーネント配備プログラム935、EJBコンポーネント情報管理プログラム937、EJBコンポーネント実行プログラム947、EJBコンポーネント情報管理テーブルデータ949を記憶している。EJBコンポーネント情報管理テーブルデータ949は、主記憶装置921の他に、2次記憶装置971もしくはEJBコンポーネント情報管理プログラム937から参照することが可能な媒体および、ネットワーク991に接続された他の計算機のデバイスに記憶しても良い。
【００４５】
図13は、Enterprise JavaBeansに、本発明における課題を解決する名前対応付け方法を適用した2つ目の図である。EJBコンポーネント配備部321は、入力319から参照EJBコンポーネント情報316を取得し、検索333へEJBコンポーネント情報317の値を入力する。検索333からEJBコンポーネント情報317の値が入力されると、EJBコンポーネント情報管理部1021はEJBコンポーネント物理名検索手続き341を用いて、テーブル生成通知347から、EJBコンポーネント情報管理テーブル生成部1031にEJBコンポーネント情報管理テーブル381を生成するように通知する。通知を受けたEJBコンポーネント情報管理テーブル生成部1031は、EJBコンポーネント物理名取得取得手続き1041を用いて、ネーミングサービス1051からEJBコンポーネント物理名331の値を取得する。次に取得したEJBコンポーネント物理名331の値を入力源として、EJBコンポーネント情報管理テーブル生成部1031は、EJBコンポーネントオブジェクトリファレンス解析手続き1043を用いて、ネーミングサービス1051からEJBコンポーネント物理名331に対応したオブジェクトリファレンス1057の値を取得する。そして取得したオブジェクトリファレンス1057の値を解析して、オブジェクトリファレンス1057の値に対応したEJBコンポーネントサブセット1061のアドレスを取得する。ここでEJBコンポーネントサブセット1061は、EJBコンポーネント実行部1011に配備したEJBコンポーネント371を実行するために必要なサブセットであり、かつEJBコンポーネント371に含まれるEJB配備記述子1071を含む。取得したEJBコンポーネントサブセット1061のアドレスを元に、EJBコンポーネント情報管理テーブル生成部1031は、EJB配備記述子取得解析手続き1045を用いて、EJBコンポーネントサブセット1061を取得して、EJBコンポーネントサブセット1061に含まれるEJB配備記述子1071を解析する。EJB配備記述子1071を解析することにより、EJBコンポーネント実行部1011に配備されているEJBコンポーネント371に対するEJBコンポーネント情報317の値を取得する。
【００４６】
取得したEJBコンポーネント情報317の値とEJBコンポーネント物理名331の値を元に、EJBコンポーネント情報管理テーブル生成部1031は、EJBコンポーネント情報管理テーブル381を生成する。EJBコンポーネント情報管理テーブル381を生成した後、EJBコンポーネント物理名検索手続き341は、検索333から取得したEJBコンポーネント情報318の値を元にEJBコンポーネント情報管理テーブル381からEJBコンポーネント物理名331の値を検索する。EJBコンポーネント配備部321は、検索して得たEJBコンポーネント物理名331の値を検索333を通して取得し、EJBコンポーネント名前対応付け手続き375を用いて、EJBコンポーネント論理名318の値に対応付ける。
【００４７】
図14は、図13に対する装置構成を示した図である。計算機1101は、ネットワーク1131に接続され、計算機1101の構成要素である主記憶装置1103は、オペレーティングシステム931と、Java仮想マシン933と、EJBコンポーネント名前対応付け手続き375を有するEJBコンポーネント配備プログラム935と、EJBコンポーネント物理名検索手続き341とEJBコンポーネント情報管理テーブル生成プログラム1121を有するEJBコンポーネント情報管理プログラム1111と、EJBコンポーネント情報管理テーブルデータ949とを記憶している。また、EJBコンポーネント情報管理テーブルデータ949は、主記憶装置1103の他に、EJBコンポーネント情報管理プログラム1111から参照することが可能な媒体および、ネットワーク1131に接続された他の計算機のデバイスに記憶しても良い。
【００４８】
計算機1141は、ネットワーク1131に接続され、計算機1141の構成要素である主記憶装置1161中にはオペレーティングシステム931と、Java仮想マシン933と、EJBコンポーネント実行プログラム1165を記憶しており、また2次記憶装置1171にはEJBコンポーネントサブセット1061が記憶されている。EJBコンポーネントサブセット1061は、EJB配備記述子取得解析手続き1045から参照することのできる計算機1141の他のデバイスや、またはネットワーク1131に接続された他の計算機のデバイスに記憶されていてもよい。計算機1151はネットワーク1131に接続され、計算機1151の構成要素である主記憶装置1181にはオペレーティングシステム931とネーミングサービスプログラム1051が記憶されている。
【００４９】
図15はEnterprise JavaBeansに、本発明における課題を解決する名前対応付け方法を適用した3つ目の図である。ここでEJBコンポーネントメタデータとは、EJBコンポーネント実行部に配備されているEJBコンポーネントに付与し、EJBコンポーネントメタデータの付与したEJBコンポーネントに関するEJBコンポーネント情報を取得するために使用される。
【００５０】
EJBコンポーネント配備部321は、入力319から参照EJBコンポーネント情報316を取得し、検索333へEJBコンポーネント情報317の値を入力する。
【００５１】
検索333からEJBコンポーネント情報317の値を入力した後、EJBコンポーネント情報管理部1261は、EJBコンポーネント物理名検索手続き341を用いて、テーブル生成通知349から、EJBコンポーネント情報管理テーブル生成部1271にEJBコンポーネント情報管理テーブル381を生成するように通知する。通知を受けたEJBコンポーネント情報管理テーブル生成部1271は、EJBコンポーネント物理名取得取得手続き1041を用いて、ネーミングサービス1051からEJBコンポーネント物理名331の値を取得する。次に取得したEJBコンポーネント物理名331の値を入力源として、EJBコンポーネント情報管理テーブル生成部1271は、EJBコンポーネントオブジェクトリファレンス取得手続き1275を用いて、ネーミングサービス1051からEJBコンポーネント物理名331に対応したオブジェクトリファレンス1057の値を取得する。そしてEJBコンポーネント情報管理テーブル生成部1271は、EJBコンポーネントメタデータ取得手続き1221を用いて、取得したオブジェクトリファレンス1057の値を入力源として参照1285からEJBコンポーネントメタデータ1251を取得する。そして取得したEJBコンポーネントメタデータ1251から、EJBコンポーネント371に対応するEJBコンポーネント情報317の値を取得する。
【００５２】
取得したEJBコンポーネント情報317の値とEJBコンポーネント物理名331の値を元に、EJBコンポーネント情報管理テーブル生成部1271は、EJBコンポーネント情報管理テーブル381を生成する。
【００５３】
EJBコンポーネント情報管理テーブル381を生成した後、EJBコンポーネント物理名検索手続き341は、検索333から取得したEJBコンポーネント情報318の値を元にEJBコンポーネント情報管理テーブル381からEJBコンポーネント物理名331の値を検索する。EJBコンポーネント配備部321は、検索して得たEJBコンポーネント物理名331の値を検索333を通して取得し、EJBコンポーネント名前対応付け手続き375を用いて、EJBコンポーネント論理名318の値に対応付ける。
【００５４】
図16は、図15に対する装置構成の一例を示した図である。計算機1301は、ネットワーク1131に接続され、計算機1301の構成要素である主記憶装置1311は、オペレーティングシステム931と、Java仮想マシン933と、EJBコンポーネント名前対応付け手続き375を有するEJBコンポーネント配備プログラム935と、EJBコンポーネント物理名検索手続き341とEJBコンポーネント情報管理テーブル生成プログラム1331を有するEJBコンポーネント情報管理プログラム1321と、EJBコンポーネント情報管理テーブルデータ949とを記憶している。また、EJBコンポーネント情報管理テーブルデータ949は、EJBコンポーネント物理名検索手続き341が参照できる他のデバイスや、ネットワーク1131に接続された他の計算機に記憶されていてもよい。
【００５５】
計算機1341は、ネットワーク1131に接続され、計算機1341の構成要素である主記憶装置1361中にはオペレーティングシステム931と、Java仮想マシン933と、EJBコンポーネント実行プログラム1365を記憶している。
【００５６】
計算機1351は、ネットワーク1131に接続され、計算機1351の構成要素である主記憶装置1371にはオペレーティングシステム931とネーミングサービスプログラム1051が記憶されている。
【図面の簡単な説明】
【００５７】
【図１】本発明における課題を解決する名前対応付け方法の原理を表す図である。
【図２】本発明適用前における、従来技術を用いたコンポーネント論理名とコンポーネント物理名の名前対応付けを示した図である。
【図３】Enterprise JavaBeansに、本発明における課題を解決する名前対応付け方法を適用した1つ目の図である。
【図４】EJBコンポーネント情報の構成を示した１つ目の図である。
【図５】EJBコンポーネント情報の構成を示した2つ目の図である。
【図６】EJB配備記述子を示した図である。
【図７】EJBコンポーネント管理テーブルの構成を示した1つ目の図である。
【図８】EJBコンポーネント管理テーブルの構成を示した2つ目の図である。
【図９】EJBコンポーネント物理名検索手続きをフローチャートとして示した図である。
【図１０】EJBコンポーネント名前対応付け手続きをフローチャートとして示した図である。
【図１１】EJBコンポーネント拝眉部が提供するGUIを示した図である．
【図１２】図3に対する装置構成を示した図である。
【図１３】Enterprise JavaBeansに、本発明における課題を解決する名前対応付け方法を適用した2つ目の図である。
【図１４】図13に対する装置構成を示した図である。
【図１５】Enterprise JavaBeansに、本発明における課題を解決する名前対応付け方法を適用した3つ目の図である。
【図１６】図15に対する装置構成の一例を示した図である。
【符号の説明】
【００５８】
１０１  コンポーネント
１２１  コンポーネント配備部
１３１  コンポーネント実行部
１７１  参照コンポーネント情報管理部
【図１】
2008210393.tif 000003
【図２】
2008210393.tif 000004
【図３】
2008210393.tif 000005
【図４】
2008210393.tif 000006
【図５】
2008210393.tif 000007
【図６】
2008210393.tif 000008
【図７】
2008210393.tif 000009
【図８】
2008210393.tif 000010
【図９】
2008210393.tif 000011
【図１０】
2008210393.tif 000012
【図１１】
2008210393.tif 000013
【図１２】
2008210393.tif 000014
【図１３】
2008210393.tif 000015
【図１４】
2008210393.tif 000016
【図１５】
2008210393.tif 000017
【図１６】
2008210393.tif 000018
【手続補正書】
【提出日】平成20年5月22日(2008.5.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
コンピュータによるＥＪＢの物理名検索方法であって、
前記コンピュータは、
ＥＪＢ配備部に第１のコンポーネントを配備し、
第１のコンポーネントを参照する第２のコンポーネント物理名とＥＪＢコンポーネント情報を、コンポーネント実行部から取得し、
第２のＥＪＢコンポーネントタイプ、ＥＪＢコンポーネントホーム名、ＥＪＢコンポーネントインターフェース名、ＥＪＢコンポーネントでデスクリプションおよび第２のＥＪＢコンポーネント物理名からなるＥＪＢコンポーネント情報管理テーブルを生成し、
前記ＥＪＢコンポーネント情報をキーとして前記ＥＪＢコンポーネント情報管理テーブルから対応する第２のＥＪＢコンポーネント物理名を取得し、
取得したＥＪＢコンポーネント物理名の値がある場合には、その物理名を出力することを特徴としたＥＪＢの物理名検索方法。
【請求項２】
請求項１において、前記出力をした第２のＥＪＢコンポーネント物理名の値が１個の場合には、第２のＥＪＢコンポーネント物理名の値を、第２のＥＪＢコンポーネント論理名の値に対応付けることを特徴とするＥＪＢ物理名検索方法。