【手続補正書】
【提出日】平成17年6月13日(2005.6.13)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クライアント側分散オブジェクトミドルウェアとサーバ側分散オブジェクトミドルウェアの通信プロトコルが異なる場合に、前記クライアント側のオブジェクトから前記サーバ側にあるオブジェクトのメソッド呼び出しを前記夫々の分散オブジェクトミドルウェアを介して実現する方法であって、
クライアント側分散オブジェクトミドルウェアとサーバ側分散オブジェクトミドルウェアとの間に、クライアント側から要求された前記サーバ側オブジェクトのリモート参照の取得を中継するリモート参照取得中継オブジェクトと、前記サーバ側オブジェクトのクラス定義に基づき生成されるリモートメソッド呼び出し中継オブジェクトのクラスとを備え、前記方法は、
前記リモート参照取得中継オブジェクトが、クライアント側分散オブジェクトミドルウェアの通信プロトコルによりクライアントから前記サーバ側オブジェクトに関するリモート参照の取得要求を受け付けるステップと、当該受け付けた取得要求を前記サーバ側分散オブジェクトミドルウェアのプロトコルにより前記サーバに送信するステップと、
前記リモート参照取得中継オブジェクトが、前記サーバ側オブジェクトのリモート参照をサーバから受信するステップと、当該受信したリモート参照に基づいて、前記リモートメソッド呼び出し中継オブジェクトのクラスからそのサーバ側オブジェクトに対応したリモートメソッド呼び出し中継オブジェクトを起動するステップと、
前記リモート参照取得中継オブジェクトが、前記クライアントから要求された前記サーバ側オブジェクトのリモート参照取得要求への応答として、当該起動されたリモートメソッド呼び出し中継オブジェクトへのアクセス情報を前記クライアントに返却するステップと
を有することを特徴とする分散オブジェクトミドルウェア連携方法。
【請求項２】
前記リモート参照取得中継オブジェクトがサーバから前記リモート参照を受信する際に、当該サーバ側オブジェクトに対応し、サーバ側分散オブジェクトミドルウェアの通信プロトコルに基づき動作する、スケルトンオブジェクトとスタブオブジェクトを夫々サーバと前記リモート参照取得中継オブジェクトを有する計算機において起動するステップと、
前記リモート参照取得中継オブジェクトが前記リモートメソッド呼び出し中継オブジェクトへのアクセス情報をクライアントに返却する際に、当該リモートメソッド呼び出し中継オブジェクトに対応するスケルトンオブジェクトとスタブオブジェクトを夫々前記リモート参照取得中継オブジェクトを有する計算機と前記クライアントにおいて起動するステップと
を含む請求項１に記載の方法。
【請求項３】
前記リモート参照取得中継オブジェクトが、サーバ側オブジェクトに関するリモート参照の取得要求をクライアントから受け付ける際には、当該リモート参照取得中継オブジェクトに関するリモート参照をクライアントと当該リモート参照取得中継オブジェクトを有する計算機との間で授受するためのステップを更に有する請求項１又は２に記載の方法。
【請求項４】
前記リモートメソッド呼び出し中継オブジェクトのクラスを、対応するサーバオブジェクトのクラスから所定の生成ステップで生成する請求項１記載の方法。
【請求項５】
前記クラス生成ステップは、異常動作の報告先を前記リモート参照取得を要求したクライアントに設定するステップを含む請求項４に記載の方法。
【請求項６】
前記生成ステップは、前記サーバオブジェクトのクラスから生成されたメソッドの引数とメソッドからの戻り値の型を、クライアントが使用可能な型に変換するステップを含む請求項４又は５に記載の方法。
【請求項７】
前記所定の生成ステップは、
対象とするサーバオブジェクトのクラスファイルを読み込むステップと、
該読み込んだクラスファイルから当該サーバオブジェクトのクラス名の定義情報を取得し、取得したクラス名定義情報と予め決められたクラス名付与規則とから決定されるクラス名を、前記サーバオブジェクトに対応するリモートメソッド呼び出し中継オブジェクトクラスのクラス名として、該リモートメソッド呼び出し中継オブジェクトのクラスファイルである中継クラスファイルに出力するステップと、
前記サーバオブジェクトへのリモート参照をリモート参照取得中継オブジェクトから受け取るためのメソッド定義と、該受け取ったリモート参照を保持するための変数の定義を前記中継クラスファイルに出力するステップと、
前記読み込んだサーバオブジェクトのクラスファイルからサーバオブジェクトクラスとして定義されている全てのメソッドを抽出するステップと、
該抽出したメソッド毎に、該サーバオブジェクトクラスのメソッドと同じメソッド宣言と、該メソッド宣言に対応する処理として、前記サーバオブジェクトにおけるメソッドを前記リモート参照を用いて呼び出すようにした処理プログラムと、を前記中継クラスファイルに出力するステップと
を有する請求項４に記載の方法。
【請求項８】
クライアント側分散オブジェクトミドルウェアとサーバ側分散オブジェクトミドルウェアの通信プロトコルが異なる場合に、コンピュータを前記クライアント側のオブジェクトから前記サーバ側にあるオブジェクトへのメソッド呼び出しを夫々のミドルウェアを介して実現するための連携手段として機能させるための分散オブジェクトミドルウェア連携処理プログラムであって、
前記連携手段は、前記クライアント側から要求された前記サーバ側オブジェクトのリモート参照の取得を中継するリモート参照取得中継手段と、前記サーバ側オブジェクトのクラス定義に基づき生成されるリモートメソッド呼び出し中継手段とを備え、
前記リモート参照取得中継手段は、
前記クライアント側分散オブジェクトミドルウェアの通信プロトコルによりクライアントから前記サーバ側オブジェクトに関するリモート参照の取得要求を受け付け、当該受け付けた取得要求をサーバ側分散オブジェクトミドルウェアのプロトコルによりサーバに送信する手段と、
前記サーバ側オブジェクトのリモート参照をサーバから受信し、当該受信したリモート参照に基づき、前記リモートメソッド呼び出し中継手段を起動する手段と、
前記クライアントから要求された前記サーバ側オブジェクトのリモート参照取得要求への応答として、当該起動されたリモートメソッド呼び出し中継手段へのアクセス情報を前記クライアントに返却する手段と
を有することを特徴とする分散オブジェクトミドルウェア連携処理プログラム。
【請求項９】
前記連携手段は、
前記リモート参照取得中継手段がサーバから前記リモート参照を受信する際に、当該サーバ側オブジェクトに対応し、サーバ側分散オブジェクトミドルウェアの通信プロトコルに基づき動作するスタブオブジェクトを起動する手段と、
前記リモート参照取得中継オブジェクトが前記リモートメソッド呼び出し中継オブジェクトへのアクセス情報をクライアントに返却する際に、当該リモートメソッド呼び出し中継手段に対応するスケルトンオブジェクトを起動する手段と
を含む請求項８に記載のプログラム。
【請求項１０】
前記連携手段は、
前記リモート参照取得中継手段が、サーバ側オブジェクトに関するリモート参照の取得要求をクライアントから受け付ける際に、当該リモート参照取得中継手段に関するリモート参照をクライアントとの間で授受するための手段を更に有する請求項８又は９に記載のプログラム。
【請求項１１】
前記リモートメソッド呼び出し中継手段の処理を規定した前記リモートメソッド呼び出し中継オブジェクトのクラスは、対応するサーバオブジェクトのクラスから生成される請求項８記載のプログラム。
【請求項１２】
前記リモートメソッド呼び出し中継手段は、異常動作を前記リモート参照取得要求を発したクライアントに送信する請求項１１に記載のプログラム。
【請求項１３】
前記リモートメソッド呼び出し中継手段は、前記サーバ側オブジェクトに対して呼び出しを行うメソッドの引数とメソッドからの戻り値の型を、前記クライアントが使用可能な型に変換する請求項１１又は１２に記載のプログラム。
【請求項１４】
前記リモートメソッド呼び出し中継オブジェクトのクラスは、
対象とするサーバオブジェクトのクラスファイルを読み込むステップと、
該読み込んだクラスファイルから当該サーバオブジェクトのクラス名の定義情報を取得し、取得したクラス名定義情報と予め決められたクラス名付与規則とから決定されるクラス名を、前記サーバオブジェクトに対応するリモートメソッド呼び出し中継オブジェクトクラスのクラス名として、該リモートメソッド呼び出し中継オブジェクトのクラスファイルである中継クラスファイルに出力するステップと、
前記サーバオブジェクトへのリモート参照をリモート参照取得中継オブジェクトから受け取るためのメソッド定義と、該受け取ったリモート参照を保持するための変数の定義を前記中継クラスファイルに出力するステップと、
前記読み込んだサーバオブジェクトのクラスファイルからサーバオブジェクトクラスとして定義されている全てのメソッドを抽出するステップと、
該抽出したメソッド毎に、該サーバオブジェクトクラスのメソッドと同じメソッド宣言と、該メソッド宣言に対応する処理として、前記サーバオブジェクトにおけるメソッドを前記リモート参照を用いて呼び出すようにした処理プログラムと、を前記中継クラスファイルに出力するステップ
とにより生成される請求項１１に記載のプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
本発明は、クライアント側分散オブジェクトミドルウェアとサーバ側分散オブジェクトミドルウェアの通信プロトコルが異なる場合に、前記クライアント側のオブジェクトから前記サーバ側にあるオブジェクトのメソッド呼び出しを前記夫々の分散オブジェクトミドルウェアを介して実現する方法であって、
クライアント側分散オブジェクトミドルウェアとサーバ側分散オブジェクトミドルウェアとの間に、クライアント側から要求された前記サーバ側オブジェクトのリモート参照の取得を中継するリモート参照取得中継オブジェクトと、前記サーバ側オブジェクトのクラス定義に基づき生成されるリモートメソッド呼び出し中継オブジェクトのクラスとを備え、前記方法は、
前記リモート参照取得中継オブジェクトが、クライアント側分散オブジェクトミドルウェアの通信プロトコルによりクライアントから前記サーバ側オブジェクトに関するリモート参照の取得要求を受け付けるステップと、当該受け付けた取得要求を前記サーバ側分散オブジェクトミドルウェアのプロトコルにより前記サーバに送信するステップと、
前記リモート参照取得中継オブジェクトが、前記サーバ側オブジェクトのリモート参照をサーバから受信するステップと、当該受信したリモート参照に基づいて、前記リモートメソッド呼び出し中継オブジェクトのクラスからそのサーバ側オブジェクトに対応したリモートメソッド呼び出し中継オブジェクトを起動するステップと、
前記リモート参照取得中継オブジェクトが、前記クライアントから要求された前記サーバ側オブジェクトのリモート参照取得要求への応答として、当該起動されたリモートメソッド呼び出し中継オブジェクトへのアクセス情報を前記クライアントに返却するステップとを有する。  
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
また、本発明は、リモート参照取得中継オブジェクトのクラスを定義するプログラムとしても提供できる。そのクラスのファイルを中継計算機に相当するコンピュータに格納し、インスタンス化し、その他必要に応じて他のファイルをコンピュータに格納することにより、本発明の分散オブジェクト連携を実現することができる。