JP2008083745A - 情報処理方法及び情報処理システム - Google Patents

情報処理方法及び情報処理システム Download PDF

Info

Publication number
JP2008083745A
JP2008083745A JP2006259546A JP2006259546A JP2008083745A JP 2008083745 A JP2008083745 A JP 2008083745A JP 2006259546 A JP2006259546 A JP 2006259546A JP 2006259546 A JP2006259546 A JP 2006259546A JP 2008083745 A JP2008083745 A JP 2008083745A
Authority
JP
Japan
Prior art keywords
information processing
gui
action
gui object
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006259546A
Other languages
English (en)
Other versions
JP4342545B2 (ja
Inventor
Taro Masuda
太郎 増田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2006259546A priority Critical patent/JP4342545B2/ja
Publication of JP2008083745A publication Critical patent/JP2008083745A/ja
Application granted granted Critical
Publication of JP4342545B2 publication Critical patent/JP4342545B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • User Interface Of Digital Computer (AREA)

Abstract

【課題】情報処理システムにおける開発効率を向上させる。
【解決手段】
情報処理装置2は、GUI画面に対して入力イベントが発生すると、入力イベントがユーザアクションに変換され、GUIオブジェクトのスタブであるGUIオブジェクトスタブでユーザアクションを実行するスレッドを生成し、スレッドにおいてユーザアクションを実行する。情報処理装置2は、ユーザアクションの実行においてGUIオブジェクトのメソッドが呼び出された場合、呼び出しに関するパラメタに基づいて情報処理端末1に新たなGUI画面を表示する命令を出力し、新たなGUI画面に対して新たな入力イベントが発生すると、新たな入力イベントをリターンデータに変換し、リターンデータに基づいて、スレッドにおいてユーザアクションを実行した結果を、ユーザアクションの実行命令の戻り値として出力する。
【選択図】図1

Description

本発明は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理方法及び情報処理システムに関する。
昨今のソフトウェア開発において、クライアントサーバ型システムが一般的に用いられている。このクライアントサーバシステムにおいては、クライアントである情報処理端末で処理の条件データなどが入力され、入力されたデータがサーバである情報処理装置に送信されることにより処理が実現されている。従って、この様なクライアントサーバシステムにおいては、情報処理端末で実行されるプログラムと、情報処理装置で実行されるプログラムとが同期が取れていなければならない。具体的には、例えば、情報処理装置で実行されるプログラムに修正が発生した場合、情報処理端末で実行されるプログラムにおいても修正が発生する場合がある。
例えば、情報処理端末においてGUI(Graphical User Interface)を持つクライアントサーバシステムでは、情報処理端末上に表示された画面に対する、ユーザの操作によるアクションイベントをトリガーとして、情報処理装置上で計算された結果を情報処理端末のGUIに反映して表示する場合がある(例えば、特許文献1及び特許文献2参照。)。ここで、アクションイベントとは、ユーザによるマウスやキーボードなどの入力装置の操作により発生するイベントで、具体的にはボタンの押下、コンボボックスからの選択、テキストフィールドへの入力などが挙げられる。
特許文献1には、クライアントに提供するGUI部品を迅速、効率的に開発提供し、保守性の優れたものにするWebアプリケーションサーバが開示されている。特許文献2には、1つのセッションにおける処理が複数のアプリケーションサーバ間で移動しつつ実行される環境において、ユーザのセッションデータをGUIアプリケーションサーバにて確実に取得することのできるWebアプリケーションサーバシステムが開示されている。
情報処理装置上で計算された結果を情報処理端末のGUIに反映して表示する場合、図13に示すように、情報処理システム910は、クライアントである情報処理端末901とサーバである情報処理装置903を備えている。情報処理端末901は、GUIコンテナ911を備えている。情報処理装置903はJ2EEコンテナ931を備えており、J2EEコンテナ931は、ビジネスロジック実行クラス932を備えている。
情報処理端末901のGUIコンテナ911は、例えば、郵便番号と住所を入力するフィールドを備えたGUIと、GUIを操作するユーザアクションクラス912とを備えている。ユーザアクションクラス912は、ユーザの操作によってGUIのフィールドに対して文字入力や選択などの入力信号が入力されたアクションイベントをOSから受信し、フィールドに入力されたデータを取得して、情報処理装置903に送信する。
情報処理装置903のビジネスロジック実行クラス932は、情報処理端末901からフィールドデータを取得すると、その取得されたデータに基づいてビジネスロジックを実行し、新たなフィールドデータを情報処理端末901に送信する。
情報処理端末901のユーザアクションクラス912は、情報処理装置903から新たなフィールドデータを受信すると、新たなフィールドデータをフィールドに反映する。
この場合、アクションイベントを受信した情報処理端末のモジュールから、RPC(Remote Procedure Call)、CORBA(Common Object Request Broker Architecture)、RMI(Remote Method Invocation)等の技術を用いて異なる装置上に実装されたオブジェクト間でメッセージをやりとりすることにより、情報処理装置上の関数やメソッドを呼び出す。更に、情報処理端末では、呼び出した関数やメソッドの戻り値を情報処理装置から受信し、受信した戻り値に基づいて、情報処理端末のGUIをコントロールするための関数やメソッドを実行する。
しかし、情報処理装置上の関数やメソッドの戻り値がGUIに反映させる必要のないデータを含む場合がある。このとき、情報処理装置から情報処理端末へのデータの転送量が増大してしまう場合がある。また、非特許文献1などに公開されるJava(登録商標)言語におけるutil.Iterator インタフェースやsql.ResultSetなどの反復子やコレクションの戻り値を持つメソッドもある。この場合、ループ関数などを用いて戻り値から一つずつデータを取得する。
この問題を解決するために、既存の情報処理装置上のメソッドの戻り値からデータを取り出し、加工し、戻り値として返すようなラッパーメソッドを情報処理装置上で作成し、情報処理端末から呼び出す方法がある。
特開2005−227405号公報 特開2005−285007号公報 http://sdc.sun.co.jp/java/index.html
しかし、情報処理装置上のメソッドが既に多数存在し、それらの多くが反復子を持つメソッドである場合、それぞれについてラッパーメソッドを開発する必要があるので、開発が容易ではない問題がある。
この様な問題に対して、例えば、情報処理装置において、既存のメソッドに対するラッパーメソッドを作成することなく、情報処理端末上で発生したアクションイベントをトリガーとして、情報処理装置上で行った計算結果を情報処理端末のGUIに反映させることにより、開発者の開発効率を向上させる技術が求められている。
従って本発明の目的は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムにおける開発効率を向上させる情報処理方法、この情報処理方法を用いた情報処理システムを提供することである。
上記課題を解決するために、本発明の第1の特徴は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法である。即ち衣本発明の第1の特徴に係る情報処理方法は、情報処理端末において、情報処理装置の命令に従って情報処理端末にGUI画面が表示され、GUI画面に対して入力イベントが発生されるステップと、情報処理装置において、入力イベントが発生されたことが入力されると、入力イベントがユーザアクションに変換され、GUIオブジェクトのスタブであるGUIオブジェクトスタブでユーザアクションを実行するスレッドが生成され、スレッドにおいてユーザアクションが実行されるステップと、情報処理装置において、ユーザアクションの実行においてGUIオブジェクトのメソッドが呼び出された場合、呼び出しに関するパラメタに基づいて情報処理端末に新たなGUI画面が表示され、新たなGUI画面に対して新たな入力イベントが発生されるステップと、情報処理装置において、新たな入力イベントが発生されたことが入力されると、新たな入力イベントがリターンデータに変換され、リターンデータに基づいて、スレッドにおいてユーザアクションが実行された結果が、ユーザアクションの実行命令の戻り値として出力されるステップとを備える。
このような本発明の第1の特徴に係る情報処理方法は、情報処理端末ではGUI画面の表示し、入力イベントを受信するのみで、情報処理装置でGUI操作メソッド及びビジネスロジックが実行されるので、情報処理端末側の開発作業量を軽減し、開発効率を向上させる情報処理方法を提供することができる。
本発明の第2の特徴は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法である。即ち、本発明の第2の特徴に係る情報処理方法は、情報処理装置のGUI実行部のGUIオブジェクト管理部において、GUIオブジェクトと、GUIオブジェクトを識別するGUIオブジェクトIDとが関連づけられて記憶されるステップと、情報処理装置のビジネスロジック実行部のアクション管理部において、GUIオブジェクトで発生するユーザアクションと、ユーザアクションを識別するアクションIDとが関連づけられて記憶されるステップと、情報処理装置のビジネスロジック実行部のGUIスタブ管理部において、GUIオブジェクトIDと、GUIオブジェクトIDに関連づけられたGUIオブジェクトのスタブであるGUIオブジェクトスタブとが関連づけられて記憶されるステップと、情報処理装置のGUI実行部によって、GUIオブジェクトに基づいて情報処理端末にGUI画面が表示され、GUI画面に対して入力イベントが発生すると、入力イベントが情報処理装置のGUI実行部に送信されるステップと、情報処理装置のGUI実行部において、入力イベントが受信されると、入力イベントからユーザアクションに関するアクションIDとGUIオブジェクトが取得されるステップと、情報処理装置のGUI実行モジュールにおいて、ユーザアクションを実行するスレッドが生成され、アクションカウント変数が初期化されるステップと、情報処理装置のGUI実行部において、アクションイベントIDとGUIオブジェクトとが取得されると、GUIオブジェクトに基づいてGUIオブジェクト管理部からGUIオブジェクトIDが取得されるとともに、アクションIDとGUIオブジェクトIDとを含むアクションコールパケットが生成されるステップと、情報処理装置のGUI実行部において、アクションカウント変数がインクリメントされるとともに、アクションコールパケットが、情報処理装置のビジネスロジック実行モジュールに送信されるステップと、情報処理装置のビジネスロジック実行部において、アクションコールパケットが受信されると、アクションコールパケットからアクションIDとGUIオブジェクトIDが取得され、アクションIDに基づいてアクション管理部からユーザアクションが取得されるとともに、オブジェクトIDに基づいてGUIスタブ管理部からGUIオブジェクトスタブが取得されるステップと、情報処理装置のビジネスロジック実行部において、取得されたGUIオブジェクトスタブに対して、取得されたユーザアクションが実行されるステップを備える。
ここで、情報処理装置のビジネスロジック実行部において、ユーザアクションでGUIオブジェクトスタブのメソッドが所定のパラメタで呼び出された場合、GUIオブジェクトIDとパラメタとを含むメソッドコールパケットが生成され、GUI実行モジュールに送信されるステップと、情報処理装置のGUI実行部において、メソッドコールパケットが受信されると、メソッドコールパケットからGUIオブジェクトID及びパラメタが取り出され、GUIオブジェクトIDに基づいてGUIオブジェクト管理部からGUIオブジェクトが取得されるステップと、情報処理装置のGUI実行部において、取得されたGUIオブジェクト及びパラメタに基づいて情報処理端末に新たなGUI画面が表示され、新たなGUI画面に対して新たな入力イベントが発生すると、新たな入力イベントが情報処理装置のGUI実行モジュールに送信され、GUIオブジェクトリターンデータに変換されるステップと、情報処理装置のGUI実行部において、GUIオブジェクトリターンデータを含むメソッドリターンパケットが生成され、情報処理装置のビジネスロジック実行モジュールに送信されるステップと、情報処理装置のビジネスロジック実行部において、メソッドリターンパケットが受信されると、メソッドリターンパケットからGUIオブジェクトリターンデータが取得され、GUIオブジェクトリターンデータが、GUIオブジェクトスタブのメソッドの戻り値として返されるステップとを更に備えても良い。
更に、情報処理装置のビジネスロジック実行部において、GUIオブジェクトスタブのメソッドの戻り値としてアクションリターンデータが取得されると、アクションリターンデータを含むアクションリターンパケットが作成され、アクションリターンパケットがユーザアクションの戻り値として返されるステップと、情報処理装置のGUI実行部において、アクションリターンパケットが受信されると、アクションカウント変数をデクリメントし、アクションカウント変数がゼロになると、アクションリターンパケットからアクションリターンデータが取得されるステップとを更に備えても良い。
本発明の第3の特徴は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムである。即ち本発明の第3の特徴に係る情報処理システムの情報処理端末は、情報処理装置の命令に従って、情報処理端末の表示装置にGUI画面を表示し、情報処理端末の入力装置によってGUI画面に対して発生された入力イベントを情報処理装置に送信する。本発明の第3の特徴に係る情報処理システムの情報処理装置は、情報処理端末にGUI画面を表示する命令を出力し、GUI画面に対して入力イベントが発生すると、入力イベントがユーザアクションに変換され、GUIオブジェクトのスタブであるGUIオブジェクトスタブでユーザアクションを実行するスレッドを生成し、スレッドにおいてユーザアクションを実行し、ユーザアクションの実行においてGUIオブジェクトのメソッドが呼び出された場合、呼び出しに関するパラメタに基づいて情報処理端末に新たなGUI画面を表示する命令を出力し、新たなGUI画面に対して新たな入力イベントが発生すると、新たな入力イベントをリターンデータに変換し、リターンデータに基づいて、スレッドにおいてユーザアクションを実行した結果を、ユーザアクションの実行命令の戻り値として出力する。
このような本発明の第3の特徴に係る情報処理システムは、情報処理端末ではGUI画面の表示し、入力イベントを受信するのみで、情報処理装置でGUI操作メソッド及びビジネスロジックが実行されるので、情報処理端末側の開発作業量を軽減し、開発効率を向上させる情報処理方法を提供することができる。
本発明によれば、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムにおける開発効率を向上させる情報処理方法、この情報処理方法を用いた情報処理システムを提供することができる。
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。
本発明の最良の実施の形態において、図2、図9及び図10のシーケンス図は、UML(Unified Modeling Language)に従って記載されている。具体的には、AオブジェクトからBオブジェクトへのメソッド呼び出しが同期メッセージである場合、同期メッセージは、図9のS101の様な三角を塗りつぶしたの実線矢印で表す。またこのメソッド呼び出しに対する戻り値は、図9のS127の様に点線矢印で表す。一方、AオブジェクトからBオブジェクトへのメソッドの呼び出しが非同期メッセージである場合、図9のS104の様な塗りつぶさない実線矢印で表す。またここで、非同期メッセージとは、呼び出し側が処理の完了を待たされずに、呼び出した処理が行われるメッセージである。
(最良の実施の形態)
(情報処理システム)
図1を参照して、本発明の最良の実施の形態に係る情報処理システム4の概要を説明する。本発明の最良の実施の形態に係る情報処理システム4は、クライアントである情報処理端末1とサーバである情報処理装置2を備える。情報処理端末1は、GUIコンテナを備えており、情報処理装置2は情報処理端末1のGUIを制御するリモートユーザアクションクラスを備えたJ2EEコンテナを有する。
情報処理端末1において、ユーザによる入力装置の操作によって、GUIコンテナのフィールドに対する入力イベントが発生すると、情報処理装置2は、情報処理端末1から入力イベントを受信し、GUIコンテナのフィールドデータを取得する。更に、情報処理装置2は、情報処理端末1のGUIオブジェクトのスタブを有しており、このスタブを利用して取得したフィールドデータに基づいてビジネスロジックを実行し、その結果得られた新たなフィールドデータを、情報処理端末1にセットする。
この様に、本発明の最良の実施の形態に係る情報処理システム4においては、情報処理端末1上のGUIオブジェクトで発生した入力イベントをトリガーとして、サーバ上のGUIオブジェクトのスタブのメソッドを実行ことにより、情報処理装置2でユーザアクションを実行し、その戻り値のデータを情報処理端末1のGUIオブジェクトに反映することができる。
次に、図2を参照して、本発明の最良の実施の形態に係る情報処理システム4において、情報処理端末1のGUIに対してアクションイベントが発生し、発生したアクションイベントに対する戻り値として、新たにGUIオブジェクトを実行する命令を取得した場合について説明する。図2において、GUIオブジェクト部21、アクション管理部34及びGUIスタブ管理部33は、情報処理装置2に含まれる。GUIオブジェクト部21は、情報処理端末1に表示されるGUIオブジェクトを管理し、情報処理端末1からの入力イベントを受信し、その処理結果を情報処理端末1に送信して画面表示するとともに、入力イベントをアクションイベントに変換するオブジェクトである。アクション管理部34は、GUIオブジェクト部21が受信するユーザアクションと、ユーザアクションを識別するアクションIDとが関連づけられているオブジェクトである。GUIスタブ管理部33は、GUIオブジェクト部21で管理されるGUIオブジェクトを識別するGUIオブジェクトIDと、GUIオブジェクトのスタブであるGUIオブジェクトスタブとが関連づけられているオブジェクトである。
まず、情報処理端末1において、情報処理装置2の命令に従って情報処理端末1にGUI画面が表示され、このGUI画面に対して入力イベントが発生される。
次に、ステップS1において、情報処理装置2のGUIオブジェクト部21において、情報処理端末1の入力部12から入力イベントが受信されると、入力イベントをアクションイベントに変換してアクション管理部34のメソッドが呼び出される。
ステップS2において、アクション管理部34は、アクションイベントが発生したGUIオブジェクトのスタブメソッドがGUIスタブ管理部33に対して呼び出される。GUIスタブ管理部33は、スタブメソッドが呼び出されると、このスタブメソッドを実行する。このとき、GUIオブジェクト部21から受信されたアクションイベントに基づいてスタブメソッドが実行される。
このスタブメソッドの戻り値として新たにGUIオブジェクトを実行する命令を取得した場合、ステップS3においてGUIスタブ管理部33は、GUIオブジェクト部21に対して、GUIオブジェクトのメソッドを呼び出す。GUIオブジェクト部21は、GUIスタブ管理部33からメソッドが呼び出されると、そのメソッドをGUIオブジェクト部21で実行し、情報処理端末1の画面表示部11にGUI画面を表示させるとともに、入力部12からの入力イベントを取得する。GUIオブジェクト部21は、入力イベントに基づいてGUIオブジェクトを実行してリターンデータを生成し、ステップS3のGUIオブジェクトメソッド呼び出しの戻り値として、ステップS4においてリターンデータをGUIスタブ管理部33に送信する。
GUIオブジェクト部21から新たにGUIオブジェクトが実行された結果であるリターンデータが送信されるとGUIスタブ管理部33は、そのリターンデータに基づいて処理を実行する。その処理の戻り値として、新たなGUIオブジェクトを実行する命令を取得すると、再びGUIオブジェクト部21に対してGUIオブジェクトメソッドを呼び出す。一方、その戻り値に新たなGUIオブジェクトを実行する命令が含まれていない場合、ステップS5において、GUIスタブ管理部33における戻り値を、ステップS2のスタブメソッド呼び出しの戻り値としてアクション管理部34に返す。アクション管理部34は、GUIスタブ管理部33からスタブメソッド呼び出しのリターンデータを受信すると、ステップS1のアクション実行に対する戻り値として、受信したデータをGUIオブジェクト部21に送信する。GUIオブジェクト部21は、情報処理端末1の画面表示部11に受信したデータを表示させる。
次に、図3を参照して、本発明の最良の実施の形態に係る情報処理システム10を詳細に説明する。
本発明の最良の実施の形態に係る情報処理システム4は、クライアントである情報処理端末1とサーバである情報処理装置2を備え、情報処理端末1と情報処理装置2は、通信ネットワーク5を介して相互に接続されている。通信ネットワーク5は、インターネットやLANなどの相互通信可能なネットワークである。
図4に示すように、本発明の最良の実施の形態に係る情報処理装置2は、中央処理制御装置101、ROM(Read Only Memory)102、RAM(Random Access Memory)103及び入出力インタフェース109が、バス110を介して接続されている。入出力インタフェース109には、入力装置104、表示装置105、通信制御装置106、記憶装置107及びリムーバブルディスク108が接続されている。
中央処理制御装置101は、入力装置104からの入力信号に基づいてROM102から情報処理装置2を起動するためのブートプログラムを読み出して実行し、更に記憶装置107に記憶されたオペレーティングシステムを読み出す。更に中央処理制御装置101は、入力装置104や通信制御装置106などの入力信号に基づいて、各種装置の制御を行ったり、RAM103や記憶装置107などに記憶されたプログラム及びデータを読み出してRAM103にロードするとともに、RAM103から読み出されたプログラムのコマンドに基づいて、データの計算又は加工など、後述する一連の処理を実現する処理装置である。
入力装置104は、操作者が各種の操作を入力するキーボード、マウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を作成し、入出力インタフェース109及びバス110を介して中央処理制御装置101に送信される。表示装置105は、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどであり、中央処理制御装置101からバス110及び入出力インタフェース109を介して表示装置105において表示させる出力信号を受信し、例えば中央処理制御装置101の処理結果などを表示する装置である。通信制御装置106は、LANカードやモデムなどの装置であり、情報処理装置2をインターネットやLANなどの通信ネットワークに接続する装置である。通信制御装置106を介して通信ネットワークと送受信したデータは入力信号又は出力信号として、入出力インタフェース109及びバス110を介して中央処理制御装置101に送受信される。
記憶装置107は半導体記憶装置や磁気ディスク装置であって、中央処理制御装置101で実行されるプログラムやデータが記憶されている。リムーバブルディスク108は、光ディスクやフレキシブルディスクのことであり、ディスクドライブによって読み書きされた信号は、入出力インタフェース109及びバス110を介して中央処理制御装置101に送受信される。
本発明の最良の実施の形態に係る情報処理装置2の記憶装置107には、サーバ情報処理プログラムが記憶され、サーバ情報処理プログラムが情報処理装置2の中央処理制御装置101に読み込まれ実行されることによって、GUI実行モジュール(GUI実行部)20及びビジネスロジック実行モジュール(ビジネスロジック実行部)30が情報処理装置2に実装される。GUI実行モジュール20は、GUIオブジェクト部21、GUIメソッド実行部22、GUIオブジェクト管理部23、アクションイベント受信部24、GUIアクション実行部25及び通信オブジェクト管理部26を備える。ビジネスロジック実行モジュール30は、アクションスレッド部31、スタブメソッド実行部32、GUIスタブ管理部33、アクション管理部34、アクション実行部35及びビジネスロジックスレッド管理部36を備える。GUI実行モジュール20及びビジネスロジック実行モジュール30の各部において記憶されるデータやメソッドの実行時に発生するワークデータは、記憶装置107に記憶される。
また、情報処理端末1も情報処理装置2と同様のハードウェア構成を備える。情報処理端末1の記憶装置には、クライアント情報処理プログラムが記憶され、クライアント情報処理プログラムが情報処理端末1の中央処理制御装置に読み込まれ実行されることによって、GUI表示モジュール10が情報処理端末1に実装される。GUI表示モジュール10は、画面表示部11、入力部12及びリクエスト代理部13を備える。GUI表示モジュール10の各部おいて記憶されるデータや、メソッドの実行時に発生するワークデータは情報処理端末1の記憶装置に記憶される。
(情報処理端末)
図3及び図5を参照して、本発明の最良の実施の形態に係る情報処理端末1について詳述する。
情報処理端末1は、GUI表示モジュール10を備える。GUI表示モジュール10は、画面表示部11、入力部12及びリクエスト代理部13を備える。
画面表示部11は、情報処理装置1のGUIオブジェクト部21からの命令に従って、GUI画面を表示装置に表示する。入力部12は、入力装置からの入力イベントを、情報処理装置1のGUIオブジェクト部21に送信する。
リクエスト代理部13は、図5(c)に示すようにpostメソッドを備える。postメソッドは、引数としてビジネスロジック実行モジュールアドレス及びGUIスレッドIDを設定して、情報処理装置2のアクションスレッド部31のrunを呼び出す処理をする。このリクエスト代理部13は、情報処理装置2のGUI実行モジュール20のアクションイベント受信部24からの呼び出しに応じて、情報処理装置2のビジネスロジック実行モジュール30のビジネスロジックを呼び出す。この動作により、ビジネスロジックが、SSL認証などの場合で、特定の端末からの呼び出しにしか応じない場合でも対応することができる。
(情報処理装置)
本発明の最良の実施の形態に係る情報処理装置2は、GUI実行モジュール(GUI実行部)20と、ビジネスロジック実行モジュール(ビジネスロジック実行部)30とを備える。
図3及び図6を参照して、本発明の最良の実施の形態に係る情報処理装置2のGUI実行モジュール20について詳述する。
GUI実行モジュール20は、GUIオブジェクト部21、GUIメソッド実行部22、GUIオブジェクト管理部23、アクションイベント受信部24、GUIアクション実行部25及び通信オブジェクト管理部26を備える。
GUIオブジェクト部21は、図6(a)に示すように、GUIの部品であるGUIオブジェクトと、そのGUIオブジェクトを操作することが可能なGUI操作メソッドを持つ。更にGUIオブジェクト部21は、情報処理端末1の画面表示部11にGUI画面を表示させる命令を出力するとともに、情報処理端末1の入力部12から入力イベントを受信し、受信した入力イベントに基づいてGUI操作メソッドを実行してアクションイベントを生成し、アクションID及びGUIオブジェクトをアクションイベント受信部24に入力する。
GUIメソッド実行部22は、図6(b)に示すように、invokeメソッドを備える。invokeメソッドは、引数としてMethodCallパケット(メソッドコールパケット)が設定されて呼び出され、GUIオブジェクトのGUI操作メソッドを呼び出す。
GUIオブジェクト管理部23は、GUIオブジェクトとGUIオブジェクトIDを対にして管理する。GUIオブジェクト管理部23は、図6(c)に示すように、getObjectIDメソッドと、getObjectメソッドを備える。getObjectIDメソッドは、GUIオブジェクトからGUIオブジェクトIDを検索して、戻り値としてGUIオブジェクトIDを返す。getObjectメソッドは、GUIオブジェクトIDからGUIオブジェクトを検索して、戻り値としてGUIオブジェクトを返す。
アクションイベント受信部24は、図6(d)に示すように、receiveEventメソッドを備える。receiveEventメソッドは、引数としてアクションID及びGUIオブジェクトが設定されて、GUIオブジェクト部21から呼び出される。receiveEventメソッドは、通信オブジェクト管理部26を生成し、通信オブジェクト管理部26のstartメソッドを呼び出し、GUIオブジェクト部21に、アクションリターンデータを戻り値として返す。更にreceiveEventメソッドは、GUIアクション実行部25を生成し、GUIアクション実行部25のrunActionを呼び出す。
GUIアクション実行部25は、アクションイベントを、最終目的地としてアクション実行部35に送り届けるための最初の処理を行う。GUIアクション実行部25は、図6(e)に示すように、runActionメソッドを備える。runActionメソッドは、GUIスレッドID、アクションID及びGUIオブジェクトが設定されて呼び出され、アクションリターンデータを戻り値として返す。GUIアクション実行部25のruActionメソッドは、ActionCallパケット(アクションコールパケット)を生成し、通信オブジェクト管理部26のexchangePacketメソッドを呼び出し、戻り値として受信パケットを受信する。受信パケットがActionReturnパケットの場合、runActionメソッドはアクションリターンデータを返す。一方受信パケットがMethodCallパケット(メソッドコールパケット)の場合、runActionメソッドは、GUIメソッド実行部22のinvokeメソッドを呼び出し、その戻り値を再び通信オブジェクト管理部26のexchangePacketメソッドの引数に渡す。
通信オブジェクト管理部26は、図6(f)に示すように、GUIスレッドIDをキーとして、ACTION_COUNT(アクションカウント変数)という初期値0の整数と、INITという初期値FALSEのフラグを対にしたレコードを備える。GUIスレッドIDは、GUI実行モジュールを一意に表すアドレスと、GUIスレッドIDを一意に表すIDを含む。通信オブジェクト管理部26は、getGuiThreadIDメソッドと、isNewThreadメソッドと、startメソッドと、exchangePacketメソッドを備える。getGuiThreadIDメソッドは、GUIスレッドIDを取得して戻り値として返す。startメソッドは、GUIスレッドIDをキーとするレコードを通信オブジェクト管理部26に追加して、ユーザアクションを実行するスレッドである。isNewThreadメソッドは、引数としてGUIスレッドIDが設定され、このGUIスレッドIDをキーとするレコードがあればFALSEを戻り値として返す。
exchangePacketメソッドは、引数としてGUIスレッドID及びパケットが設定され。後述する図11のフローチャートに従って、2つのスレッド間でパケットを交換する。Aスレッドから呼び出されたexchangePacketメソッドの引数としてアクションリターンパケットを受け取ると、通信オブジェクト管理部26は、Bスレッドから呼び出されたexchangePacketメソッドの戻り値としてアクションリターンパケットを返し、アクションカウント変数をデクリメントする。アクションカウントが0になった場合、通信オブジェクト管理部26は、Aスレッドから呼び出されたexchangePacketメソッドの戻り値としてnullを返す。これ以外の場合、通信オブジェクト管理部26は、AスレッドからAパケットを引数としてexchangePacketメソッドが呼び出された場合、以前にBスレッドから呼び出されたexchangePacketの戻り値としてAパケットを返し、Aスレッドから呼び出されたexchangePacketメソッドは待機する。
ここで、通信オブジェクト管理部26が扱うパケットは、図7の様なクラス構成を備える。パケットは、送信パケットと受信パケットを含む。送信パケットは、クライアントスレッドIDを含み、スレッドスタートパケットと、アクションID及びGUIオブジェクトIDを含むアクションコールパケットと、GUIオブジェクトリターンデータを含むメソッドリターンパケットを含む。受信パケットは、GUIオブジェクトIDとパラメタを含むメソッドコールパケットと、アクションリターンパケットを含むアクションリターンパケットを含む。
次に、図3及び図8を参照して、本発明の最良の実施の形態に係る情報処理装置2のビジネスロジック実行モジュール30について詳述する。
ビジネスロジック実行モジュール30は、アクションスレッド部31、スタブメソッド実行部32、GUIスタブ管理部33、アクション管理部34、アクション実行部35及びビジネスロジックスレッド管理部36を備える。
アクションスレッド部31は、図8(a)に示すように、runメソッドを備える。runメソッドは、引数としてGUIスレッドIDが設定されて呼び出される。runメソッドは、通信オブジェクト管理部26のexchangePacketメソッドを用いて、アクションを実行するためのActionCallパケットを受信し、アクション実行部35を生成してアクション実行部35のinvokeActionを呼び出し、その戻り値を再びexchangePacketメソッドの引数として、通信オブジェクト管理部26に渡す。
スタブメソッド実行部32は、図8(b)に示すように、invokeMethodメソッドを備える。invokeMethodメソッドは、GUIオブジェクトID及びパラメタが設定されて呼び出される。invokeMethodメソッドは、GUIスタブの呼び出しに伴い、通信オブジェクト管理部26のexchangePacketメソッドでMethodCallパケットを渡す。exchangePacketメソッドの戻り値としてMethodReturnパケットが帰ってきた場合、invokeMethodメソッドはGUIスタブの戻り値としてGUIオブジェクトリターンデータを返す。ActionCallパケットが返ってきた場合、invokeMethodメソッドは、アクション実行部35を新たに作成し、アクション実行部35のinvokeActionを呼び出し、その戻り値を再び通信オブジェクト管理部26のexchangePacketの引数として渡す。invokeMethodメソッドは、exchangePacketの戻り値としてMethodReturnパケットが返ってくるまで、同様の処理を繰り返す。
GUIスタブ管理部33は、GUIスタブを管理し、図8(c)に示すように、getObjectStubメソッドを備える。getObjectStubメソッドは、引数としてオブジェクトIDが設定されて呼び出され、オブジェクトIDを元にGUIオブジェクトスタブを生成し、戻り値としてGUIオブジェクトスタブを返す。ここでGUIオブジェクトスタブは、図8(g)に示すように、GUIオブジェクトIDに対応する。
アクション管理部34は、ユーザアクションを管理し、図8(d)に示すように、getActionメソッドを備える。getActionメソッドは、引数としてアクションIDが設定されて呼び出され、アクションIDを元にユーザアクションを検索して、戻り値としてユーザアクションを返す。
アクション実行部35は、図8(e)に示すように、invokeActionメソッドを備える。invokeActionメソッドは、引数としてActionCallパケットが設定されて呼び出され、アクション管理部34からユーザアクションを取得し、GUIスタブ管理部33から取得したGUIオブジェクトスタブを引数として、ユーザアクションを呼び出す。
ビジネスロジックスレッド管理部36は、setGuiThreadIDメソッド、getGuiThreadIDメソッド及びremoveGuiThreadIDメソッドの3つのメソッドを持つ。setGuiThreadIDメソッドは、引数としてGUIスレッドIDが設定されて呼び出され、スレッドID取得手段を用いてビジネスロジックスレッドIDを取得し、GUIスレッドIDとビジネスロジックスレッドIDの対を一つのレコードとして保存する。getGuiThreadIDメソッドは、スレッドID取得手段を用いて、ビジネスロジックスレッドIDを取得し、ビジネスロジックスレッドIDをキーにGUIスレッドIDを検索して、GUIスレッドIDを返す。removeGuiThreadIDメソッドは、引数としてGUIスレッドIDが設定されて呼び出され、GUIスレッドIDをキーにレコードを検索し、検索されたレコードを削除する。
(情報処理方法)
次に、図9乃及び図10を参照して、本発明の最良の実施の形態に係る情報処理方法を説明する。
まず、図9を参照して、ユーザアクションを実行するまでの処理を説明する。
GUIオブジェクト部21は、情報処理端末1のGUI表示モジュール10の入力部12から入力イベントを受信すると、入力イベントからユーザアクションに関するアクションID及びGUIオブジェクトを取得する。GUIオブジェクト部21は、ステップS101において、アクションイベント受信部24のreceiveEventメソッドを、引数としてアクションID及びGUIオブジェクトを設定して呼び出す。
GUIオブジェクト部21からreceiveEventメソッドが呼び出されると、ステップS102において、アクションイベント受信部24は、receiveEventメソッドにおいて、通信オブジェクト管理部26のgetGuiThreadIDメソッドを引数を設定せずに呼び出し、戻り値としてGUIスレッドIDを取得する。更に、アクションイベント受信部24は、通信オブジェクト管理部26のisNewThreadメソッドを、引数としてGUIスレッドIDを設定して呼び出す。アクションイベント受信部24は、戻り値としてブール値TRUEを得て、このGUIスレッドIDをキーとするレコードが通信オブジェクト管理部26に存在することを確認する。ブール値TRUEを取得した後、アクションイベント受信部24は、通信オブジェクト管理部26のstartメソッドを、引数としてGUIスレッドIDを設定して呼び出す。
通信オブジェクト管理部26は、startメソッドの中で、GUIスレッドIDにACTION_COUNT及びINITを対応付けたレコードを作成して各変数は初期化され、ステップS103において、ステップS102に対する応答としてGUIスレッドIDをアクションイベント受信部に返す。
アクションイベント受信部24は、receiveEventメソッドの中で、ステップS104において、情報処理端末1のリクエスト代理部13のpostを、引数としてビジネスロジック実行モジュールアドレス及びGUIスレッドIDを設定して、非同期で呼び出す。
情報処理端末1のリクエスト代理部13は、postメソッドが呼び出されると、postメソッドの中で、引数であるビジネスロジック実行モジュールアドレスを元にビジネスロジック実行モジュール30を探し出し、ステップS105において、アクションスレッド部31のrunメソッドを、引数としてGUIスレッドIDを設定して呼び出す。
アクションスレッド部31は、runメソッドの中で、ビジネスロジックスレッド管理部36のsetGuiThreadIDメソッドを、引数としてGUIスレッドIDを設定して呼び出し、応答を得る。このとき、ビジネスロジックスレッド管理部36のsetGuiThreadIDメソッドは、スレッドID取得手段を用いてビジネスロジックスレッドIDを取得し、GUIスレッドIDとビジネスロジックスレッドIDとを対応させて一つのレコードとして記憶する。
アクションスレッド部31は、runメソッドの中で、ビジネスロジックスレッド管理部36のsetGuiThreadIDメソッドの応答を得ると、ステップS107において、GUIスレッドIDのアドレス部分を元に、通信オブジェクト管理部26を検索し、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びnullを設定して呼び出す。更に、通信オブジェクト管理部26は、exchangePacketメソッドの中で変数ACTION_COUNTを0に設定して待機する。
一方、アクションイベント受信部24は、ステップS106において、receiveEventメソッドの中でGUIアクション実行部25を生成し、GUIアクション実行部25のrunActionメソッドを、引数としてGUIスレッドID、アクションID及びGUIオブジェクトを設定して呼び出す。
GUIアクション実行部25は、runActionメソッドの中で、GUIオブジェクト管理部23のgetObjectIDメソッドを、引数としてGUIオブジェクトを設定して呼び出し、戻り値としてGUIオブジェクトIDを取得する。更に、GUIアクション実行部25は、GUIスレッドID、アクションID及びGUIオブジェクトIDを含むActionCallパケットを生成し、ステップS108において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びActionCallパケットを設定して呼び出す。
通信オブジェクト管理部26は、exchangePacketメソッドで引数としてGUIスレッドID及びActionCallパケットが渡された場合、変数ACTION_COUNTを一つインクリメントして、ステップS109において、ステップS107からの呼び出しの戻り値として、ActionCallパケットをアクションスレッド部31に渡す。
アクションスレッド部31は、runメソッドの中で、exchangePacketメソッドの戻り値としてActionCalllパケットを受信すると、アクション実行部35を生成し、ステップS110において、アクション実行部35のinvokeActionメソッドを、引数としてActionCallパケットを設定して呼び出す。
アクション実行部35は、invokeActionメソッドの中で、ActionCallパケットからアクションIDとGUIオブジェクトIDを取得し、アクション管理部34のgetActionメソッドを、引数としてアクションIDを設定して呼び出し、ユーザアクションを取得する。更にアクション実行部35は、invokeActionメソッドの中で、GUIスタブ管理部33のgetObjectStubメソッドを、引数としてGUIオブジェクトIDを設定して呼び出してGUIスタブを取得する。ここで、アクション実行部35は、invokeActionメソッドの中で、GUIスタブを用いてユーザアクションを実行する。
図9を参照して、ユーザアクション内からGUIオブジェクトを操作する処理を説明する。
アクション実行部35のinvokeActionメソッドの中で実行中のユーザアクションからGUIスタブのメソッドを呼び出した場合、GUIスタブは、ステップS111において、スタブメソッド実行部32のinovokeMethodメソッドを、引数としてGUIオブジェクトID及びパラメタを設定して呼び出す。ここで「パラメタ」は、実行中のユーザアクションから呼び出したメソッドに使用されるパラメタである。
スタブメソッド実行部32は、invokeMethodメソッドの中で、ビジネスロジックスレッド管理部36のgetGuiThreadIDメソッドを、引数を設定しいないで呼び出し、戻り値としてGUIスレッドIDを取得する。更にスタブメソッド実行部32は、invokeMethodメソッドの中で、GUIオブジェクトID及びパラメタを含むMethodCallパケットを作成し、GUIスレッドIDのアドレス部分を元に通信オブジェクト管理部26を検索する。スタブメソッド実行部32は、ステップS112において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びMethodCallパケットを設定して呼び出す。
通信オブジェクト管理部26は、exchangePacketメソッドの中で、ステップS113において、ステップS112において渡されたMethodCallパケットを、ステップS108の呼び出しの戻り値としてGUIアクション実行部25に渡す。
GUIアクション実行部25は、runActionメソッドの中で、GUIメソッド実行部22を生成し、ステップS114において、invokeメソッドを、引数としてMethodCallパケットを設定して呼び出す。
GUIメソッド実行部22は、invokeメソッドの中で、MethodCallパケットからGUIオブジェクトID及びパラメタを取り出す。GUIメソッド実行部22は、invokeメソッドの中で、GUIオブジェクト管理部23のgetObjectメソッドを、引数としてGUIオブジェクトIDを設定して呼び出し、GUIオブジェクトを取得する。GUIメソッド実行部22は、invokeメソッドの中で、ステップS115において、GUIオブジェクトのGUI操作メソッドを、引数としてパラメタを設定して呼び出す。
GUIオブジェクト部21は、GUI操作メソッドの中で、引数として設定されたパラメタを元に、情報処理端末1の画面表示部11に表示し、情報処理端末1からGUIオブジェクトリターンデータが入力されると、ステップS116において、その入力をステップS114の戻り値として、GUIメソッド実行部22に渡す。
GUIメソッド実行部22は、invokeメソッドの中で、GUIオブジェクトリターンデータにGUIオブジェクトが存在した場合、GUIオブジェクト管理部23のgetObjectIDメソッドを呼び出し、GUIオブジェクトリターンデータ内のGUIオブジェクトをGUIオブジェクトIDに書き換える。更にGUIメソッド実行部22は、invokeメソッドの中で、GUIスレッドID、GUIオブジェクトリターンデータを含むMethodReturnパケットを作成し、ステップS117において、ステップS114の戻り値としてMethodReturnパケットをGUIアクション実行部25に渡した後、消滅する。
GUIアクション実行部25は、runActionメソッドの中で、MethodReturnパケットを取得すると、ステップS118において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びMethodReturnパケットを設定して呼び出す。
通信オブジェクト管理部26は、exchangePacketメソッドの中で、ステップS119において、ステップS112の戻り値としてMethodReturnパケットをスタブメソッド実行部32に渡す。
スタブメソッド実行部32は、invokeMethodメソッドの中で、exchangePacketメソッドの戻り値としてMethodReturnパケットを取得すると、MethodReturnパケットからGUIオブジェクトリターンデータを取り出す。スタブメソッド実行部32は、invokeMethodメソッドの中で、GUIオブジェクトリターンデータ内にGUIオブジェクトIDが含まれていたら、GUIスタブ管理部33のgetObjectStubメソッドを呼び出し、GUIオブジェクトIDに対応するGUIスタブを取得し、GUIオブジェクトリターンデータのGUIオブジェクトIDをGUIスタブに書き換える。スタブメソッド実行部32は、invokeMethodメソッドの中で、ステップS120において、GUIオブジェクトリターンデータをステップS111におけるGUIスタブのメソッド呼び出しの戻り値としてアクション実行部35に渡した後に消滅する。
更に、図9を参照して、ユーザアクションのリターン処理を説明する。
アクション実行部35は、invokeActionメソッドの中でアクションリターンデータとしてGUIオブジェクトリターンデータを取得すると、アクションリターンデータを含むActionReturnパケットを作成し、ステップS121において、ステップS110の戻り値としてアクションスレッド部31にActionReturnパケットを渡した後、消滅する。
アクションスレッド部31は、runメソッドの中で、ActionReturnパケットを受信し、ステップS122において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてActionReturnパケットを設定して呼び出す。
通信オブジェクト管理部26は、exchangePacketメソッドの中で、ActionReturnパケットを渡された場合、ステップS123において、ステップS118の戻り値としてActionReturnパケットをGUIアクション実行部25に渡す。通信オブジェクト管理部26は、exchangePacketメソッドの中で、変数ACTION_COUNTから一つデクリメントする。これによりACTION_COUNTが0になるので、GUIスレッドIDに対応したレコードを削除し、ステップS125において、ステップS122の戻り値としてアクションスレッド部31にnullを渡す。
アクションスレッド部31は、runメソッドの中で、ステップS126において、ビジネスロジックスレッド管理部36のremoveGuiThreadIDメソッドを、引数としてGUIスレッドIDを設定して呼び出し、リクエスト代理部13にステップS105のリターンを返して消滅する。
GUIアクション実行部25は、runActionメソッドの中で、ActionReturnパケットを受信した場合、ActionReturnパケットからアクションリターンデータを取得し、ステップS124において、ステップS106の戻り値としてアクションイベント受信部24にアクションリターンデータを渡す。
アクションイベント受信部24は、receiveEventメソッドの中で、ステップS127において、ステップS101の戻り値としてアクションリターンデータをGUIオブジェクト部21に渡す。GUIオブジェクト部21は、アクションリターンデータに従って情報処理端末1の画面表示部11に画面表示させる。
次に、図10を参照して、ビジネスロジック実行モジュール30から呼び出されたGUIオブジェクトのメソッドの中からアクションイベントが発生した場合を説明する。
ステップS201乃至ステップS215までの処理によって、ビジネスロジック実行モジュール30から、GUIオブジェクト部21のGUI操作メソッドが呼び出される。
GUIオブジェクト部21は、GUI操作メソッドの中で、引数として設定されたパラメタを元に、情報処理端末1の画面表示部11に表示する。情報処理端末1からGUIオブジェクトリターンデータが入力され、そのGUIオブジェクトリターンデータの中でアクションイベントが発生すると、ステップS201’において、GUIオブジェクト部21のGUI操作メソッドは、アクションイベント受信部24のreceiveEventメソッドを、引数としてアクションID、GUIオブジェクトを設定して呼び出す。
アクションイベント受信部24は、receiveEventメソッドの中で、通信オブジェクト管理部26のgetGuiThreadIDメソッドを、引数を設定しないで呼び出し、戻り値としてGUIスレッドIDを取得する。アクションイベント受信部24は、receiveEventメソッドの中で、通信オブジェクト管理部26のisNewThreadメソッドを、引数としてGUIスレッドIDを呼び出し、戻り値としてブール値FALSEを取得する。更にアクションイベント受信部24は、ステップS206’において、receiveEventメソッドの中で、GUIアクション実行部25’を作成し、runActionメソッドを、引数としてGUIスレッドID、アクションID及びGUIオブジェクトを設定して呼び出す。
GUIアクション実行部25’は、runActionメソッドの中で、GUIオブジェクト管理部23のgetObjectIDメソッドを、引数としてGUIオブジェクトを設定して呼び出し、戻り値としてGUIオブジェクトIDを取得する。更に、GUIアクション実行部25’は、runActionメソッドの中で、GUIスレッドID、アクションID及びGUIオブジェクトIDを含むActionCallパケットを作成し、ステップS208’において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びActionCallパケットを設定して呼び出す。
通信オブジェクト管理部26は、exchangePacketメソッドの中で、引数としてGUIスレッドID及びActionCallパケットが送付されると、変数ACTION_COUNTが一つインクリメントされ、ステップS209’において、ステップS212の呼び出しの戻り値として、ActionCallパケットをスタブメソッド32に渡す。
スタブメソッド32は、invokeMethodメソッドの中で、exchangePacketメソッドの戻り値としてActionCallパケットを取得するので、アクション実行部35’を生成し、ステップS210’において、アクション実行部35’のinvokeActionメソッドを、引数としてActionCallパケットを設定して呼び出す。
このような図10に示す処理により、ビジネスロジック実行モジュール30から呼び出されたGUIオブジェクトのメソッドの中から、アクションイベントが発生した場合でもアクションを実行することができる。
図11を参照して、本発明の最良の実施の形態に係る通信オブジェクト管理部26のstartメソッドの処理を説明する。ここでは、図9及び図10の各ステップにおける通信オブジェクト管理部26の動作を説明する。
(1)処理の開始(図9のステップS102)
ステップS301において、通信オブジェクト管理部26のstartメソッドは、GUIオブジェクト部21から、引数としてGUIスレッドID及びパケットが設定されて呼び出されることによって処理が開始される。
(2)図9のステップS107の処理
図9のステップS107において、アクションスレッド部31から、引数としてGUIスレッドID及びnullが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullと判断されるので、ステップS303に処理が進む。ステップS303において、INIT領域にTRUEを代入する。又、図9のステップS108の呼び出しの方が早い場合、ステップS305において図9のステップS108の呼び出しスレッドがWAIT(待機)しているので、待機中のステップS108の呼び出しスレッドにNotify(通知)する。ステップS313において、図9のステップS108の呼び出しの方が遅い場合は、ステップS108の呼び出しスレッドがステップS312においてNotifyするのを待機する。
ステップS312においてNotifyされると、処理はステップS314に進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図9のステップS108の呼び出し時にステップS312においてActionCallパケットが保存されるので、スタック変数TMPにActionCallパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS108で受信したActionCallパケットがステップS107の戻り値として送信された後に、ステップS108の戻り値が処理されることになる。
(3)図9のステップS108の処理
図9のステップS108において、GUIアクション実行部25から、引数としてGUIスレッドID及びActionCallパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS107の呼び出しの方が早い場合は、既にINITがTRUEなのでステップS306に処理が進む。ステップS107の呼び出しの方が遅い場合は、ステップS305に処理が進む。
ステップS305において、ステップS303においてステップS107の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS107の呼び出しスレッドからNotifyされると、ステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットではないと判断されてステップS308に処理が進み、ステップS308において、引数がActionCallパケットであると判断されて、ステップS310に処理が進む。ステップS310において、ACTION_COUNTが一つインクリメントされ、ACTION_COUNTが「1」になり、ステップS312に処理が進む。ステップS312において、レコードのパケット領域にActionCallパケットが保存され、ステップS313でWAITしている図9のステップS107の呼び出しスレッドに、NotifyしてステップS313に処理が進む。
ステップS313において、ステップS312において図9のステップS112の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS112の呼び出しスレッドからNotifyされると、ステップS314に処理が進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図9のステップS112の呼び出し時にステップS312においてMethodCallパケットが保存されるので、スタック変数TMPにMethodCallパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS112で受信したMethodCallパケットがステップS108の戻り値として処理された後に、ステップS112の戻り値が処理されることになる。
(4)図9のステップS112の処理
図9のステップS112において、スタブメソッド実行部32から、引数としてGUIスレッドID及びMethodCallパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS107の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットではないと判断されてステップS308に処理が進み、ステップS308において、引数がActionCallパケットでないとと判断されて、ステップS312に処理が進む。
ステップS312において、レコードのパケット領域にMethodCallパケットが保存され、ステップS313でWAITしている図9のステップS108の呼び出しスレッドに、NotifyしてステップS313に処理が進む。
ステップS313において、ステップS312において図9のステップS118の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS118の呼び出しスレッドからNotifyされると、ステップS314に処理が進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図9のステップS118の呼び出し時にステップS312においてMethodReturnパケットが保存されるので、スタック変数TMPにMethodReturnパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS118で受信したMethodReturnパケットがステップS112の戻り値として処理された後に、ステップS118の戻り値が処理されることになる。
(5)図9のステップS118の処理
図9のステップS118において、GUIアクション実行部25から、引数としてGUIスレッドID及びMethodReturnパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS107の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットではないと判断されてステップS308に処理が進み、ステップS308において、引数がActionCallパケットでないとと判断されて、ステップS312に処理が進む。
ステップS312において、レコードのパケット領域にMethodReturnパケットが保存され、ステップS313でWAITしている図9のステップS112の呼び出しスレッドに、NotifyしてステップS313に処理が進む。
ステップS313において、ステップS311において図9のステップS122の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS122の呼び出しスレッドからNotifyされると、ステップS314に処理が進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図9のステップS122の呼び出し時にステップS311においてActionReturnパケットが保存されるので、スタック変数TMPにActionReturnパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS122で受信したActionReturnパケットがステップS118の戻り値として処理された後に、ステップS122の戻り値が処理されることになる。
(6)図9のステップS122の処理
図9のステップS122において、アクションスレッド部31から、引数としてActionReturnパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS107の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットなので、ステップS307に処理が進む。ここでステップS307においてACTION_COUNTを一つデクリメントして、ACTION_COUNTが「0」になり、ステップS309に処理が進む。ステップS309において、ACTION_COUNTが「0」なので、ステップS311に処理が進む。
ステップS311において、レコードのパケット領域にActionReturnパケットが保存され、ステップS313でWAITしている図9のステップS118の呼び出しスレッドに、Notifyする。更に、GUIスレッドIDをキーとしたレコードを削除してステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS122で受信したActionReturnパケットがステップS118の戻り値として処理された後に、ステップS122の戻り値が処理されることになる。
(7)図10のステップS207の処理
上述した図9のステップS107の処理と同じである。
(8)図10のステップS208の処理
上述した図9のステップS108の処理と同じである。
(9)図10のステップS212の処理
図10のステップS212において、スタブメソッド実行部32から、引数としてGUIスレッドID及びMethodCallパケットパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS207の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットではないと判断されてステップS308に処理が進み、ステップS308において、引数がActionCallパケットでないとと判断されて、ステップS312に処理が進む。
ステップS312において、レコードのパケット領域にMethodCallパケットが保存され、ステップS313でWAITしている図10のステップS208の呼び出しスレッドに、NotifyしてステップS313に処理が進む。
ステップS313において、ステップS312において図10のステップS208’の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS208’の呼び出しスレッドからNotifyされると、ステップS314に処理が進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図10のステップS208’の呼び出し時にステップS312においてActionCallパケットが保存されるので、スタック変数TMPにActionCallパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS208’で受信したActionCallパケットがステップS212の戻り値として処理された後に、ステップS208’の戻り値が処理されることになる。
(10)図10のステップS208’の処理
図10のステップS208’において、GUIアクション実行部25’から、引数としてGUIスレッドID及びActionCallパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS207の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットではないと判断されてステップS308に処理が進み、ステップS308において、引数がActionCallパケットであると判断されて、ステップS310に処理が進む。ステップS310において、ACTION_COUNTが一つインクリメントされ、ACTION_COUNTが「2」になり、ステップS312に処理が進む。ステップS312において、レコードのパケット領域にActionCallパケットが保存され、ステップS313でWAITしている図10のステップS212の呼び出しスレッドに、NotifyしてステップS313に処理が進む。
ステップS313において、ステップS312において図10のステップS222’の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS222’の呼び出しスレッドからNotifyされると、ステップS314に処理が進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図10のステップS222’の呼び出し時にステップS312においてActionReturnパケットが保存されるので、スタック変数TMPにActionReturnパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS222’で受信したMethodCallパケットがステップS208’の戻り値として処理された後に、ステップS222’の戻り値が処理されることになる。
(11)図10のステップS222’の処理
図10のステップS222’において、スタブメソッド実行部32から、引数としてGUIスレッドID及びActionReturnパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS207の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
ステップS306において、引数がActionReturnパケットなので、ステップS307に処理が進む。ここでステップS307においてACTION_COUNTを一つデクリメントして、ACTION_COUNTが「1」になり、ステップS312に処理が進む。ステップS312において、レコードのパケット領域にActionReturnパケットが保存され、ステップS313でWAITしている図10のステップS208’の呼び出しスレッドに、NotifyしてステップS313に処理が進む。
ステップS313において、ステップS312において図10のステップS218の呼び出しスレッドからNotifyされるのをWAITするとともに、ステップS218の呼び出しスレッドからNotifyされると、ステップS314に処理が進む。
ステップS314において、スタック変数TMPにパケット領域のパケットが保存される。ここでは、図10のステップS218の呼び出し時にステップS312においてMethodReturnパケットが保存されるので、スタック変数TMPにMethodReturnパケットが保存される。更に、レコードのパケット領域にnullが代入されてステップS315に処理が進み、ステップS315において、TMPが戻り値として返される。
この制御により、ステップS218で受信したMethodReturnパケットがステップS222の戻り値として処理された後に、ステップS218の戻り値が処理されることになる。
(12)図10のステップS218の処理
上述した図9のステップS118の処理と同じである。
本発明の最良の実施の形態に係る情報処理方法は、GUI表示モジュール10からビジネスロジック実行モジュール30へのリクエスト・リプライ型の通信と、ビジネスロジック実行モジュール30からGUI実行モジュール20へのリクエスト・リプライ型の通信を用いて、GUIアプリケーション上で発生したアクションイベントをきっかけとして、ビジネスロジック実行モジュール30で行った計算結果をGUIアプリケーションに反映させることができる。
これにより、情報処理端末1からビジネスロジック実行モジュール30へのアクセスにSSLのクライアント認証が使われていて、情報処理端末1のGUI表示モジュール10条にクライアント証明書がインストールされている場合でも、GUI実行モジュール10は、リクエスト代理部13によってリクエストを代理することによって、ビジネスロジック実行モジュール30へアクセスすることができる。
これにより本発明の最良の実施の形態に係る情報処理方法は、情報処理端末1ではGUI画面の表示し、入力イベントを受信するのみで、情報処理装置2でGUI操作メソッド及びビジネスロジックが実行されるので、情報処理端末1側の開発作業量を軽減し、開発効率を向上させる情報処理方法を提供することができる。
(変形例)
本発明の最良の実施の形態の変形例に係る情報処理システム4aは、図12に示すように、情報処理端末1、第1の情報処理装置2a及び第2の情報処理装置2bを備える。第1の情報処理装置2aにはGUI実行モジュール20が実装される。第2の情報処理装置2bにはビジネスロジック実行モジュール30が実装される。
情報処理端末1と第1の情報処理装置2a及び第2の情報処理装置2bは、第1の通信ネットワーク5aを介して接続される。第1の通信ネットワーク5aは、例えばインターネットなどの外部の通信ネットワークである。第1の情報処理装置2a及び第2の情報処理装置2bは、第2の通信ネットワーク5bを介して接続される。第2の通信ネットワーク5bは、例えば社内LANなどの通信ネットワークである。
このような本発明の最良の実施の形態の変形例に係る情報処理システム4aは、第1の情報処理装置2a及び第2の情報処理装置2bとの間の通信において、オーバヘッドが発生するものの、第1の情報処理装置2a及び第2の情報処理装置2bとで、それぞれ作業を分担することにより、付加を分散させることができる。
(その他の実施の形態)
上記のように、本発明の最良の実施の形態とその変形例によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなる。
例えば、本発明の最良の実施の形態に記載した情報処理端末1及び情報処理装置2は、図3に示すようにそれぞれ一つのハードウェア上に構成されても良いし、図12に示すように二つのハードウェア上に構成されても良い。又、その機能や処理数に応じて、3つ以上のハードウェア上に構成されても良い。また、既存の情報処理システム上に実現されても良い。
本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。
本発明の最良の実施の形態に係る情報処理システムの概要を説明する図である。 本発明の最良の実施の形態に係る情報処理システムに用いられる情報処理方法の処理を説明する図である。 本発明の最良の実施の形態に係る情報処理システムの機能構成を説明する図である。 本発明の最良の実施の形態に係る情報処理装置のハードウェア構成を説明する図である。 本発明の最良の実施の形態に係る情報処理端末に実装されるオブジェクトを説明する図である。 本発明の最良の実施の形態に係る情報処理装置のGUI実行モジュールに実装されるオブジェクトを説明する図である。 本発明の最良の実施の形態に係る情報処理装置のGUI実行モジュールにおいて扱われるパケットのクラス構成図である。 本発明の最良の実施の形態に係る情報処理装置のビジネスロジック実行モジュールに実装されるオブジェクトを説明する図である。 本発明の最良の実施の形態に係る情報処理方法を概略して説明するシーケンス図である。 本発明の最良の実施の形態に係る情報処理方法を概略して説明するシーケンス図であって、ビジネスロジック実行モジュールから呼び出されたGUIオブジェクトのメソッドの中からアクションイベントが発生した場合のシーケンス図である。 本発明の最良の実施の形態に係る通信オブジェクト管理部のstartメソッドの処理を説明するフローチャートである。 本発明の最良の実施の形態の変形例に係る情報処理システムの機能構成を説明する図である。 従来の情報システムの概要を説明する図である。
符号の説明
1 情報処理端末
2、2a、2b 情報処理装置
4、4a 情報処理システム
5、5a、5b 通信ネットワーク
10 GUI表示モジュール
11 画面表示部
12 入力部
13 リクエスト代理部
20 GUI実行モジュール
21 GUIオブジェクト部
22 GUIメソッド実行部
23 GUIオブジェクト管理部
24 アクションイベント受信部
25 GUIアクション実行部
26 通信オブジェクト管理部
30 ビジネスロジックスレッド管理部
31 アクションスレッド部
32 スタブメソッド実行部
33 GUIスタブ管理部
34 アクション管理部
35 アクション実行部
36 ビジネスロジックスレッド管理部

Claims (5)

  1. 情報処理装置と、前記情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法であって、
    前記情報処理端末において、前記情報処理装置の命令に従って前記情報処理端末にGUI画面が表示され、前記GUI画面に対して入力イベントが発生されるステップと、
    前記情報処理装置において、前記入力イベントが発生されたことが入力されると、前記入力イベントがユーザアクションに変換され、前記GUIオブジェクトのスタブであるGUIオブジェクトスタブで前記ユーザアクションを実行するスレッドが生成され、前記スレッドにおいて前記ユーザアクションが実行されるステップと、
    前記情報処理装置において、前記ユーザアクションの実行において前記GUIオブジェクトのメソッドが呼び出された場合、前記呼び出しに関するパラメタに基づいて前記情報処理端末に新たなGUI画面が表示され、前記新たなGUI画面に対して新たな入力イベントが発生されるステップと、
    前記情報処理装置において、前記新たな入力イベントが発生されたことが入力されると、前記新たな入力イベントがリターンデータに変換され、前記リターンデータに基づいて、前記スレッドにおいて前記ユーザアクションが実行された結果が、前記ユーザアクションの実行命令の戻り値として出力されるステップ
    とを備えることを特徴とする情報処理方法。
  2. 情報処理装置と、前記情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法であって、
    前記情報処理装置のGUI実行部のGUIオブジェクト管理部において、GUIオブジェクトと、前記GUIオブジェクトを識別するGUIオブジェクトIDとが関連づけられて記憶されるステップと、
    前記情報処理装置のビジネスロジック実行部のアクション管理部において、前記GUIオブジェクトで発生するユーザアクションと、前記ユーザアクションを識別するアクションIDとが関連づけられて記憶されるステップと、
    前記情報処理装置の前記ビジネスロジック実行部のGUIスタブ管理部において、前記GUIオブジェクトIDと、前記GUIオブジェクトIDに関連づけられたGUIオブジェクトのスタブであるGUIオブジェクトスタブとが関連づけられて記憶されるステップと、
    前記情報処理装置の前記GUI実行部によって、前記GUIオブジェクトに基づいて前記情報処理端末にGUI画面が表示され、前記GUI画面に対して入力イベントが発生すると、前記入力イベントが前記情報処理装置の前記GUI実行部に送信されるステップと、
    前記情報処理装置の前記GUI実行部において、前記入力イベントが受信されると、前記入力イベントからユーザアクションに関する前記アクションIDとGUIオブジェクトが取得されるステップと、
    前記情報処理装置の前記GUI実行モジュールにおいて、前記ユーザアクションを実行するスレッドが生成され、アクションカウント変数が初期化されるステップと、
    前記情報処理装置の前記GUI実行部において、前記アクションイベントIDと前記GUIオブジェクトとが取得されると、前記GUIオブジェクトに基づいて前記GUIオブジェクト管理部から前記GUIオブジェクトIDが取得されるとともに、前記アクションIDと前記GUIオブジェクトIDとを含むアクションコールパケットが生成されるステップと、
    前記情報処理装置のGUI実行部において、前記アクションカウント変数がインクリメントされるとともに、前記アクションコールパケットが、前記情報処理装置のビジネスロジック実行モジュールに送信されるステップと、
    前記情報処理装置の前記ビジネスロジック実行部において、前記アクションコールパケットが受信されると、前記アクションコールパケットから前記アクションIDとGUIオブジェクトIDが取得され、前記アクションIDに基づいて前記アクション管理部から前記ユーザアクションが取得されるとともに、前記オブジェクトIDに基づいて前記GUIスタブ管理部から前記GUIオブジェクトスタブが取得されるステップと、
    前記情報処理装置の前記ビジネスロジック実行部において、取得された前記GUIオブジェクトスタブに対して、取得された前記ユーザアクションが実行されるステップ
    を備えることを特徴とする情報処理方法。
  3. 前記情報処理装置の前記ビジネスロジック実行部において、前記ユーザアクションで前記GUIオブジェクトスタブのメソッドが所定のパラメタで呼び出された場合、前記GUIオブジェクトIDと前記パラメタとを含むメソッドコールパケットが生成され、前記GUI実行モジュールに送信されるステップと、
    前記情報処理装置の前記GUI実行部において、前記メソッドコールパケットが受信されると、前記メソッドコールパケットから前記GUIオブジェクトID及び前記パラメタが取り出され、前記GUIオブジェクトIDに基づいてGUIオブジェクト管理部から前記GUIオブジェクトが取得されるステップと、
    前記情報処理装置の前記GUI実行部において、取得された前記GUIオブジェクト及び前記パラメタに基づいて前記情報処理端末に新たなGUI画面が表示され、前記新たなGUI画面に対して新たな入力イベントが発生すると、前記新たな入力イベントが前記情報処理装置の前記GUI実行モジュールに送信され、GUIオブジェクトリターンデータに変換されるステップと、
    前記情報処理装置の前記GUI実行部において、前記GUIオブジェクトリターンデータを含むメソッドリターンパケットが生成され、前記情報処理装置の前記ビジネスロジック実行モジュールに送信されるステップと、
    前記情報処理装置の前記ビジネスロジック実行部において、前記メソッドリターンパケットが受信されると、前記メソッドリターンパケットから前記GUIオブジェクトリターンデータが取得され、前記GUIオブジェクトリターンデータが、前記GUIオブジェクトスタブのメソッドの戻り値として返されるステップ
    とを更に備えることを特徴とする請求項2に記載の情報処理方法。
  4. 前記情報処理装置の前記ビジネスロジック実行部において、前記GUIオブジェクトスタブのメソッドの戻り値としてアクションリターンデータが取得されると、前記アクションリターンデータを含むアクションリターンパケットが作成され、前記アクションリターンパケットが前記ユーザアクションの戻り値として返されるステップと、
    前記情報処理装置の前記GUI実行部において、前記アクションリターンパケットが受信されると、前記アクションカウント変数をデクリメントし、前記アクションカウント変数がゼロになると、前記アクションリターンパケットから前記アクションリターンデータが取得されるステップ
    とを更に備えることを特徴とする請求項3に記載の情報処理方法。
  5. 情報処理装置と、前記情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムであって、
    前記情報処理端末は、
    前記情報処理装置の命令に従って、前記情報処理端末の表示装置にGUI画面を表示し、前記情報処理端末の入力装置によって前記GUI画面に対して発生された入力イベントを前記情報処理装置に送信し、
    前記情報処理装置は、
    前記情報処理端末に前記GUI画面を表示する命令を出力し、前記GUI画面に対して入力イベントが発生すると、前記入力イベントがユーザアクションに変換され、前記GUIオブジェクトのスタブであるGUIオブジェクトスタブで前記ユーザアクションを実行するスレッドを生成し、前記スレッドにおいて前記ユーザアクションを実行し、
    前記ユーザアクションの実行において前記GUIオブジェクトのメソッドが呼び出された場合、前記呼び出しに関するパラメタに基づいて前記情報処理端末に新たなGUI画面を表示する命令を出力し、前記新たなGUI画面に対して新たな入力イベントが発生すると、前記新たな入力イベントをリターンデータに変換し、前記リターンデータに基づいて、前記スレッドにおいて前記ユーザアクションを実行した結果を、前記ユーザアクションの実行命令の戻り値として出力する
    ことを特徴とする情報処理システム。
JP2006259546A 2006-09-25 2006-09-25 情報処理方法及び情報処理システム Active JP4342545B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006259546A JP4342545B2 (ja) 2006-09-25 2006-09-25 情報処理方法及び情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006259546A JP4342545B2 (ja) 2006-09-25 2006-09-25 情報処理方法及び情報処理システム

Publications (2)

Publication Number Publication Date
JP2008083745A true JP2008083745A (ja) 2008-04-10
JP4342545B2 JP4342545B2 (ja) 2009-10-14

Family

ID=39354611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006259546A Active JP4342545B2 (ja) 2006-09-25 2006-09-25 情報処理方法及び情報処理システム

Country Status (1)

Country Link
JP (1) JP4342545B2 (ja)

Also Published As

Publication number Publication date
JP4342545B2 (ja) 2009-10-14

Similar Documents

Publication Publication Date Title
US11171897B2 (en) Method and apparatus for composite user interface generation
US7330878B2 (en) Method and system for remote control of a local system
US7904194B2 (en) Event management systems and methods for motion control systems
JP3055970B2 (ja) オブジェクト指向言語間インタフェース実現方法および装置
US8190712B2 (en) Wireless communication device use of application server applications
JP2011118879A (ja) ユーザインタフェース操作の位置独立な実行
EP2323037A2 (en) System landscape aware inter application communication infrastructure
CN108780409B (zh) 通用通知流水线
US7552198B2 (en) Method, system, and program product for providing access to J2EE application servers from non-J2EE application clients
US6813629B1 (en) Method and apparatus for facilitating object communication across a network
GB2394575A (en) System for a distributed shell in a distributed computer environment
JP4342545B2 (ja) 情報処理方法及び情報処理システム
US6308226B1 (en) Communication method and system for objects movable in network
JP2006252344A (ja) 情報処理方法、情報処理システム、情報処理端末及び情報処理装置
KR100494827B1 (ko) 하드웨어 독립적인 통신 인터페이스를 가지는 분산객체모델 기반의 라디오 서버와 이를 이용한 통신제어방법
JPH10133875A (ja) オブジェクト間通信方法及びオブジェクト間通信システム
JP2003076563A (ja) 分散オブジェクトミドルウェア連携方法及びプログラムを記録した記録媒体並びにプログラム
Silva-Lepe et al. Container-managed messaging: an architecture for integrating java components and message-oriented applications
JPH10214196A (ja) ソフトウェア連携処理装置
Kelly et al. TCP Connections
MacLean et al. Building and Consuming Services
Ren et al. Utilizing commercial object libraries within looselycoupled, event-based systems.
Faison A Survey of Commercial Systems
Mukhar et al. Message-Driven Beans

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081125

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090515

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090609

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090707

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4342545

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130717

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350