(57)【要約】【課題】各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションプログラムを開発する際に、ＧＵＩフレームワーク固有の変更を解消する。【解決手段】クライアントアプリケーション１２０を実行中のＣＰＵ１０５から各ＧＵＩフレームワークに依存しない各種命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ判定部１１５により、ＧＵＩ部品ＩＤからＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得た後、データ設定方法定義部１１３又はデータ取得方法定義部１１４を参照して、得られた設定方法情報又は取得方法情報に基づいて、ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３にデータ設定又はデータ取得を行う。従って、クライアントアプリケーション１２０を開発する際に、ＧＵＩ部品１２３に対するデータ設定やデータ取得のプログラムの記述については、各ＧＵＩフレームワークに依存しない命令を記述すればよい。【選択図】  図１
2010108370.tif 000002
【特許請求の範囲】
【請求項１】
複数のＧＵＩフレームワークにおける複数のＧＵＩ部品のうちの所望のＧＵＩ部品を表示するためのアプリケーションプログラムが記憶された記憶手段及び前記アプリケーションプログラムを実行するＣＰＵを備えたコンピュータに用いられ、前記記憶手段に記憶されて前記ＣＰＵに実行されるフレームワークプログラムであって、
前記コンピュータを、
ＧＵＩフレームワークを特定するＧＵＩフレームワーク特定情報毎に、当該ＧＵＩフレームワークにおけるＧＵＩ部品ＩＤであれば真理値を出力する関数が記述されたＧＵＩフレームワーク関数情報、が関連付けられて定義されたＧＵＩフレームワーク定義手段、
ＧＵＩ部品ＩＤが入力されると、前記ＧＵＩフレームワーク定義手段を参照して、当該ＧＵＩ部品ＩＤから真理値が得られたＧＵＩフレームワーク関数情報に関連するＧＵＩフレームワーク特定情報を判定するＧＵＩフレームワーク判定手段、
ＧＵＩ部品ＩＤからＧＵＩ部品種別を判別する関数が記述されたＧＵＩ部品種別判別情報が前記ＧＵＩフレームワーク特定情報に関連付けられて定義され且つ、前記ＧＵＩ部品種別判別情報毎に、前記判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報、が関連付けられて定義されたＧＵＩ部品種別定義手段、
ＧＵＩ部品ＩＤ及びＧＵＩフレームワーク特定情報が入力されると、前記ＧＵＩ部品種別定義手段を参照して、当該ＧＵＩ部品ＩＤから判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報を判定するＧＵＩ部品種別判定手段、
ＧＵＩ部品判定命令及びＧＵＩ部品ＩＤが入力されると、当該ＧＵＩ部品ＩＤを前記ＧＵＩフレームワーク判定手段に入力した後、当該ＧＵＩフレームワーク判定手段により判定されたＧＵＩフレームワーク特定情報を得ると、当該ＧＵＩフレームワーク特定情報及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品種別判定手段に入力し、当該ＧＵＩ部品種別判定手段により判定されたＧＵＩ部品種別情報を得ると、当該ＧＵＩ部品種別情報及び当該ＧＵＩフレームワーク特定情報を出力するＧＵＩ部品判定手段、
ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品に設定データを設定する方法が記述された設定方法情報、が関連付けられて定義されたデータ設定方法定義手段、
前記アプリケーションプログラムを実行中のＣＰＵから前記各ＧＵＩフレームワークに依存しないデータ設定命令、ＧＵＩ部品ＩＤ及び設定データが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品判定手段に入力し、前記ＧＵＩ部品判定手段からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、前記データ設定方法定義手段を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する設定方法情報を得た後、この設定方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に当該設定データを設定するデータ設定手段、
ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品に設定された設定データを取得する方法が記述された取得方法情報、が関連付けられて定義されたデータ取得方法定義手段、
前記アプリケーションプログラムを実行中のＣＰＵから前記各ＧＵＩフレームワークに依存しないデータ取得命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品判定手段に入力し、前記ＧＵＩ部品判定手段からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、前記データ取得方法定義手段を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する取得方法情報を得た後、この取得方法情報に基づいて、当該ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品から当該ＧＵＩ部品に設定された設定データを取得し、この取得した設定データを出力するデータ取得手段、
として機能させるためのフレームワークプログラム。
【請求項２】
請求項１に記載のフレームワークプログラムにおいて、
前記設定方法情報は、前記ＧＵＩ部品に設定データを設定する方法に加え、当該設定する前に設定データのフォーマットを変換する方法が記述された情報であり、
前記コンピュータを、
前記データ設定手段からフォーマット変換命令、前記設定方法情報及び設定データが入力されると、前記設定方法情報に基づいて、当該設定データのフォーマットを変換し、この変換後の設定データを前記データ設定手段に出力するフォーマット変換手段、
として更に機能させ、
前記データ設定手段は、
前記設定方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に当該設定データを設定する場合に、フォーマット変換命令、前記設定方法情報及び設定データを前記フォーマット変換手段に入力し、前記フォーマット変換手段から出力された設定データを前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に設定する手段であることを特徴とするフレームワークプログラム。
【請求項３】
請求項１に記載のフレームワークプログラムにおいて、
前記取得方法情報は、前記ＧＵＩ部品に設定された設定データを取得する方法と、当該取得した設定データのフォーマットをチェックする方法とが記述された情報であり、
前記コンピュータを、
前記データ取得手段からフォーマットチェック命令、前記取得方法情報及び設定データが入力されると、前記取得方法情報に基づいて、当該設定データのフォーマットをチェックし、このチェック結果を前記データ取得手段に出力するフォーマットチェック手段、
として更に機能させ、
前記データ取得手段は、
前記取得方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品から当該ＧＵＩ部品に設定された設定データを取得する場合に、フォーマットチェック命令、前記取得方法情報及び設定データを前記フォーマットチェック手段に入力し、前記フォーマットチェック手段から出力されたチェック結果に基づいて、前記設定データを取得する手段であることを特徴とするフレームワークプログラム。
【請求項４】
複数のＧＵＩフレームワークにおける複数のＧＵＩ部品のうちの所望のＧＵＩ部品を表示するためのアプリケーションプログラムが記憶された記憶手段と、前記アプリケーションプログラムを実行するＣＰＵと、前記記憶手段及び前記ＣＰＵに接続されたフレームワーク手段とを備えたクライアント装置であって、
前記フレームワーク手段は、
ＧＵＩフレームワークを特定するＧＵＩフレームワーク特定情報毎に、当該ＧＵＩフレームワークにおけるＧＵＩ部品ＩＤであれば真理値を出力する関数が記述されたＧＵＩフレームワーク関数情報、を関連付けて記憶したＧＵＩフレームワーク定義手段と、
ＧＵＩ部品ＩＤが入力されると、前記ＧＵＩフレームワーク定義手段を参照して、当該ＧＵＩ部品ＩＤから真理値が得られたＧＵＩフレームワーク関数情報に関連するＧＵＩフレームワーク特定情報を判定するＧＵＩフレームワーク判定手段と、
ＧＵＩ部品ＩＤからＧＵＩ部品種別を判別する関数が記述されたＧＵＩ部品種別判別情報を前記ＧＵＩフレームワーク特定情報に関連付けて記憶し且つ、前記ＧＵＩ部品種別判別情報毎に、前記判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報、を関連付けて記憶したＧＵＩ部品種別定義手段と、
ＧＵＩ部品ＩＤ及びＧＵＩフレームワーク特定情報が入力されると、前記ＧＵＩ部品種別定義手段を参照して、当該ＧＵＩ部品ＩＤから判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報を判定するＧＵＩ部品種別判定手段と、
ＧＵＩ部品判定命令及びＧＵＩ部品ＩＤが入力されると、当該ＧＵＩ部品ＩＤを前記ＧＵＩフレームワーク判定手段に入力した後、当該ＧＵＩフレームワーク判定手段により判定されたＧＵＩフレームワーク特定情報を得ると、当該ＧＵＩフレームワーク特定情報及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品種別判定手段に入力し、当該ＧＵＩ部品種別判定手段により判定されたＧＵＩ部品種別情報を得ると、当該ＧＵＩ部品種別情報及び当該ＧＵＩフレームワーク特定情報を出力するＧＵＩ部品判定手段と、
ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品に設定データを設定する方法を記述した設定方法情報、を関連付けて記憶したデータ設定方法定義手段と、
前記アプリケーションプログラムを実行中のＣＰＵから前記データ設定命令、ＧＵＩ部品ＩＤ及び設定データが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品判定手段に入力し、前記ＧＵＩ部品判定手段からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、前記データ設定方法定義手段を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する設定方法情報を得た後、この設定方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に当該設定データを設定するデータ設定手段と、
ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品に設定された設定データを取得する方法を記述した取得方法情報、を関連付けて記憶したデータ取得方法定義手段と、
前記アプリケーションプログラムを実行中のＣＰＵから前記データ取得命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品判定手段に入力し、前記ＧＵＩ部品判定手段からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、前記データ取得方法定義手段を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する取得方法情報を得た後、この取得方法情報に基づいて、当該ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品から当該ＧＵＩ部品に設定された設定データを取得し、この取得した設定データを出力するデータ取得手段と、
を備えたことを特徴とするクライアント装置。
【請求項５】
請求項４に記載のクライアント装置において、
前記設定方法情報は、前記ＧＵＩ部品に設定データを設定する方法に加え、当該設定する前に設定データのフォーマットを変換する方法が記述された情報であり、
前記データ設定手段からフォーマット変換命令、前記設定方法情報及び設定データが入力されると、前記設定方法情報に基づいて、当該設定データのフォーマットを変換し、この変換後の設定データを前記データ設定手段に出力するフォーマット変換手段と、
を更に備えており、
前記データ設定手段は、
前記設定方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に当該設定データを設定する場合に、フォーマット変換命令、前記設定方法情報及び設定データを前記フォーマット変換手段に入力し、前記フォーマット変換手段から出力された設定データを前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に設定する手段であることを特徴とするクライアント装置。
【請求項６】
請求項４に記載のクライアント装置において、
前記取得方法情報は、前記ＧＵＩ部品に設定された設定データを取得する方法と、当該取得した設定データのフォーマットをチェックする方法とが記述された情報であり、
前記データ取得手段からフォーマットチェック命令、前記取得方法情報及び設定データが入力されると、前記取得方法情報に基づいて、当該設定データのフォーマットをチェックし、このチェック結果を前記データ取得手段に出力するフォーマットチェック手段と、
を更に備えており、
前記データ取得手段は、
前記取得方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品から当該ＧＵＩ部品に設定された設定データを取得する場合に、フォーマットチェック命令、前記取得方法情報及び設定データを前記フォーマットチェック手段に入力し、前記フォーマットチェック手段から出力されたチェック結果に基づいて、前記設定データを取得する手段であることを特徴とするクライアント装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フレームワークプログラム及びクライアント装置に係り、例えば、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションを開発する際に、ＧＵＩフレームワーク固有の変更を解消し得るフレームワークプログラム及びクライアント装置に関する。
【背景技術】
【０００２】
一般に、Ｗｅｂアプリケーションやクライアント／サーバ型のアプリケーションといった多層型のアプリケーションが広く用いられている。この種のクライアントアプリケーションとサーバアプリケーションは、以下の役割分担に基づいて構築されている。
【０００３】
すなわち、クライアントアプリケーションの役割分担には、ＧＵＩ(Graphical User Interface)によるデータ入力の受付、ＧＵＩによるデータの表示、ＧＵＩによる利用者のボタン押下などの命令実行指示操作の受付などがある。
【０００４】
サーバアプリケーションの役割分担には、クライアントからのリクエスト及びデータの受信、送信されたリクエスト及びデータの処理、クライアントへの処理結果データの返信などがある。
【０００５】
ここで、ＧＵＩは、テキスト入出力部品、リスト選択部品、表部品などの「ＧＵＩ部品」の集合体で構成される。例えば、Ｗｅｂアプリケーションにおいては、従来はＨＴＭＬ(Hypertext Markup Language)の標準仕様で規定されているＧＵＩ部品を利用してＧＵＩを作成していた。しかし、近年では、ＪａｖａＳｃｒｉｐｔ（登録商標）、ＣＳＳ(Cascading Style Sheets)を駆使した高機能なＧＵＩ部品を持つＧＵＩフレームワークが多く存在する。
【０００６】
しかしながら、各ＧＵＩフレームワーク間では、相互に互換性が無いため、機能的に同一のＧＵＩ部品であっても、入力されたデータの取得方法と取得されるデータ形式、及び、表示するデータの設定方法と設定するデータ形式が、互いに異なっている。
【０００７】
このため、ＧＵＩフレームワーク固有のデータの取得方法とデータの設定方法を用いてクライアントアプリケーションを開発する必要がある。同様に、サーバアプリケーションも、ＧＵＩフレームワーク固有のデータ形式を解釈し、固有のデータ形式で返信をするように開発する必要がある。
【０００８】
よって、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションプログラムを開発する際に、実現したいアプリケーションの仕様や利用者の嗜好に応じてＧＵＩフレームワークを切り替える場合、ＧＵＩを提供する部分以外のプログラムもＧＵＩフレームワーク固有の変更を余儀なくされることになる。
【０００９】
なお、ＧＵＩ部品を用いたアプリケーション開発の負担を軽減するための関連技術としては、例えば、特許文献１記載の技術が知られている。特許文献１記載の技術は、目的のＧＵＩフレームワークについて全てのＧＵＩ部品における属性情報とデータチェック情報を部品入出力データ定義ファイルに登録しておき、ＧＵＩ部品へ入出力があったならば、そのＧＵＩ部品のデータチェック情報を基にしてＧＵＩ入出力データ管理部が入出力チェック処理を行い、さらに、入力データをメッセージ・コマンド処理部で解釈し、メッセージ通信部がＧＵＩ部と内部処理部との間のメッセージ通信を行うことにより、ＧＵＩ部と内部処理部を別プロセスに分けて分離・独立する方式である。
【特許文献１】特開平９−１３４２６７号公報、第７〜８段落
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら特許文献１に記載の技術は、単一のＧＵＩフレームワークについてＧＵＩ部と内部処理部とを分離する方式であるから、複数のＧＵＩフレームワークを切り替えることができない。
【００１１】
従って、前述同様に、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションプログラムを開発する際に、ＧＵＩを提供する部分以外のプログラムもＧＵＩフレームワーク固有の変更を余儀なくされることになる。
【００１２】
本発明は上記実情を考慮してなされたもので、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションプログラムを開発する際に、ＧＵＩフレームワーク固有の変更を解消し得るフレームワークプログラム及びクライアント装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の一つの局面は、複数のＧＵＩフレームワークにおける複数のＧＵＩ部品のうちの所望のＧＵＩ部品を表示するためのアプリケーションプログラムが記憶された記憶手段及び前記アプリケーションプログラムを実行するＣＰＵを備えたコンピュータに用いられ、前記記憶手段に記憶されて前記ＣＰＵに実行されるフレームワークプログラムであって、前記コンピュータを、ＧＵＩフレームワークを特定するＧＵＩフレームワーク特定情報毎に、当該ＧＵＩフレームワークにおけるＧＵＩ部品ＩＤであれば真理値を出力する関数が記述されたＧＵＩフレームワーク関数情報、が関連付けられて定義されたＧＵＩフレームワーク定義手段、ＧＵＩ部品ＩＤが入力されると、前記ＧＵＩフレームワーク定義手段を参照して、当該ＧＵＩ部品ＩＤから真理値が得られたＧＵＩフレームワーク関数情報に関連するＧＵＩフレームワーク特定情報を判定するＧＵＩフレームワーク判定手段、ＧＵＩ部品ＩＤからＧＵＩ部品種別を判別する関数が記述されたＧＵＩ部品種別判別情報が前記ＧＵＩフレームワーク特定情報に関連付けられて定義され且つ、前記ＧＵＩ部品種別判別情報毎に、前記判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報、が関連付けられて定義されたＧＵＩ部品種別定義手段、ＧＵＩ部品ＩＤ及びＧＵＩフレームワーク特定情報が入力されると、前記ＧＵＩ部品種別定義手段を参照して、当該ＧＵＩ部品ＩＤから判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報を判定するＧＵＩ部品種別判定手段、ＧＵＩ部品判定命令及びＧＵＩ部品ＩＤが入力されると、当該ＧＵＩ部品ＩＤを前記ＧＵＩフレームワーク判定手段に入力した後、当該ＧＵＩフレームワーク判定手段により判定されたＧＵＩフレームワーク特定情報を得ると、当該ＧＵＩフレームワーク特定情報及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品種別判定手段に入力し、当該ＧＵＩ部品種別判定手段により判定されたＧＵＩ部品種別情報を得ると、当該ＧＵＩ部品種別情報及び当該ＧＵＩフレームワーク特定情報を出力するＧＵＩ部品判定手段、ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品に設定データを設定する方法が記述された設定方法情報、が関連付けられて定義されたデータ設定方法定義手段、前記アプリケーションプログラムを実行中のＣＰＵから前記各ＧＵＩフレームワークに依存しないデータ設定命令、ＧＵＩ部品ＩＤ及び設定データが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品判定手段に入力し、前記ＧＵＩ部品判定手段からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、前記データ設定方法定義手段を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する設定方法情報を得た後、この設定方法情報に基づいて、前記ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品に当該設定データを設定するデータ設定手段、ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品に設定された設定データを取得する方法が記述された取得方法情報、が関連付けられて定義されたデータ取得方法定義手段、前記アプリケーションプログラムを実行中のＣＰＵから前記各ＧＵＩフレームワークに依存しないデータ取得命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤを前記ＧＵＩ部品判定手段に入力し、前記ＧＵＩ部品判定手段からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、前記データ取得方法定義手段を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する取得方法情報を得た後、この取得方法情報に基づいて、当該ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品から当該ＧＵＩ部品に設定された設定データを取得し、この取得した設定データを出力するデータ取得手段、として機能させるためのフレームワークプログラムである。
【００１４】
なお、上述した局面は、プログラムとして表現したが、これに限らず、装置、方法、又はプログラムを記憶した記憶媒体、として表現することができる。
【００１５】
（作用）
本発明の一つの局面においては、アプリケーションプログラムを実行中のＣＰＵから各ＧＵＩフレームワークに依存しない各種命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ判定手段により、ＧＵＩ部品ＩＤからＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得た後、データ設定方法定義手段又はデータ取得方法定義手段を参照して、得られた設定方法情報又は取得方法情報に基づいて、ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品にデータ設定又はデータ取得を行う。
【００１６】
従って、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションプログラムを開発する際に、ＧＵＩ部品に対するデータ設定やデータ取得のプログラムの記述については、各ＧＵＩフレームワークに依存しない命令を記述すればよいので、ＧＵＩフレームワーク固有の変更を解消することができる。
【発明の効果】
【００１７】
以上説明したように本発明によれば、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたアプリケーションプログラムを開発する際に、ＧＵＩフレームワーク固有の変更を解消できる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の各実施形態について図面を用いて説明する。なお、以下の各装置は、装置毎に、ハードウェア構成、又はハードウェア資源とソフトウェアとの組合せ構成のいずれでも実施可能となっている。組合せ構成のソフトウェアとしては、予めネットワーク又は記憶媒体から対応する装置のコンピュータに保存され、対応する装置の機能を実現させるためのプログラムが用いられる。
【００１９】
（第１の実施形態）
図１は本発明の第１の実施形態に係るフレームワークが適用されたクライアントサーバシステムの構成を示す模式図である。このクライアントサーバシステムは、クライアント装置１００及びサーバ装置２００が互いにネットワークを介して通信可能となっている。
【００２０】
ここで、クライアント装置１００は、補助記憶装置１０１、主記憶装置１０２、通信部１０３、入力部１０４、ＣＰＵ１０５及び表示部１０６が互いにバスを介して接続されている。
【００２１】
補助記憶装置１０１は、ＣＰＵ１０５から読出／書込可能な不揮発性記憶装置であり、例えば、ハードディスク装置等が使用可能となっている。また、補助記憶装置１０１には、後述するフレームワーク１１０、クライアントアプリケーション１２０及びＷｅｂブラウザ１３０といった各種プログラム等が記憶されている。
【００２２】
主記憶装置１０２は、ＣＰＵ１０５から読出／書込可能な記憶装置であり、例えば、ＲＡＭ(Random Access Memory)等が使用可能となっている。また、主記憶装置１０２には、プログラム実行前に補助記憶装置１０１からフレームワーク１１０、クライアントアプリケーション１２０及びＷｅｂブラウザ１３０等が読み出されて記憶される。
【００２３】
通信部１０３は、クライアント装置１００内と、ネットワークとの間の通信インタフェース機器であり、例えば、ＬＡＮカード等が使用可能となっている。
【００２４】
入力部１０４は、ユーザの操作により、各種のデータや命令をクライアント装置１００内に入力する装置であり、例えば、キーボード及びマウス等が使用可能となっている。
【００２５】
ＣＰＵ１０５は、各部１０１〜１０４，１０６にアクセスする機能と、主には、プログラム実行前に補助記憶装置１０１からプログラムを読み出して主記憶装置１０２に書き込む機能と、主記憶装置１０２内の各種プログラムを実行する機能とをもっている。
【００２６】
表示部１０６は、フレームワーク１１０、クライアントアプリケーション１２０及びＷｅｂブラウザ１３０を実行中のＣＰＵ１０５から受ける画面データを表示する装置であり、例えば、液晶表示装置等が使用可能となっている。
【００２７】
一方、サーバ装置２００は、補助記憶装置２０１、主記憶装置２０２、通信部２０３、ＣＰＵ２０４が互いにバスを介して接続されている。
【００２８】
補助記憶装置２０１は、ＣＰＵ２０４から読出／書込可能な不揮発性記憶装置であり、例えば、ハードディスク装置等が使用可能となっている。また、補助記憶装置２０１には、後述するサーバアプリケーション２１０等のプログラムが記憶されている。
【００２９】
主記憶装置２０２は、ＣＰＵ２０４から読出／書込可能な記憶装置であり、例えば、ＲＡＭ等が使用可能となっている。また、主記憶装置２０２には、プログラム実行前に補助記憶装置１０１からサーバアプリケーション２１０等が読み出されて記憶される。
【００３０】
通信部２０３は、サーバ装置２００内と、ネットワークとの間の通信インタフェース機器であり、例えば、ＬＡＮカード等が使用可能となっている。
【００３１】
ＣＰＵ２０４は、各部２０１〜１０３にアクセスする機能と、主には、プログラム実行前に補助記憶装置２０１からプログラムを読み出して主記憶装置２０２に書き込む機能と、主記憶装置２０２内のプログラムを実行する機能とをもっている。
【００３２】
次に、クライアント装置１００において、主記憶装置１０２に記憶されてＣＰＵ１０５に実行されるフレームワーク（フレームワークプログラム）１１０、クライアントアプリケーション（アプリケーションプログラム）１２０及びＷｅｂブラウザ１３０等の各種プログラムについて説明する。
【００３３】
フレームワーク１１０は、概略的には、クライアントアプリケーション１２０内に実装されたデータ設定コード１２１とデータ取得コード１２２に対し、ＧＵＩ部品１２３によらず、統一したインタフェースであるデータ設定部１１１とデータ取得部１１２を提供する。
【００３４】
具体的には、フレームワーク１１０は、データ設定部１１１、データ取得部１１２、データ設定方法定義部１１３、データ取得方法定義部１１４及びＧＵＩ部品判定部１１５を備えている。ＧＵＩ部品判定部１１５は、ＧＵＩフレームワーク判定部１１５ａ、ＧＵＩフレームワーク定義部１１５ｂ、ＧＵＩ部品種別判定部１１５ｃ及びＧＵＩ部品種別定義部１１５ｄを備えている。
【００３５】
ここで、データ設定部１１１は、図２に示すように、概略的には、クライアントアプリケーション１２０の一部であるデータ設定コード１２１に提供されるインタフェースであり、ＧＵＩ部品１２３に設定データを設定する役割を担う。例えば、データ設定部１１１は、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤと設定データを入力とすると、ＧＵＩ部品判定部１１５にＧＵＩ部品ＩＤを入力してＧＵＩ部品１２３を構成しているＧＵＩフレームワーク及びＧＵＩ部品種別を特定する機能と、ＧＵＩ部品判定部１１５により特定されたＧＵＩフレームワーク及びＧＵＩ部品種別からデータ設定方法定義部１１３に定義されている設定方法情報を利用して、ＧＵＩ部品１２３に設定データを設定する機能と、をクライアント装置１００に実現させるためのプログラムとなっている。
【００３６】
具体的には、データ設定部１１１は、クライアントアプリケーション１２０を実行中のＣＰＵから各ＧＵＩフレームワークに依存しないデータ設定命令、ＧＵＩ部品ＩＤ及び設定データが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤをＧＵＩ部品判定部１１５に入力し、ＧＵＩ部品判定部１１５からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、データ設定方法定義部１１３を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する設定方法情報を得た後、この設定方法情報に基づいて、ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３に当該設定データを設定するデータ設定手段、としてクライアント装置１００を機能させるためのプログラムである。
【００３７】
データ取得部１１２は、図３に示すように、概略的には、クライアントアプリケーション１２０であるデータ取得コード１２２に提供されるインタフェースであり、ＧＵＩ部品１２３から設定データを取得する役割を担う。例えば、データ取得部１１２は、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤを入力とすると、ＧＵＩ部品判定部１１５にＧＵＩ部品ＩＤを入力してＧＵＩ部品１２３を構成しているＧＵＩフレームワーク及びＧＵＩ部品種別を特定する機能と、ＧＵＩ部品判定部１１５により特定されたＧＵＩフレームワーク及びＧＵＩ部品種別からデータ取得方法定義部１１４に定義されているデータ取得方法を利用して、ＧＵＩ部品１２３に設定されているデータを取得し、データ取得コード１２２に返却する機能と、をクライアント装置１００に実現させるためのプログラムである。
【００３８】
具体的には、データ取得部１１２は、クライアントアプリケーション１２０を実行中のＣＰＵ１０５から各ＧＵＩフレームワークに依存しないデータ取得命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ部品判定命令及び当該ＧＵＩ部品ＩＤをＧＵＩ部品判定部１１５に入力し、ＧＵＩ部品判定部１１５からＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得ると、データ取得方法定義部１１４を参照して、当該ＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報に関連する取得方法情報を得た後、この取得方法情報に基づいて、当該ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３から当該ＧＵＩ部品１２３に設定された設定データを取得し、この取得した設定データを出力するデータ取得手段、としてクライアント装置１００を機能させるためのプログラムである。
【００３９】
データ設定方法定義部１１３は、概略的には、ＧＵＩフレームワーク及びＧＵＩ部品種別毎にデータの設定方法が定義されている。
【００４０】
具体的には、データ設定方法定義部１１３は、図４に示すように、ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品１２３に設定データを設定する方法が記述された設定方法情報、が関連付けられて定義されている。
【００４１】
データ取得方法定義部１１４は、概略的には、ＧＵＩフレームワーク及びＧＵＩ部品種別毎にデータの取得方法が定義されている。
【００４２】
具体的には、データ取得方法定義部１１４は、図５に示すように、ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報毎に、ＧＵＩ部品１２３に設定された設定データを取得する方法が記述された取得方法情報、が関連付けられて定義されている。
【００４３】
ＧＵＩ部品判定部１１５は、概略的には、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤから、ＧＵＩ部品１２３を構成しているＧＵＩフレームワークとＧＵＩ部品種別とをそれぞれ特定するＧＵＩフレームワーク特定情報及びＧＵＩ部品種別特定情報を特定する機能をクライアント装置１００に実現させるためのプログラムとなっている。
【００４４】
具体的には、ＧＵＩ部品判定部１１５は、ＧＵＩ部品判定命令及びＧＵＩ部品ＩＤが入力されると、当該ＧＵＩ部品ＩＤをＧＵＩフレームワーク判定部１１５ａに入力した後、当該ＧＵＩフレームワーク判定部１１５ａにより判定されたＧＵＩフレームワーク特定情報を得ると、当該ＧＵＩフレームワーク特定情報及び当該ＧＵＩ部品ＩＤをＧＵＩ部品種別判定部１１５ｃに入力し、当該ＧＵＩ部品種別判定部１１５ｃにより判定されたＧＵＩ部品種別情報を得ると、当該ＧＵＩ部品種別情報及び当該ＧＵＩフレームワーク特定情報を出力するＧＵＩ部品判定手段、としてクライアント装置１００を機能させるためのプログラムである。
【００４５】
ＧＵＩフレームワーク判定部１１５ａは、概略的には、ＧＵＩ部品１２３を構成しているＧＵＩフレームワークを特定する役割を担っている。例えば、ＧＵＩフレームワーク判定部１１５ａは、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤが入力されると、ＧＵＩ部品ＩＤからＧＵＩフレームワークを特定する際に、ＧＵＩフレームワークの特定方法が定義されたＧＵＩフレームワーク定義部１１５ｂを利用する機能、をクライアント装置１００に実現させるためのプログラムとなっている。
【００４６】
具体的には、ＧＵＩフレームワーク判定部１１５ａは、ＧＵＩ部品ＩＤが入力されると、ＧＵＩフレームワーク定義部１１５ｂを参照して、当該ＧＵＩ部品ＩＤから真理値が得られたＧＵＩフレームワーク関数情報に関連するＧＵＩフレームワーク特定情報を判定するＧＵＩフレームワーク判定手段、としてクライアント装置１００を機能させるためのプログラムである。
【００４７】
ＧＵＩフレームワーク定義部１１５ｂは、概略的には、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤからＧＵＩフレームワークを特定する方法が定義されている。
【００４８】
具体的には、ＧＵＩフレームワーク定義部１１５ｂは、図６に示すように、ＧＵＩフレームワークを特定するＧＵＩフレームワーク特定情報毎に、当該ＧＵＩフレームワークにおけるＧＵＩ部品ＩＤであれば真理値を出力する関数が記述されたＧＵＩフレームワーク関数情報、が関連付けられて定義されている。
【００４９】
ＧＵＩ部品種別判定部１１５ｃは、概略的には、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤと、ＧＵＩフレームワーク判定部１１５ａで特定されたＧＵＩフレームワーク特定情報とが入力されると、このＧＵＩフレームワーク特定情報が特定したＧＵＩフレームワークが保有するＧＵＩ部品１２３の中で、利用されているＧＵＩ部品のＧＵＩ部品種別を特定する機能、をクライアント装置１００に実現させるためのプログラムとなっている。
【００５０】
具体的には、ＧＵＩ部品種別判定部１１５ｃは、ＧＵＩ部品ＩＤ及びＧＵＩフレームワーク特定情報が入力されると、ＧＵＩ部品種別定義部１１５ｄを参照して、当該ＧＵＩ部品ＩＤから判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報を判定するＧＵＩ部品種別判定手段、としてクライアント装置１００を機能させるためのプログラムである。
【００５１】
ＧＵＩ部品種別定義部１１５ｄは、概略的には、ＧＵＩ部品判定部１１５ａで特定されたＧＵＩフレームワークと、ＧＵＩ部品１２３を特定するＧＵＩ部品ＩＤとから、利用されているＧＵＩ部品種別を特定する方法が定義されている。
【００５２】
具体的には、ＧＵＩ部品種別定義部１１５ｄは、図７に示すように、ＧＵＩ部品ＩＤからＧＵＩ部品種別を判別する関数が記述されたＧＵＩ部品種別判別情報がＧＵＩフレームワーク特定情報に関連付けられて定義され且つ、ＧＵＩ部品種別判別情報毎に、判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報、が関連付けられて定義されている。
【００５３】
クライアントアプリケーション１２０は、複数のＧＵＩフレームワークにおける複数のＧＵＩ部品のうちの所望のＧＵＩ部品を表示部１０６に表示するためのアプリケーションプログラムであり、例えば、Ｗｅｂブラウザ１３０上で実行される。このクライアントアプリケーション１２０は、例えば、ＨＴＭＬとＪａｖａＳｃｒｉｐｔ、ＣＳＳで定義されるとともに、テキストボックス、リスト、ボタン及び表などで構成される。テキストボックス、リスト、表などのＧＵＩを構成する要素は、ＧＵＩ部品１２３により実現される。この種のＧＵＩ部品１２３を含むＧＵＩ画面の例を図８に示す。
【００５４】
データ設定コード１２１は、ＧＵＩ部品１２３に設定データを設定するためのコードであり、クライアントアプリケーション１２０に実装されている。データ設定コード１２１は、画面上のボタンが押下されたタイミングや、サーバアプリケーション２１０からデータを受信したタイミングで実行される。データ設定コード１２１は、ＪａｖａＳｃｒｉｐｔにより実現されるのが一般的である。データ設定コード１２１は、ＧＵＩ部品１２３を直接操作して設定データを設定するのではなく、フレームワーク１１０を利用してＧＵＩ部品１２３に設定データを設定する機能、をクライアント装置１００に実現させるためのプログラムである。データ設定コード１２１がフレームワーク１１０を利用することにより、クライアントアプリケーション１２０のコードには、ＧＵＩ部品１２３を構成するＧＵＩフレームワークとＧＵＩ部品種別に依存するコードが記述されない。
【００５５】
データ取得コード１２２は、ＧＵＩ部品１２３からデータを取得するためのコードであり、クライアントアプリケーションに実装されている。データ取得コード１２２は、画面上のボタンが押下されたタイミングや、サーバアプリケーション２１０に送信するためのデータを取得するために実行される。データ取得コード１２２は、ＪａｖａＳｃｒｉｐｔにより実現されるのが一般的である。データ取得コード１２２は、ＧＵＩ部品１２３を直接操作して設定データを取得するのではなく、フレームワーク１１０を利用してＧＵＩ部品１２３から設定データを取得する機能、をクライアント装置１００に実現させるためのプログラムである。データ取得コード１２２がフレームワーク１１０を利用することにより、クライアントアプリケーション１２０のコードには、ＧＵＩ部品１２３を構成するＧＵＩフレームワークとＧＵＩ部品種別に依存するコードが記述されない。
【００５６】
ＧＵＩ部品１２３は、クライアントアプリケーション１２０の画面上に配置されるテキストボックス、リスト、ボタン、表などの要素である。ＨＴＭＬ言語やＤｏｊｏ等のＧＵＩフレームワークにより構成される。
【００５７】
続いて、サーバ装置２００において、主記憶装置２０２に記憶されてＣＰＵ２０４に実行されるサーバアプリケーション（プログラム）２１０について説明する。
【００５８】
サーバアプリケーション２１０は、クライアントアプリケーション１２０と通信により連携するアプリケーションである。クライアントアプリケーション１２０に表示するデータを通信によりクライアントアプリケーション１２０に返信する機能と、クライアントアプリケーション１２０から送信されたデータを受信する機能と、をサーバ装置２００に実現させるためのプログラムである。
【００５９】
返信データは、データ設定コード１２１によりクライアントアプリケーション１２０上に設定される。そのためサーバ側で作成する返信データに、クライアントアプリケーション１２０側で利用されているＧＵＩフレームワークの情報は不要である。
【００６０】
受信データは、データ取得コード１２２により取得された設定データがクライアントアプリケーション１２０から送信されるため、クライアントアプリケーション１２０側で利用されているＧＵＩフレームワークによらず統一したデータ型式となっている。
【００６１】
次に、以上のように構成されたクライアントサーバシステムの動作を説明する。  
クライアント装置１００においては、ＣＰＵ１０５がフレームワーク１１０、クライアントアプリケーション１２０及びＷｅｂブラウザ１３０を実行中であるとする。同様に、サーバ装置２００においては、ＣＰＵ２０４がサーバアプリケーション２１０を実行中であるとする。
【００６２】
このとき、クライアント装置１００では、ＣＰＵ１０５がクライアントアプリケーション１２０の実行に基づき、検索用のテキストボックス等のＧＵＩ部品１２３や検索ボタンを含む画面データを作成して表示部１０６に表示中であるとする。
【００６３】
ここで、クライアント装置１００においては、クライアントアプリケーション１２０を実行中のＣＰＵ１０５に対し、ユーザによる入力部１０４の操作により、検索条件入力命令が入力されると共に（ＳＴ１）、検索ボタンの押下げにより検索実行命令が入力されたとする（ＳＴ２）。
【００６４】
ＣＰＵ１０５は、この検索実行命令に基づき、ＧＵＩ部品１２３内の検索条件を取得するための検索条件取得命令により、クライアントアプリケーション１２０内に実装されているデータ取得コード１２２を呼び出して実行する（ＳＴ３）。なお、本実施形態における「命令」の用語は「メッセージ」と読み替えてもよい。例えば「検索条件取得命令」は「検索条件取得メッセージ」と読み替えてもよい。これは、他の各種命令でも同様である。
【００６５】
ＣＰＵ１０５は、データ取得コード１２２の実行に基づき、ＧＵＩ部品１２３内の設定データを取得するように、当該ＧＵＩ部品１２３のＧＵＩ部品ＩＤを引数としたデータ取得命令により、フレームワーク１１０内のデータ取得部１１２を呼び出して実行する（ＳＴ４）。このとき、引数のＧＵＩ部品ＩＤは、データ取得対象が複数のＧＵＩ部品１２３ならばＧＵＩ部品ＩＤ群となる。また、引数のＧＵＩ部品ＩＤがＧＵＩ部品ＩＤ群の場合、以下のステップＳＴ５〜ＳＴ１１は、ＧＵＩ部品ＩＤの個数だけ繰り返し実行される。また、データ取得コード１２２には、取得対象のＧＵＩ部品１２３の属するＧＵＩフレームワーク（Ｄｏｊｏ、Ｙａｈｏｏ！ＵＩ(User Interface)等）に依存するコードや、ＧＵＩ部品種別（テキストボックス、コンボボックス等）に依存するコードが存在しない。このため、利用するＧＵＩ部品１２３を変更しても、データ取得コード１２２の変更は不要である。
【００６６】
ＣＰＵ１０５は、データ取得部１１２の実行に基づき、ステップＳＴ４のＧＵＩ部品ＩＤを引数としたＧＵＩ部品判定命令により、ＧＵＩ部品判定部１１５を呼び出して実行する（ＳＴ５）。
【００６７】
ＣＰＵ１０５は、ＧＵＩ部品判定部１１５の実行に基づき、ＧＵＩ部品判定命令の引数のＧＵＩ部品ＩＤが示すＧＵＩ部品１２３のＧＵＩフレームワークとＧＵＩ部品種別を判定する（ＳＴ６）。
【００６８】
このステップＳＴ６は、以下のステップＳＴ６−１〜ＳＴ６−８として実行される。
【００６９】
すなわち、ＣＰＵ１０５は、ＧＵＩ部品判定部１１５の実行に基づき、ＧＵＩ部品ＩＤを引数としたＧＵＩフレームワーク判定命令により、ＧＵＩフレームワーク判定部１１５ａを呼び出して実行する（ＳＴ６−１）。
【００７０】
ＣＰＵ１０５は、ＧＵＩフレームワーク判定部１１５ａの実行に基づき、ＧＵＩフレームワーク定義部１１５ｂを参照して（ＳＴ６−２，ＳＴ６−３）、引数のＧＵＩ部品ＩＤから真理値が得られたＧＵＩフレームワーク関数情報に関連するＧＵＩフレームワーク特定情報を判定し、この判定したＧＵＩフレームワーク特定情報をＧＵＩ部品判定部１１５の処理に出力する（ＳＴ６−４）。
【００７１】
続いて、ＣＰＵ１０５は、ステップＳＴ６−１のＧＵＩ部品ＩＤと、ステップＳＴ６−４のＧＵＩフレームワーク特定情報とを引数としたＧＵＩ部品種別判定命令により、ＧＵＩ部品種別判定部１１５ｃを呼び出して実行する（ＳＴ６−５）。
【００７２】
ＣＰＵ１０５は、ＧＵＩ部品種別判定部１１５ｃの実行に基づき、ＧＵＩ部品種別定義部１１５ｄを参照して（ＳＴ６−６，ＳＴ６−７）、当該ＧＵＩ部品ＩＤから判別されたＧＵＩ部品種別を特定するＧＵＩ部品種別情報を判定し、この判定したＧＵＩ部品種別情報をＧＵＩ部品判定部１１５の処理に出力する（ＳＴ６−８）。以上でステップＳＴ６が完了する。
【００７３】
次に、ＣＰＵ１０５は、ＧＵＩ部品判定部１１５の実行に基づき、ステップＳＴ６−４のＧＵＩフレームワーク特定情報と、ステップＳＴ６−８のＧＵＩ部品種別情報とをデータ取得部１１２の処理に出力する（ＳＴ７）。
【００７４】
ＣＰＵ１０５は、データ取得部１１２の実行に基づき、このＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報を引数としたデータ取得方法問い合わせ命令により、データ取得方法定義部１１４を参照して、当該ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報に関連する取得方法情報を得る（ＳＴ９）。
【００７５】
しかる後、ＣＰＵ１０５は、この取得方法情報に基づいて、当該ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３から当該ＧＵＩ部品に設定された検索条件（設定データ）を取得し（ＳＴ１０，ＳＴ１１）、この取得した検索条件をデータ取得コード１２２の処理に出力する（ＳＴ１２）。
【００７６】
ＣＰＵ１０５は、データ取得コード１２２の実行に基づき、この検索条件をクライアントアプリケーション１２０の処理に出力する（ＳＴ１３）。
【００７７】
ＣＰＵ１０５は、クライアントアプリケーション１２０の実行に基づき、この検索条件を通信部１０３からサーバ装置２００に送信する（ＳＴ１４）。
【００７８】
サーバ装置２００においては、この設定データを通信部２０３により受けると、サーバアプリケーション２１０を実行中のＣＰＵ２０４が、この設定データに基づいて検索処理を実行する（ＳＴ１５）。
【００７９】
ＣＰＵ２０４は、サーバアプリケーション２１０の実行に基づき、この検索処理の検索結果と、この検索結果を表示するＧＵＩ部品１２３を示すＧＵＩ部品ＩＤとを含む返信データを作成する（ＳＴ１６）。
【００８０】
しかる後、ＣＰＵ２０４は、サーバアプリケーション２１０の実行に基づき、この返信データを通信部２０３からクライアント装置１００に送信する（ＳＴ１７）。
【００８１】
クライアント装置１００においては、この返信データを通信部１０３により受けると、ＣＰＵ１０５が、クライアントアプリケーション１２０の実行に基づき、返信データを引数とした検索結果表示命令により、クライアントアプリケーション１２０内に実装されているデータ設定コード１２１を呼び出して実行する（ＳＴ１８）。
【００８２】
ＣＰＵ１０５は、データ設定コード１２１の実行に基づき、返信データ内のＧＵＩ部品ＩＤ及び検索結果を引数としたデータ設定命令により、フレームワーク１１０内のデータ設定部１１１を呼び出して実行する（ＳＴ１９）。ここでは、前述同様に、引数のＧＵＩ部品ＩＤは、データ設定対象のＧＵＩ部品１２３が複数ならばＧＵＩ部品ＩＤ群となる。また、引数のＧＵＩ部品ＩＤがＧＵＩ部品ＩＤ群の場合、以下のステップＳＴ２０〜ＳＴ２５は、ＧＵＩ部品ＩＤの個数だけ繰り返し実行される。このデータ設定部１１１は、データ取得部１１２同様に、設定対象のＧＵＩ部品１２３の属するＧＵＩフレームワークとＧＵＩ部品種別に依存しない。
【００８３】
ＣＰＵ１０５は、データ設定部１１１の実行に基づき、ステップＳＴ１９のＧＵＩ部品ＩＤを引数としたＧＵＩ部品判定命令により、ＧＵＩ部品判定部１１５を呼び出して実行する（ＳＴ２０）。
【００８４】
ＣＰＵ１０５は、ＧＵＩ部品判定部１１５の実行に基づき、ＧＵＩ部品判定命令の引数のＧＵＩ部品ＩＤが示すＧＵＩ部品１２３のＧＵＩフレームワークとＧＵＩ部品種別を判定する（ＳＴ２１）。
【００８５】
このステップＳＴ２１は、図１３に示すように、前述同様に、ステップＳＴ２１−１〜ＳＴ２１−８として実行される。なお、ステップＳＴ２１は、前述したステップＳＴ６と同じ処理であり、ステップＳＴ２１−１〜ＳＴ２１−８は、前述したステップＳＴ６−１〜ＳＴ６−８と同じ処理である。
【００８６】
次に、ＣＰＵ１０５は、ＧＵＩ部品判定部１１５の実行に基づき、ステップＳＴ２１−４のＧＵＩフレームワーク特定情報と、ステップＳＴ２１−８のＧＵＩ部品種別情報とをデータ設定部１１１の処理に出力する（ＳＴ２２）。
【００８７】
ＣＰＵ１０５は、データ設定部１１１の実行に基づき、このＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報を引数としたデータ設定方法問い合わせ命令により、データ取得方法定義部１１４を参照して、当該ＧＵＩフレームワーク特定情報及びＧＵＩ部品種別情報に関連する設定方法情報を得る（ＳＴ２４）。
【００８８】
しかる後、ＣＰＵ１０５は、この設定方法情報に基づいて、当該ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３に検索結果（設定データ）を設定する（ＳＴ２５）。
【００８９】
上述したように本実施形態によれば、クライアントアプリケーション１２０を実行中のＣＰＵ１０５から各ＧＵＩフレームワークに依存しない各種命令及びＧＵＩ部品ＩＤが入力されると、ＧＵＩ判定部１１５の実行により、ＧＵＩ部品ＩＤからＧＵＩ部品種別情報及びＧＵＩフレームワーク特定情報を得た後、データ設定方法定義部１１３又はデータ取得方法定義部１１４を参照して、得られた設定方法情報又は取得方法情報に基づいて、ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３にデータ設定又はデータ取得を行う。
【００９０】
従って、各ＧＵＩフレームワーク間で機能的に同一のＧＵＩ部品を用いたクライアントアプリケーション１２０を開発する際に、ＧＵＩ部品に対するデータ設定やデータ取得のプログラムの記述については、各ＧＵＩフレームワークに依存しない命令を記述すればよいので、ＧＵＩフレームワーク固有の変更を解消することができる。
【００９１】
補足すると、本実施形態においては、従来とは異なり、利用するＧＵＩフレームワークごとにＧＵＩ部品１２３のデータ入出力方法を変更する必要がないクライアントアプリケーション１２０を作成することができる。
【００９２】
その結果、実現したいアプリケーションの要件に合わせて複数種類の中からＧＵＩフレームワークの選択又はＧＵＩフレームワークのバージョンアップ等が発生しても、アプリケーション１２０を変更する必要がなく、ユーザの利便性ならびに生産性の向上に寄与することができる。
【００９３】
また、本実施形態は、複数のＧＵＩフレームワークを切り替えることができる。
【００９４】
（第２の実施形態）
次に、本発明の第２の実施形態について説明する。  
本実施形態は、Ｗｅｂブラウザで動作するアプリケーション以外にも適用した形態となっている。例えば、Ｊａｖａ（登録商標）言語によりＧＵＩ画面を作成する場合、利用可能なＧＵＩフレームワークとしては、ＡＷＴ(Abstract Windowing Toolkit)、ＳｗｉｎｇなどＪａｖａが標準で備えるＧＵＩフレームワークに加えて、第三者が開発したＧＵＩフレームワークが存在する。
【００９５】
前述したフレームワーク１００は、図４〜図７に示したように、各定義部１１３，１１４，１１５ｂ，１１５ｄに各情報を定義することにより、Ｊａｖａが標準で備えるＧＵＩフレームワークと、第三者が開発したＧＵＩフレームワークとのいずれでも適用可能となっている。
【００９６】
従って、本実施形態によれば、任意のＧＵＩフレームワークを用いる場合であっても、第１の実施形態と同様に実施して同様の効果を得ることができる。
【００９７】
（第３の実施形態）
図１４は本発明の第３の実施形態に係るフレームワークが適用されたクライアントサーバシステムの模式図であり、図１と同一部分には同一符号を付してその詳しい説明を省略し、ここでは異なる部分について主に述べる。
【００９８】
すなわち、本実施形態は、第１の実施形態の変形例であり、データ設定前のフォーマット変換と、データ取得後のフォーマットチェック処理を実行する形態となっている。
【００９９】
例えば、フレームワーク１１０において、データ設定部１１１とＧＵＩ部品１２３の間と、データ取得部１１２とＧＵＩ部品１２３の間に、コールバック処理実行部１１６を付加した構成により、データ設定及びデータ取得の処理に横断的な前処理と後処理を付加することが可能となる。
【０１００】
すなわち、データ取得の後処理として取得されたデータのフォーマットチェック処理を付加できる。また、データ設定の前処理として、設定するデータのフォーマット変換処理を付加できる。なお、フォーマット変換処理及びフォーマットチェック処理は、両方を付加する形態に限らず、いずれか一方のみを付加する形態に変形してもよい。
【０１０１】
具体的には、例えば、データ設定方法定義部１１３内の設定方法情報は、ＧＵＩ部品１２３に設定データを設定する方法に加え、当該設定する前に設定データのフォーマットを変換する方法が記述された情報となっている。
【０１０２】
同様に、データ取得方法定義部１１４内の取得方法情報は、ＧＵＩ部品１２３に設定された設定データを取得する方法と、当該取得した設定データのフォーマットをチェックする方法とが記述された情報となっている。
【０１０３】
また、データ設定部１１１は、前述したデータ設定手段において、設定方法情報に基づいて、ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３に当該設定データを設定する場合に、フォーマット変換命令、設定方法情報及び設定データをコールバック処理実行部１１６に入力し、コールバック処理実行部１１６から出力された設定データをＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３に設定する手段、としてクライアント装置１００を機能させるためのプログラムとなっている。
【０１０４】
データ取得部１１２は、前述したデータ取得手段において、取得方法情報に基づいて、ＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３から当該ＧＵＩ部品１２３に設定された設定データを取得する場合に、フォーマットチェック命令、取得方法情報及び設定データをコールバック処理実行部１１６に入力し、コールバック処理実行部から出力されたチェック結果に基づいて、設定データを取得する手段、としてクライアント装置１００を機能させるためのプログラムとなっている。
【０１０５】
コールバック処理実行部１１６は、フレームワーク１１０に実装され、データ設定部１１１からフォーマット変換命令、設定方法情報及び設定データが入力されると、設定方法情報に基づいて、当該設定データのフォーマットを変換し、この変換後の設定データをデータ設定部１１１に出力するフォーマット変換手段、としてクライアント装置１００を機能させるためのプログラムとなっている。
【０１０６】
同様に、コールバック処理実行部１１６は、フレームワーク１１０に実装され、データ取得部１１１からフォーマットチェック命令、取得方法情報及び設定データが入力されると、取得方法情報に基づいて、当該設定データのフォーマットをチェックし、このチェック結果をデータ取得部１１２に出力するフォーマットチェック手段、としてクライアント装置１００を機能させるためのプログラムとなっている。
【０１０７】
次に、以上のように構成されたクライアントサーバシステムの動作を図１５及び図１６のシーケンス図を用いて説明する。
【０１０８】
始めに、ステップＳＴ１〜ＳＴ１１の処理は、図１５に示すように、前述した通りに実行される。
【０１０９】
ステップＳＴ１１の後、ＣＰＵ１０５は、データ取得部１１２の実行に基づき、取得方法情報及び検索条件（設定データ）を引数としたフォーマットチェック命令により、コールバック処理実行部１１６を呼び出して実行する（ＳＴ１２−１）。
【０１１０】
ＣＰＵ１０５は、コールバック処理実行部１１６の実行に基づき、この取得方法情報内のフォーマットチェック方法により、当該検索条件のフォーマットをチェックし、このチェック結果をデータ取得部１１２の処理に出力する（ＳＴ１２−２）。
【０１１１】
ＣＰＵ１０５は、このチェック結果が異常を示すとき、ステップＳＴ１１で取得した検索条件を廃棄し、異常メッセージをデータ取得コード１２２の処理を介してクライアントアプリケーション１２０の処理に出力する。
【０１１２】
一方、ＣＰＵ１０５は、ステップＳＴ１２−２のチェック結果が正常を示すとき、ステップＳＴ１１で取得した検索条件をデータ取得コード１２２の処理に出力する（ＳＴ１２−３）。
【０１１３】
続いて、ステップＳＴ１３〜ＳＴ２４の処理は、図１５、図１１及び図１６に示すように、前述した通りに実行される。
【０１１４】
ステップＳＴ２４の後、ＣＰＵ１０５は、データ設定部１１１の実行に基づき、設定方法情報及び検索結果（設定データ）を引数としたフォーマットチェック命令により、コールバック処理実行部１１６を呼び出して実行する（ＳＴ２５−１）。
【０１１５】
ＣＰＵ１０５は、コールバック処理実行部１１６の実行に基づき、この設定方法情報内のフォーマット変換方法により、当該検索結果のフォーマットを変換し、この変換後の検索結果をデータ設定部１１１の処理に出力する（ＳＴ２５−２）。
【０１１６】
ＣＰＵ１０５は、データ設定部１１１の実行により、ステップＳＴ２４の設定方法情報に基づいて、フォーマット変換後の検索結果をＧＵＩ部品ＩＤにより特定されたＧＵＩ部品１２３に設定する（ＳＴ２５−３）。
【０１１７】
上述したように本実施形態によれば、第１の実施形態の効果に加え、データ設定前のフォーマット変換と、データ取得後のフォーマットチェック処理を実行することができる。
【０１１８】
また、本実施形態は、第１の実施形態に限らず、第２の実施形態に適用することもできる。
【０１１９】
また、第１〜第３の各実施形態は、ソフトウェアとしてのフレームワーク１１０をハードウェア資源の主記憶装置１０２に記憶してＣＰＵ１０５が実行する構成に限らず、図１７又は図１８に示すように、フレームワーク１１０に代えて、フレームワーク１１０をハードウェア構成の専用プロセッサとして実現したフレームワーク部１１０’を備えた構成に変形してもよい。このように変形した場合でも、クライアントサーバシステムは前述同様に動作し、前述した効果を得ることができる。
【０１２０】
なお、上記実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスク、ＺＩＰなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ、ＭＤなど）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０１２１】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０１２２】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が上記実施形態を実現するための各処理の一部を実行しても良い。
【０１２３】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０１２４】
また、記憶媒体は１つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０１２５】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０１２６】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０１２７】
なお、本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
【図面の簡単な説明】
【０１２８】
【図１】本発明の第１の実施形態に係るフレームワークが適用されたクライアントサーバシステムの構成を示す模式図である。
【図２】同実施形態におけるデータ設定部を説明するための模式図である。
【図３】同実施形態におけるデータ取得部を説明するための模式図である。
【図４】同実施形態におけるデータ設定方法定義部の一例を示す模式図である。
【図５】同実施形態におけるデータ取得方法定義部の一例を示す模式図である。
【図６】同実施形態におけるＧＵＩフレームワーク定義部の一例を示す模式図である。
【図７】同実施形態におけるＧＵＩ部品種別定義部の一例を示す模式図である。
【図８】同実施形態におけるＧＵＩ画面の一例を示す模式図である。
【図９】同実施形態における動作を説明するためのシーケンス図である。
【図１０】同実施形態における動作を説明するためのシーケンス図である。
【図１１】同実施形態における動作を説明するためのシーケンス図である。
【図１２】同実施形態における動作を説明するためのシーケンス図である。
【図１３】同実施形態における動作を説明するためのシーケンス図である。
【図１４】本発明の第３の実施形態に係るフレームワークが適用されたクライアントサーバシステムの構成を示す模式図である。
【図１５】同実施形態における動作を説明するためのシーケンス図である。
【図１６】同実施形態における動作を説明するためのシーケンス図である。
【図１７】第１の実施形態の変形構成を示す模式図である。
【図１８】第３の実施形態の変形構成を示す模式図である。
【符号の説明】
【０１２９】
１１０…フレームワーク、１１０’…フレームワーク部、１１１…データ設定部、１１２…データ取得部、１１３…データ設定方法定義部、１１４…データ取得方法定義部、１１５…ＧＵＩ部品判定部、１１５ａ…ＧＵＩフレームワーク判定部、１１５ｂ…ＧＵＩフレームワーク定義部、１１５ｃ…ＧＵＩ部品種別判定部、１１５ｄ…ＧＵＩ部品種別定義部、１１６…コールバック処理実行部、１２０…クライアントアプリケーション、１２１…データ設定コード、１２２…データ取得コード、１２３…ＧＵＩ部品、２１０…サーバアプリケーション。
【図１】
2010108370.tif 000003
【図２】
2010108370.tif 000004
【図３】
2010108370.tif 000005
【図４】
2010108370.tif 000006
【図５】
2010108370.tif 000007
【図６】
2010108370.tif 000008
【図７】
2010108370.tif 000009
【図８】
2010108370.tif 000010
【図９】
2010108370.tif 000011
【図１０】
2010108370.tif 000012
【図１１】
2010108370.tif 000013
【図１２】
2010108370.tif 000014
【図１３】
2010108370.tif 000015
【図１４】
2010108370.tif 000016
【図１５】
2010108370.tif 000017
【図１６】
2010108370.tif 000018
【図１７】
2010108370.tif 000019
【図１８】
2010108370.tif 000020