JP4342545B2 - Information processing method and information processing system - Google Patents

Information processing method and information processing system Download PDF

Info

Publication number
JP4342545B2
JP4342545B2 JP2006259546A JP2006259546A JP4342545B2 JP 4342545 B2 JP4342545 B2 JP 4342545B2 JP 2006259546 A JP2006259546 A JP 2006259546A JP 2006259546 A JP2006259546 A JP 2006259546A JP 4342545 B2 JP4342545 B2 JP 4342545B2
Authority
JP
Japan
Prior art keywords
gui
information processing
action
execution unit
thread
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.)
Active
Application number
JP2006259546A
Other languages
Japanese (ja)
Other versions
JP2008083745A (en
Inventor
太郎 増田
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/en
Publication of JP2008083745A publication Critical patent/JP2008083745A/en
Application granted granted Critical
Publication of JP4342545B2 publication Critical patent/JP4342545B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理方法及び情報処理システムに関する。   The present invention relates to an information processing method and an information processing system including an information processing device and an information processing terminal that uses information provided from the information processing device.

昨今のソフトウェア開発において、クライアントサーバ型システムが一般的に用いられている。このクライアントサーバシステムにおいては、クライアントである情報処理端末で処理の条件データなどが入力され、入力されたデータがサーバである情報処理装置に送信されることにより処理が実現されている。従って、この様なクライアントサーバシステムにおいては、情報処理端末で実行されるプログラムと、情報処理装置で実行されるプログラムとが同期が取れていなければならない。具体的には、例えば、情報処理装置で実行されるプログラムに修正が発生した場合、情報処理端末で実行されるプログラムにおいても修正が発生する場合がある。   In recent software development, a client server type system is generally used. In this client-server system, processing condition data or the like is input from an information processing terminal that is a client, and processing is realized by transmitting the input data to an information processing device that is a server. Therefore, in such a client server system, the program executed by the information processing terminal and the program executed by the information processing apparatus must be synchronized. Specifically, for example, when a correction is generated in a program executed by the information processing apparatus, the correction may also occur in a program executed by the information processing terminal.

例えば、情報処理端末においてGUI(Graphical User Interface)を持つクライアントサーバシステムでは、情報処理端末上に表示された画面に対する、ユーザの操作によるアクションイベントをトリガーとして、情報処理装置上で計算された結果を情報処理端末のGUIに反映して表示する場合がある(例えば、特許文献1及び特許文献2参照。)。ここで、アクションイベントとは、ユーザによるマウスやキーボードなどの入力装置の操作により発生するイベントで、具体的にはボタンの押下、コンボボックスからの選択、テキストフィールドへの入力などが挙げられる。   For example, in a client server system having a GUI (Graphical User Interface) in an information processing terminal, a result calculated on the information processing apparatus is triggered by an action event by a user operation on a screen displayed on the information processing terminal. In some cases, the information is displayed on the GUI of the information processing terminal (see, for example, Patent Document 1 and Patent Document 2). Here, the action event is an event that occurs when the user operates an input device such as a mouse or a keyboard, and specifically includes pressing of a button, selection from a combo box, input to a text field, and the like.

特許文献1には、クライアントに提供するGUI部品を迅速、効率的に開発提供し、保守性の優れたものにするWebアプリケーションサーバが開示されている。特許文献2には、1つのセッションにおける処理が複数のアプリケーションサーバ間で移動しつつ実行される環境において、ユーザのセッションデータをGUIアプリケーションサーバにて確実に取得することのできるWebアプリケーションサーバシステムが開示されている。   Patent Document 1 discloses a Web application server that rapidly and efficiently develops and provides GUI parts to be provided to a client and has excellent maintainability. Patent Document 2 discloses a Web application server system that can reliably acquire user session data with a GUI application server in an environment where processing in one session is executed while moving between a plurality of application servers. Has been.

情報処理装置上で計算された結果を情報処理端末のGUIに反映して表示する場合、図13に示すように、情報処理システム910は、クライアントである情報処理端末901とサーバである情報処理装置903を備えている。情報処理端末901は、GUIコンテナ911を備えている。情報処理装置903はJ2EEコンテナ931を備えており、J2EEコンテナ931は、ビジネスロジック実行クラス932を備えている。   When the result calculated on the information processing apparatus is reflected in the GUI of the information processing terminal and displayed, the information processing system 910 includes an information processing terminal 901 that is a client and an information processing apparatus that is a server, as shown in FIG. 903. The information processing terminal 901 includes a GUI container 911. The information processing apparatus 903 includes a J2EE container 931, and the J2EE container 931 includes a business logic execution class 932.

情報処理端末901のGUIコンテナ911は、例えば、郵便番号と住所を入力するフィールドを備えたGUIと、GUIを操作するユーザアクションクラス912とを備えている。ユーザアクションクラス912は、ユーザの操作によってGUIのフィールドに対して文字入力や選択などの入力信号が入力されたアクションイベントをOSから受信し、フィールドに入力されたデータを取得して、情報処理装置903に送信する。   The GUI container 911 of the information processing terminal 901 includes, for example, a GUI including fields for inputting a zip code and an address, and a user action class 912 that operates the GUI. The user action class 912 receives, from the OS, an action event in which an input signal such as character input or selection is input to a GUI field by a user operation, acquires data input in the field, and processes the information processing apparatus. To 903.

情報処理装置903のビジネスロジック実行クラス932は、情報処理端末901からフィールドデータを取得すると、その取得されたデータに基づいてビジネスロジックを実行し、新たなフィールドデータを情報処理端末901に送信する。   When the business logic execution class 932 of the information processing apparatus 903 acquires field data from the information processing terminal 901, the business logic is executed based on the acquired data and new field data is transmitted to the information processing terminal 901.

情報処理端末901のユーザアクションクラス912は、情報処理装置903から新たなフィールドデータを受信すると、新たなフィールドデータをフィールドに反映する。   When the user action class 912 of the information processing terminal 901 receives new field data from the information processing apparatus 903, the user action class 912 reflects the new field data in the field.

この場合、アクションイベントを受信した情報処理端末のモジュールから、RPC(Remote Procedure Call)、CORBA(Common Object Request Broker Architecture)、RMI(Remote Method Invocation)等の技術を用いて異なる装置上に実装されたオブジェクト間でメッセージをやりとりすることにより、情報処理装置上の関数やメソッドを呼び出す。更に、情報処理端末では、呼び出した関数やメソッドの戻り値を情報処理装置から受信し、受信した戻り値に基づいて、情報処理端末のGUIをコントロールするための関数やメソッドを実行する。   In this case, the module of the information processing terminal that has received the action event is mounted on a different apparatus using technologies such as RPC (Remote Procedure Call), CORBA (Common Object Request Broker Architecture), and RMI (Remote Method Invocation). Functions and methods on the information processing apparatus are called by exchanging messages between objects. Further, the information processing terminal receives a return value of the called function or method from the information processing apparatus, and executes a function or method for controlling the GUI of the information processing terminal based on the received return value.

しかし、情報処理装置上の関数やメソッドの戻り値がGUIに反映させる必要のないデータを含む場合がある。このとき、情報処理装置から情報処理端末へのデータの転送量が増大してしまう場合がある。また、非特許文献1などに公開されるJava(登録商標)言語におけるutil.Iterator インタフェースやsql.ResultSetなどの反復子やコレクションの戻り値を持つメソッドもある。この場合、ループ関数などを用いて戻り値から一つずつデータを取得する。   However, there are cases where the return values of functions and methods on the information processing apparatus include data that does not need to be reflected in the GUI. At this time, the amount of data transferred from the information processing apparatus to the information processing terminal may increase. In addition, there are methods having iterators and return values of collections such as util.Iterator interface and sql.ResultSet in the Java (registered trademark) language disclosed in Non-Patent Document 1 and the like. In this case, data is acquired one by one from the return value using a loop function or the like.

この問題を解決するために、既存の情報処理装置上のメソッドの戻り値からデータを取り出し、加工し、戻り値として返すようなラッパーメソッドを情報処理装置上で作成し、情報処理端末から呼び出す方法がある。
特開2005−227405号公報 特開2005−285007号公報 http://sdc.sun.co.jp/java/index.html
To solve this problem, create a wrapper method on the information processing device that extracts data from the return value of the method on the existing information processing device, processes it, and returns it as a return value, and then calls it from the information processing terminal There is.
JP 2005-227405 A JP 2005-285007 A http://sdc.sun.co.jp/java/index.html

しかし、情報処理装置上のメソッドが既に多数存在し、それらの多くが反復子を持つメソッドである場合、それぞれについてラッパーメソッドを開発する必要があるので、開発が容易ではない問題がある。   However, when many methods on the information processing apparatus already exist and many of them are methods having an iterator, it is necessary to develop a wrapper method for each method, and thus there is a problem that development is not easy.

この様な問題に対して、例えば、情報処理装置において、既存のメソッドに対するラッパーメソッドを作成することなく、情報処理端末上で発生したアクションイベントをトリガーとして、情報処理装置上で行った計算結果を情報処理端末のGUIに反映させることにより、開発者の開発効率を向上させる技術が求められている。   To solve such a problem, for example, in an information processing apparatus, without creating a wrapper method for an existing method, a calculation result performed on the information processing apparatus is triggered by an action event that has occurred on the information processing terminal. There is a need for a technology that improves the development efficiency of developers by reflecting them in the GUI of an information processing terminal.

従って本発明の目的は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムにおける開発効率を向上させる情報処理方法、この情報処理方法を用いた情報処理システムを提供することである。   Accordingly, an object of the present invention is to provide an information processing method for improving development efficiency in an information processing system including an information processing device and an information processing terminal that uses information provided from the information processing device, and information using the information processing method. It is to provide a processing system.

上記課題を解決するために、本発明の第1の特徴は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法である。即ち衣本発明の第1の特徴に係る情報処理方法は、情報処理端末において、情報処理装置の命令に従って情報処理端末にGUI画面が表示され、GUI画面に対して入力イベントを発生するステップと、情報処理装置において、入力イベントが発生されたことが入力されると、入力イベントがユーザアクションに変換され、入力イベントに対応するGUIオブジェクトのスタブであるGUIオブジェクトスタブでユーザアクションを実行するスレッドが生成されるとともに、GUIスレッドIDを取得し、情報処理端末のリクエスト代理部に、当該ビジネスロジックを実行するビジネスロジック実行部のアドレスおよびGUIスレッドIDを送信するステップと、情報処理端末のリクエスト代理部が、ビジネスロジック実行部のアドレスおよびGUIスレッドIDを受信すると、受信したアドレスおよびGUIスレッドIDに基づいて、情報処理装置のビジネスロジック実行部を呼び出し、ユーザアクションを実行するステップと、情報処理装置において、ユーザアクションの実行においてGUIオブジェクトのメソッドが呼び出された場合、呼び出しに関するパラメタに基づいて情報処理端末に新たなGUI画面が表示され、新たなGUI画面に対して新たな入力イベントを発生するステップと、情報処理装置において、新たな入力イベントが発生されたことが入力されると、新たな入力イベントがリターンデータに変換され、リターンデータに基づいて、スレッドにおいてユーザアクションが実行された結果が、ユーザアクションの実行命令の戻り値として出力するステップとを備える。 In order to solve the above problems, a first feature of the present invention is an information processing method used in an information processing system including an information processing device and an information processing terminal that uses information provided from the information processing device. . That is, in the information processing method according to the first aspect of the present invention, the information processing terminal displays a GUI screen on the information processing terminal in accordance with an instruction of the information processing device, and generates an input event on the GUI screen; In the information processing apparatus, when an event that an input event has occurred is input, the input event is converted into a user action, and a thread for executing the user action in the GUI object stub that is a GUI object stub corresponding to the input event is generated. is Rutotomoni acquires the GUI thread ID, the request agent unit of the information processing terminal, and transmitting the address and the GUI thread ID of the business logic execution unit for executing the business logic, the request agent unit of the information processing terminal , Business logic execution section address and When receiving the GUI thread ID, based on the received address and GUI thread ID, call the business logic execution unit of the information processing apparatus, and executing the user action, the information processing apparatus, the GUI objects in the execution of a user action When the method is called, a new GUI screen is displayed on the information processing terminal based on the parameters related to the call, a step of generating a new input event for the new GUI screen, and a new input in the information processing device When an event occurrence is input, a new input event is converted into return data, and the result of executing the user action in the thread based on the return data is output as the return value of the user action execution instruction. the method comprising the steps of: Provided.

このような本発明の第1の特徴に係る情報処理方法は、情報処理端末ではGUI画面の表示し、入力イベントを受信するのみで、情報処理装置でGUI操作メソッド及びビジネスロジックが実行されるので、情報処理端末側の開発作業量を軽減し、開発効率を向上させる情報処理方法を提供することができる。   In the information processing method according to the first feature of the present invention, the GUI operation method and the business logic are executed by the information processing apparatus only by displaying the GUI screen on the information processing terminal and receiving the input event. It is possible to provide an information processing method that reduces the amount of development work on the information processing terminal side and improves development efficiency.

本発明の第2の特徴は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法である。即ち、本発明の第2の特徴に係る情報処理方法は、情報処理装置のGUI実行部のGUIオブジェクト管理部において、GUIオブジェクトと、GUIオブジェクトを識別するGUIオブジェクトIDとを関連づけて記憶するステップと、情報処理装置のビジネスロジック実行部のアクション管理部において、GUIオブジェクトで発生するユーザアクションと、ユーザアクションを識別するアクションIDとを関連づけて記憶するステップと、情報処理装置のビジネスロジック実行部のGUIスタブ管理部において、GUIオブジェクトIDと、GUIオブジェクトIDに関連づけられたGUIオブジェクトのスタブであるGUIオブジェクトスタブとを関連づけて記憶するステップと、情報処理装置のGUI実行部によって、GUIオブジェクトに基づいて情報処理端末にGUI画面を表示し、GUI画面に対して入力イベントが発生すると、入力イベントが情報処理装置のGUI実行部に送信するステップと、情報処理装置のGUI実行部において、入力イベントが受信されると、入力イベントに基づいてGUI操作メソッドを実行してユーザアクションイベントを生成し、ユーザアクションに関するアクションIDとGUIオブジェクトを取得するステップと、情報処理装置のGUI実行部において、ユーザアクションを実行するスレッドを生成し、アクションカウント変数を初期化するとともに、GUIスレッドIDを取得するステップと、情報処理装置のGUI実行部において、ビジネスロジック実行部のアドレスとGUIスレッドIDを、情報処理端末のリクエスト代理部に送信するステップと、情報処理端末のリクエスト代理部において、アドレスおよびGUIスレッドIDに基づいて、情報処理装置のビジネスロジック実行部を呼び出すステップと、情報処理装置のGUI実行部において、GUIスレッドID、アクションIDとGUIオブジェクトとを取得すると、GUIオブジェクトに基づいてGUIオブジェクト管理部からGUIオブジェクトIDを取得するとともに、アクションIDとGUIオブジェクトIDとを含むアクションコールパケットを生成するステップと、情報処理装置のGUI実行部において、アクションカウント変数をインクリメントするとともに、アクションコールパケットを、情報処理装置のビジネスロジック実行部に送信するステップと、情報処理装置のビジネスロジック実行部において、アクションコールパケットを受信すると、アクションコールパケットからアクションIDとGUIオブジェクトIDを取得し、アクションIDに基づいてアクション管理部からユーザアクションを取得するとともに、GUIオブジェクトIDに基づいてGUIスタブ管理部からGUIオブジェクトスタブを取得するステップと、情報処理装置のビジネスロジック実行部において、取得されたGUIオブジェクトスタブに対して、取得されたユーザアクションを実行するステップを備える。 A second feature of the present invention is an information processing method used in an information processing system including an information processing apparatus and an information processing terminal that uses information provided from the information processing apparatus. That is, the information processing method according to the second feature of the present invention includes the step of storing the GUI object and the GUI object ID for identifying the GUI object in association with each other in the GUI object management unit of the GUI execution unit of the information processing apparatus; In the action management unit of the business logic execution unit of the information processing apparatus, a step of associating and storing a user action that occurs in the GUI object and an action ID that identifies the user action, and a GUI of the business logic execution unit of the information processing apparatus In the stub management unit, the GUI object ID and a GUI object stub that is a stub of the GUI object associated with the GUI object ID are stored in association with each other, and the GUI execution unit of the information processing apparatus performs the GUI object A GUI screen is displayed on the information processing terminal based on the project, and when an input event occurs on the GUI screen, the step of transmitting the input event to the GUI execution unit of the information processing device, and the GUI execution unit of the information processing device, When an input event is received, a GUI operation method is executed based on the input event to generate a user action event, and an action ID and a GUI object related to the user action are acquired. A thread for executing a user action is generated, an action count variable is initialized, a GUI thread ID is acquired, and in the GUI execution unit of the information processing apparatus, the address of the business logic execution unit and the GUI thread ID are Processing terminal request A step of transmitting to the processing unit, a step of calling a business logic execution unit of the information processing device based on the address and the GUI thread ID in the request proxy unit of the information processing terminal, and a GUI thread in the GUI execution unit of the information processing device When the ID, the action ID, and the GUI object are acquired, the GUI object ID is acquired from the GUI object management unit based on the GUI object, and an action call packet including the action ID and the GUI object ID is generated. The GUI execution unit of the apparatus increments the action count variable and transmits an action call packet to the business logic execution unit of the information processing apparatus, and the business logic of the information processing apparatus. In click execution unit, upon receiving the action call packet, it obtains the action ID and the GUI object ID from the action call packet, acquires the user action from action manager based on the action ID, GUI stub based on the GUI object ID A step of acquiring a GUI object stub from the management unit, and a step of executing the acquired user action on the acquired GUI object stub in the business logic execution unit of the information processing apparatus.

ここで、情報処理装置のビジネスロジック実行部において、ユーザアクションからGUIオブジェクトスタブのメソッドが所定のパラメタで呼び出された場合、GUIオブジェクトIDとパラメタとを含むメソッドコールパケットを生成しGUI実行部に送信するステップと、情報処理装置のGUI実行部において、メソッドコールパケットを受信すると、メソッドコールパケットからGUIオブジェクトID及びパラメタを取り出し、GUIオブジェクトIDに基づいてGUIオブジェクト管理部からGUIオブジェクトを取得するステップと、情報処理装置のGUI実行部において、取得されたGUIオブジェクト及びパラメタに基づいて情報処理端末に新たなGUI画面を表示し、新たなGUI画面に対して新たな入力イベントが発生すると、新たな入力イベントが情報処理装置のGUI実行部に送信され、GUIオブジェクトリターンデータに変換するステップと、情報処理装置のGUI実行部において、GUIオブジェクトリターンデータを含むメソッドリターンパケットを生成し、情報処理装置のビジネスロジック実行部に送信するステップと、情報処理装置のビジネスロジック実行部において、メソッドリターンパケットを受信すると、メソッドリターンパケットからGUIオブジェクトリターンデータを取得し、GUIオブジェクトリターンデータが、GUIオブジェクトスタブのメソッドの戻り値として返すステップとを更に備えても良い。 Here, in the business logic execution unit of the information processing apparatus, when a method of the GUI object stub is called from the user action with a predetermined parameter, a method call packet including the GUI object ID and the parameter is generated, and the GUI execution unit When the method execution packet is received in the transmission step and the GUI execution unit of the information processing apparatus, the GUI object ID and the parameter are extracted from the method call packet, and the GUI object is acquired from the GUI object management unit based on the GUI object ID. The GUI execution unit of the information processing apparatus displays a new GUI screen on the information processing terminal based on the acquired GUI object and parameter, and a new input event is generated on the new GUI screen. When it is generated , a new input event is transmitted to the GUI execution unit of the information processing device and converted into GUI object return data, and a method return packet including the GUI object return data is generated in the GUI execution unit of the information processing device. and sending the business logic execution unit of the information processing apparatus, the business logic execution unit of the information processing apparatus receives the method return packet, obtains the GUI object return data from method return packet, a GUI object returns data it may further comprise the step of returning the method's return the GUI object's stub.

更に、情報処理装置のビジネスロジック実行部において、GUIオブジェクトスタブのメソッドの戻り値としてアクションリターンデータを取得すると、アクションリターンデータを含むアクションリターンパケットを作成し、アクションリターンパケットを入力イベントの受信の戻り値として返すステップと、情報処理装置のGUI実行部において、アクションリターンパケットを受信すると、アクションカウント変数をデクリメントし、アクションカウント変数がゼロになると、アクションリターンパケットからアクションリターンデータを取得するステップとを更に備えても良い。 Furthermore, in the business logic execution unit of the information processing apparatus, when the action return data is acquired as the return value of the method of the GUI object stub, an action return packet including the action return data is created, and the action return packet is received. A step of returning as a return value and a step of decrementing the action count variable when the action return packet is received in the GUI execution unit of the information processing device, and acquiring action return data from the action return packet when the action count variable becomes zero And may further be provided.

本発明の第3の特徴は、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムである。即ち本発明の第3の特徴に係る情報処理システムの情報処理端末は、情報処理装置の命令に従って、情報処理端末の表示装置にGUI画面を表示し、情報処理端末の入力装置によってGUI画面に対して発生された入力イベントを情報処理装置に送信するとともに、情報処理装置から、情報処理装置においてビジネスロジックを実行するビジネスロジック実行部のアドレスおよびGUIスレッドIDを受信すると、受信したアドレスおよびGUIスレッドIDに基づいて、情報処理装置のビジネスロジック実行部を呼び出す。本発明の第3の特徴に係る情報処理システムの情報処理装置は、情報処理端末にGUI画面を表示する命令を出力し、GUI画面に対して入力イベントが発生すると、入力イベントをユーザアクションに変換し、情報処理端末のリクエスト代理部に、ビジネスロジック実行部のアドレスおよびGUIスレッドIDを送信し、情報処理端末のリクエスト代理部からの呼び出しに応じて、ビジネスロジック実行部で、入力イベントに対応するGUI画面に対応するGUIオブジェクトのスタブであるGUIオブジェクトスタブでユーザアクションを実行するスレッドを生成し、スレッドにおいてユーザアクションを実行し、ユーザアクションの実行においてGUIオブジェクトのメソッドが呼び出された場合、呼び出しに関するパラメタに基づいて情報処理端末に新たなGUI画面を表示する命令を出力し、新たなGUI画面に対して新たな入力イベントが発生すると、新たな入力イベントをリターンデータに変換し、リターンデータに基づいて、スレッドにおいてユーザアクションを実行した結果を、ユーザアクションの実行命令の戻り値として出力する。 A third feature of the present invention is an information processing system including an information processing device and an information processing terminal that uses information provided from the information processing device. That is, the information processing terminal of the information processing system according to the third feature of the present invention displays a GUI screen on the display device of the information processing terminal according to the instruction of the information processing device, When the address and GUI thread ID of the business logic execution unit that executes business logic in the information processing apparatus are received from the information processing apparatus, the received address and GUI thread ID are transmitted to the information processing apparatus. Based on the above, the business logic execution unit of the information processing apparatus is called. The information processing apparatus of the information processing system according to the third aspect of the present invention outputs a command to display a GUI screen on the information processing terminal, and converts an input event into a user action when an input event occurs on the GUI screen. The address of the business logic execution unit and the GUI thread ID are transmitted to the request proxy unit of the information processing terminal, and the business logic execution unit responds to the input event in response to the call from the request proxy unit of the information processing terminal. When a thread for executing a user action is generated in the GUI object stub, which is a GUI object stub corresponding to the GUI screen, the user action is executed in the thread, and when the method of the GUI object is called in the execution of the user action, Based on parameters When a command to display a new GUI screen is output to the information processing terminal and a new input event occurs on the new GUI screen, the new input event is converted into return data, and in the thread based on the return data The result of executing the user action is output as the return value of the user action execution instruction.

このような本発明の第3の特徴に係る情報処理システムは、情報処理端末ではGUI画面の表示し、入力イベントを受信するのみで、情報処理装置でGUI操作メソッド及びビジネスロジックが実行されるので、情報処理端末側の開発作業量を軽減し、開発効率を向上させる情報処理方法を提供することができる。   In the information processing system according to the third feature of the present invention, the GUI operation method and the business logic are executed by the information processing apparatus only by displaying the GUI screen and receiving the input event at the information processing terminal. It is possible to provide an information processing method that reduces the amount of development work on the information processing terminal side and improves development efficiency.

本発明によれば、情報処理装置と、情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムにおける開発効率を向上させる情報処理方法、この情報処理方法を用いた情報処理システムを提供することができる。   According to the present invention, an information processing method for improving development efficiency in an information processing system including an information processing device and an information processing terminal that uses information provided from the information processing device, and information processing using the information processing method A system can be provided.

次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、同一又は類似の部分には同一又は類似の符号を付している。   Next, embodiments of the present invention will be described with reference to the drawings. In the following description of the drawings, the same or similar parts are denoted by the same or similar reference numerals.

本発明の最良の実施の形態において、図2、図9及び図10のシーケンス図は、UML(Unified Modeling Language)に従って記載されている。具体的には、AオブジェクトからBオブジェクトへのメソッド呼び出しが同期メッセージである場合、同期メッセージは、図9のS101の様な三角を塗りつぶしたの実線矢印で表す。またこのメソッド呼び出しに対する戻り値は、図9のS127の様に点線矢印で表す。一方、AオブジェクトからBオブジェクトへのメソッドの呼び出しが非同期メッセージである場合、図9のS104の様な塗りつぶさない実線矢印で表す。またここで、非同期メッセージとは、呼び出し側が処理の完了を待たされずに、呼び出した処理が行われるメッセージである。   In the best mode of the present invention, the sequence diagrams of FIGS. 2, 9 and 10 are described in accordance with UML (Unified Modeling Language). Specifically, when the method call from the A object to the B object is a synchronous message, the synchronous message is represented by a solid line arrow filled with a triangle like S101 in FIG. Also, the return value for this method call is represented by a dotted arrow as in S127 of FIG. On the other hand, when the method call from the A object to the B object is an asynchronous message, it is represented by a solid line arrow as in S104 of FIG. Here, the asynchronous message is a message in which the called process is performed without waiting for the caller to complete the process.

(最良の実施の形態)
(情報処理システム)
図1を参照して、本発明の最良の実施の形態に係る情報処理システム4の概要を説明する。本発明の最良の実施の形態に係る情報処理システム4は、クライアントである情報処理端末1とサーバである情報処理装置2を備える。情報処理端末1は、GUIコンテナを備えており、情報処理装置2は情報処理端末1のGUIを制御するリモートユーザアクションクラスを備えたJ2EEコンテナを有する。
(Best Embodiment)
(Information processing system)
With reference to FIG. 1, an outline of an information processing system 4 according to the preferred embodiment of the present invention will be described. An information processing system 4 according to the best mode of the present invention includes an information processing terminal 1 as a client and an information processing apparatus 2 as a server. The information processing terminal 1 includes a GUI container, and the information processing apparatus 2 includes a J2EE container including a remote user action class that controls the GUI of the information processing terminal 1.

情報処理端末1において、ユーザによる入力装置の操作によって、GUIコンテナのフィールドに対する入力イベントが発生すると、情報処理装置2は、情報処理端末1から入力イベントを受信し、GUIコンテナのフィールドデータを取得する。更に、情報処理装置2は、情報処理端末1のGUIオブジェクトのスタブを有しており、このスタブを利用して取得したフィールドデータに基づいてビジネスロジックを実行し、その結果得られた新たなフィールドデータを、情報処理端末1にセットする。   In the information processing terminal 1, when an input event for the field of the GUI container occurs due to the operation of the input device by the user, the information processing device 2 receives the input event from the information processing terminal 1 and acquires the field data of the GUI container. . Furthermore, the information processing apparatus 2 has a stub for the GUI object of the information processing terminal 1, executes business logic based on the field data acquired using the stub, and obtains a new field obtained as a result. Data is set in the information processing terminal 1.

この様に、本発明の最良の実施の形態に係る情報処理システム4においては、情報処理端末1上のGUIオブジェクトで発生した入力イベントをトリガーとして、サーバ上のGUIオブジェクトのスタブのメソッドを実行ことにより、情報処理装置2でユーザアクションを実行し、その戻り値のデータを情報処理端末1のGUIオブジェクトに反映することができる。   As described above, in the information processing system 4 according to the preferred embodiment of the present invention, the stub method of the GUI object on the server is executed using the input event generated in the GUI object on the information processing terminal 1 as a trigger. Thus, the user action can be executed by the information processing apparatus 2 and the data of the return value can be reflected in the GUI object of the information processing terminal 1.

次に、図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オブジェクトスタブとが関連づけられているオブジェクトである。   Next, referring to FIG. 2, in the information processing system 4 according to the preferred embodiment of the present invention, an action event is generated for the GUI of the information processing terminal 1, and as a return value for the generated action event, A case where a command for executing a GUI object is newly acquired will be described. In FIG. 2, the GUI object unit 21, the action management unit 34, and the GUI stub management unit 33 are included in the information processing apparatus 2. The GUI object unit 21 manages a GUI object displayed on the information processing terminal 1, receives an input event from the information processing terminal 1, transmits the processing result to the information processing terminal 1, displays the screen, and inputs An object that converts events into action events. The action management unit 34 is an object in which a user action received by the GUI object unit 21 is associated with an action ID for identifying the user action. The GUI stub management unit 33 is an object in which a GUI object ID that identifies a GUI object managed by the GUI object unit 21 is associated with a GUI object stub that is a stub of the GUI object.

まず、情報処理端末1において、情報処理装置2の命令に従って情報処理端末1にGUI画面が表示され、このGUI画面に対して入力イベントが発生される。   First, in the information processing terminal 1, a GUI screen is displayed on the information processing terminal 1 in accordance with a command from the information processing apparatus 2, and an input event is generated on the GUI screen.

次に、ステップS1において、情報処理装置2のGUIオブジェクト部21において、情報処理端末1の入力部12から入力イベントが受信されると、入力イベントをアクションイベントに変換してアクション管理部34のメソッドが呼び出される。   Next, when an input event is received from the input unit 12 of the information processing terminal 1 in the GUI object unit 21 of the information processing apparatus 2 in step S1, the input event is converted into an action event and the method of the action management unit 34 is performed. Is called.

ステップS2において、アクション管理部34は、アクションイベントが発生したGUIオブジェクトのスタブメソッドがGUIスタブ管理部33に対して呼び出される。GUIスタブ管理部33は、スタブメソッドが呼び出されると、このスタブメソッドを実行する。このとき、GUIオブジェクト部21から受信されたアクションイベントに基づいてスタブメソッドが実行される。   In step S <b> 2, the action management unit 34 calls the GUI stub management unit 33 for the stub method of the GUI object in which the action event has occurred. When the stub method is called, the GUI stub management unit 33 executes the stub method. At this time, the stub method is executed based on the action event received from the GUI object unit 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に送信する。   When a command for newly executing a GUI object is acquired as a return value of this stub method, the GUI stub management unit 33 calls a method of the GUI object with respect to the GUI object unit 21 in step S3. When a method is called from the GUI stub management unit 33, the GUI object unit 21 executes the method in the GUI object unit 21 to display the GUI screen on the screen display unit 11 of the information processing terminal 1 and from the input unit 12. Get input event of. The GUI object unit 21 executes the GUI object based on the input event to generate return data, and transmits the return data to the GUI stub management unit 33 in step S4 as a return value of the GUI object method call in step S3.

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に受信したデータを表示させる。   When return data, which is a result of newly executing a GUI object, is transmitted from the GUI object unit 21, the GUI stub management unit 33 executes processing based on the return data. When an instruction to execute a new GUI object is acquired as a return value of the processing, the GUI object method is called again with respect to the GUI object unit 21. On the other hand, if the return value does not include an instruction to execute a new GUI object, in step S5, the return value in the GUI stub management unit 33 is sent to the action management unit 34 as the return value of the stub method call in step S2. return. When the action management unit 34 receives the return data of the stub method call from the GUI stub management unit 33, the action management unit 34 transmits the received data to the GUI object unit 21 as a return value for the action execution in step S1. The GUI object unit 21 displays the received data on the screen display unit 11 of the information processing terminal 1.

次に、図3を参照して、本発明の最良の実施の形態に係る情報処理システム10を詳細に説明する。   Next, the information processing system 10 according to the preferred embodiment of the present invention will be described in detail with reference to FIG.

本発明の最良の実施の形態に係る情報処理システム4は、クライアントである情報処理端末1とサーバである情報処理装置2を備え、情報処理端末1と情報処理装置2は、通信ネットワーク5を介して相互に接続されている。通信ネットワーク5は、インターネットやLANなどの相互通信可能なネットワークである。   An information processing system 4 according to the best mode of the present invention includes an information processing terminal 1 that is a client and an information processing device 2 that is a server. The information processing terminal 1 and the information processing device 2 are connected via a communication network 5. Are connected to each other. The communication network 5 is a network capable of mutual communication such as the Internet or a LAN.

図4に示すように、本発明の最良の実施の形態に係る情報処理装置2は、中央処理制御装置101、ROM(Read Only Memory)102、RAM(Random Access Memory)103及び入出力インタフェース109が、バス110を介して接続されている。入出力インタフェース109には、入力装置104、表示装置105、通信制御装置106、記憶装置107及びリムーバブルディスク108が接続されている。   As shown in FIG. 4, the information processing apparatus 2 according to the preferred embodiment of the present invention includes a central processing control device 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, and an input / output interface 109. Are connected via a bus 110. An input device 104, a display device 105, a communication control device 106, a storage device 107, and a removable disk 108 are connected to the input / output interface 109.

中央処理制御装置101は、入力装置104からの入力信号に基づいてROM102から情報処理装置2を起動するためのブートプログラムを読み出して実行し、更に記憶装置107に記憶されたオペレーティングシステムを読み出す。更に中央処理制御装置101は、入力装置104や通信制御装置106などの入力信号に基づいて、各種装置の制御を行ったり、RAM103や記憶装置107などに記憶されたプログラム及びデータを読み出してRAM103にロードするとともに、RAM103から読み出されたプログラムのコマンドに基づいて、データの計算又は加工など、後述する一連の処理を実現する処理装置である。   The central processing control device 101 reads out and executes a boot program for starting up the information processing device 2 from the ROM 102 based on an input signal from the input device 104, and further reads out an operating system stored in the storage device 107. Further, the central processing control device 101 controls various devices based on input signals from the input device 104, the communication control device 106, etc., and reads programs and data stored in the RAM 103, the storage device 107, etc. into the RAM 103. A processing device that loads and implements a series of processes to be described later, such as data calculation or processing, based on a program command read from the RAM 103.

入力装置104は、操作者が各種の操作を入力するキーボード、マウスなどの入力デバイスにより構成されており、操作者の操作に基づいて入力信号を作成し、入出力インタフェース109及びバス110を介して中央処理制御装置101に送信される。表示装置105は、CRT(Cathode Ray Tube)ディスプレイや液晶ディスプレイなどであり、中央処理制御装置101からバス110及び入出力インタフェース109を介して表示装置105において表示させる出力信号を受信し、例えば中央処理制御装置101の処理結果などを表示する装置である。通信制御装置106は、LANカードやモデムなどの装置であり、情報処理装置2をインターネットやLANなどの通信ネットワークに接続する装置である。通信制御装置106を介して通信ネットワークと送受信したデータは入力信号又は出力信号として、入出力インタフェース109及びバス110を介して中央処理制御装置101に送受信される。   The input device 104 includes input devices such as a keyboard and a mouse through which an operator inputs various operations. The input device 104 generates an input signal based on the operation of the operator, and inputs via the input / output interface 109 and the bus 110. It is transmitted to the central processing control apparatus 101. The display device 105 is a CRT (Cathode Ray Tube) display, a liquid crystal display, or the like. The display device 105 receives an output signal to be displayed on the display device 105 from the central processing control device 101 via the bus 110 and the input / output interface 109. It is a device that displays the processing result of the control device 101 and the like. The communication control device 106 is a device such as a LAN card or a modem, and is a device that connects the information processing device 2 to a communication network such as the Internet or a LAN. Data transmitted / received to / from the communication network via the communication control device 106 is transmitted / received to / from the central processing control device 101 via the input / output interface 109 and the bus 110 as an input signal or an output signal.

記憶装置107は半導体記憶装置や磁気ディスク装置であって、中央処理制御装置101で実行されるプログラムやデータが記憶されている。リムーバブルディスク108は、光ディスクやフレキシブルディスクのことであり、ディスクドライブによって読み書きされた信号は、入出力インタフェース109及びバス110を介して中央処理制御装置101に送受信される。   The storage device 107 is a semiconductor storage device or a magnetic disk device, and stores programs and data executed by the central processing control device 101. The removable disk 108 is an optical disk or a flexible disk, and signals read / written by the disk drive are transmitted / received to / from the central processing control apparatus 101 via the input / output interface 109 and the bus 110.

本発明の最良の実施の形態に係る情報処理装置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に記憶される。   A server information processing program is stored in the storage device 107 of the information processing device 2 according to the preferred embodiment of the present invention, and the server information processing program is read and executed by the central processing control device 101 of the information processing device 2. Thus, the GUI execution module (GUI execution unit) 20 and the business logic execution module (business logic execution unit) 30 are mounted on the information processing apparatus 2. The GUI execution module 20 includes a GUI object unit 21, a GUI method execution unit 22, a GUI object management unit 23, an action event reception unit 24, a GUI action execution unit 25, and a communication object management unit 26. The business logic execution module 30 includes an action thread unit 31, a stub method execution unit 32, a GUI stub management unit 33, an action management unit 34, an action execution unit 35, and a business logic thread management unit 36. Data stored in each part of the GUI execution module 20 and the business logic execution module 30 and work data generated when the method is executed are stored in the storage device 107.

また、情報処理端末1も情報処理装置2と同様のハードウェア構成を備える。情報処理端末1の記憶装置には、クライアント情報処理プログラムが記憶され、クライアント情報処理プログラムが情報処理端末1の中央処理制御装置に読み込まれ実行されることによって、GUI表示モジュール10が情報処理端末1に実装される。GUI表示モジュール10は、画面表示部11、入力部12及びリクエスト代理部13を備える。GUI表示モジュール10の各部おいて記憶されるデータや、メソッドの実行時に発生するワークデータは情報処理端末1の記憶装置に記憶される。   The information processing terminal 1 also has the same hardware configuration as the information processing apparatus 2. A client information processing program is stored in the storage device of the information processing terminal 1, and the GUI display module 10 is read by the central processing control device of the information processing terminal 1 to be executed by the GUI display module 10. To be implemented. The GUI display module 10 includes a screen display unit 11, an input unit 12, and a request proxy unit 13. Data stored in each part of the GUI display module 10 and work data generated when the method is executed are stored in the storage device of the information processing terminal 1.

(情報処理端末)
図3及び図5を参照して、本発明の最良の実施の形態に係る情報処理端末1について詳述する。
(Information processing terminal)
With reference to FIG.3 and FIG.5, the information processing terminal 1 which concerns on the best embodiment of this invention is explained in full detail.

情報処理端末1は、GUI表示モジュール10を備える。GUI表示モジュール10は、画面表示部11、入力部12及びリクエスト代理部13を備える。   The information processing terminal 1 includes a GUI display module 10. The GUI display module 10 includes a screen display unit 11, an input unit 12, and a request proxy unit 13.

画面表示部11は、情報処理装置1のGUIオブジェクト部21からの命令に従って、GUI画面を表示装置に表示する。入力部12は、入力装置からの入力イベントを、情報処理装置1のGUIオブジェクト部21に送信する。   The screen display unit 11 displays a GUI screen on the display device in accordance with a command from the GUI object unit 21 of the information processing apparatus 1. The input unit 12 transmits an input event from the input device to the GUI object unit 21 of the information processing device 1.

リクエスト代理部13は、図5(c)に示すようにpostメソッドを備える。postメソッドは、引数としてビジネスロジック実行モジュールアドレス及びGUIスレッドIDを設定して、情報処理装置2のアクションスレッド部31のrunを呼び出す処理をする。このリクエスト代理部13は、情報処理装置2のGUI実行モジュール20のアクションイベント受信部24からの呼び出しに応じて、情報処理装置2のビジネスロジック実行モジュール30のビジネスロジックを呼び出す。この動作により、ビジネスロジックが、SSL認証などの場合で、特定の端末からの呼び出しにしか応じない場合でも対応することができる。   The request proxy unit 13 includes a post method as shown in FIG. The post method sets a business logic execution module address and a GUI thread ID as arguments, and performs a process of calling “run” of the action thread unit 31 of the information processing apparatus 2. The request proxy unit 13 calls the business logic of the business logic execution module 30 of the information processing device 2 in response to a call from the action event reception unit 24 of the GUI execution module 20 of the information processing device 2. With this operation, it is possible to cope with a case where the business logic responds only to a call from a specific terminal in the case of SSL authentication or the like.

(情報処理装置)
本発明の最良の実施の形態に係る情報処理装置2は、GUI実行モジュール(GUI実行部)20と、ビジネスロジック実行モジュール(ビジネスロジック実行部)30とを備える。
(Information processing device)
The information processing apparatus 2 according to the best embodiment of the present invention includes a GUI execution module (GUI execution unit) 20 and a business logic execution module (business logic execution unit) 30.

図3及び図6を参照して、本発明の最良の実施の形態に係る情報処理装置2のGUI実行モジュール20について詳述する。   With reference to FIG. 3 and FIG. 6, the GUI execution module 20 of the information processing apparatus 2 according to the preferred embodiment of the present invention will be described in detail.

GUI実行モジュール20は、GUIオブジェクト部21、GUIメソッド実行部22、GUIオブジェクト管理部23、アクションイベント受信部24、GUIアクション実行部25及び通信オブジェクト管理部26を備える。   The GUI execution module 20 includes a GUI object unit 21, a GUI method execution unit 22, a GUI object management unit 23, an action event reception unit 24, a GUI action execution unit 25, and a communication object management unit 26.

GUIオブジェクト部21は、図6(a)に示すように、GUIの部品であるGUIオブジェクトと、そのGUIオブジェクトを操作することが可能なGUI操作メソッドを持つ。更にGUIオブジェクト部21は、情報処理端末1の画面表示部11にGUI画面を表示させる命令を出力するとともに、情報処理端末1の入力部12から入力イベントを受信し、受信した入力イベントに基づいてGUI操作メソッドを実行してアクションイベントを生成し、アクションID及びGUIオブジェクトをアクションイベント受信部24に入力する。   As shown in FIG. 6A, the GUI object unit 21 has a GUI object that is a GUI component, and a GUI operation method capable of operating the GUI object. Further, the GUI object unit 21 outputs a command to display the GUI screen on the screen display unit 11 of the information processing terminal 1, receives an input event from the input unit 12 of the information processing terminal 1, and based on the received input event The GUI operation method is executed to generate an action event, and the action ID and GUI object are input to the action event receiving unit 24.

GUIメソッド実行部22は、図6(b)に示すように、invokeメソッドを備える。invokeメソッドは、引数としてMethodCallパケット(メソッドコールパケット)が設定されて呼び出され、GUIオブジェクトのGUI操作メソッドを呼び出す。   As shown in FIG. 6B, the GUI method execution unit 22 includes an invoke method. The invoke method is called with a MethodCall packet (method call packet) set as an argument, and calls the GUI operation method of the GUI object.

GUIオブジェクト管理部23は、GUIオブジェクトとGUIオブジェクトIDを対にして管理する。GUIオブジェクト管理部23は、図6(c)に示すように、getObjectIDメソッドと、getObjectメソッドを備える。getObjectIDメソッドは、GUIオブジェクトからGUIオブジェクトIDを検索して、戻り値としてGUIオブジェクトIDを返す。getObjectメソッドは、GUIオブジェクトIDからGUIオブジェクトを検索して、戻り値としてGUIオブジェクトを返す。   The GUI object management unit 23 manages a GUI object and a GUI object ID as a pair. As shown in FIG. 6C, the GUI object management unit 23 includes a getObjectID method and a getObject method. The getObjectID method retrieves a GUI object ID from the GUI object and returns a GUI object ID as a return value. The getObject method searches for a GUI object from the GUI object ID, and returns a GUI object as a return value.

アクションイベント受信部24は、図6(d)に示すように、receiveEventメソッドを備える。receiveEventメソッドは、引数としてアクションID及びGUIオブジェクトが設定されて、GUIオブジェクト部21から呼び出される。receiveEventメソッドは、通信オブジェクト管理部26を生成し、通信オブジェクト管理部26のstartメソッドを呼び出し、GUIオブジェクト部21に、アクションリターンデータを戻り値として返す。更にreceiveEventメソッドは、GUIアクション実行部25を生成し、GUIアクション実行部25のrunActionを呼び出す。   The action event receiving unit 24 includes a receiveEvent method as shown in FIG. The receiveEvent method is called from the GUI object unit 21 with an action ID and a GUI object set as arguments. The receiveEvent method generates the communication object management unit 26, calls the start method of the communication object management unit 26, and returns action return data as a return value to the GUI object unit 21. Furthermore, the receiveEvent method generates a GUI action execution unit 25 and calls runAction of the GUI action execution unit 25.

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メソッドの引数に渡す。   The GUI action execution unit 25 performs initial processing for sending an action event to the action execution unit 35 as a final destination. The GUI action execution unit 25 includes a runAction method as shown in FIG. The runAction method is called with a GUI thread ID, action ID, and GUI object set, and returns action return data as a return value. The ruAction method of the GUI action execution unit 25 generates an ActionCall packet (action call packet), calls the exchangePacket method of the communication object management unit 26, and receives the received packet as a return value. If the received packet is an ActionReturn packet, the runAction method returns action return data. On the other hand, if the received packet is a MethodCall packet (method call packet), the runAction method calls the invoke method of the GUI method execution unit 22 and passes the return value to the argument of the exchangePacket method of the communication object management unit 26 again.

通信オブジェクト管理部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を戻り値として返す。   As shown in FIG. 6 (f), the communication object management unit 26 uses a GUI thread ID as a key, and records a pair of an integer with an initial value 0 of ACTION_COUNT (action count variable) and an initial value FALSE flag INIT. Is provided. The GUI thread ID includes an address that uniquely represents the GUI execution module and an ID that uniquely represents the GUI thread ID. The communication object management unit 26 includes a getGuiThreadID method, an isNewThread method, a start method, and an exchangePacket method. The getGuiThreadID method acquires the GUI thread ID and returns it as a return value. The start method is a thread that adds a record with the GUI thread ID as a key to the communication object management unit 26 and executes a user action. The isNewThread method sets a GUI thread ID as an argument, and returns FALSE as a return value if there is a record using the GUI thread ID as a key.

exchangePacketメソッドは、引数としてGUIスレッドID及びパケットが設定され。後述する図11のフローチャートに従って、2つのスレッド間でパケットを交換する。Aスレッドから呼び出されたexchangePacketメソッドの引数としてアクションリターンパケットを受け取ると、通信オブジェクト管理部26は、Bスレッドから呼び出されたexchangePacketメソッドの戻り値としてアクションリターンパケットを返し、アクションカウント変数をデクリメントする。アクションカウントが0になった場合、通信オブジェクト管理部26は、Aスレッドから呼び出されたexchangePacketメソッドの戻り値としてnullを返す。これ以外の場合、通信オブジェクト管理部26は、AスレッドからAパケットを引数としてexchangePacketメソッドが呼び出された場合、以前にBスレッドから呼び出されたexchangePacketの戻り値としてAパケットを返し、Aスレッドから呼び出されたexchangePacketメソッドは待機する。   In the exchangePacket method, a GUI thread ID and a packet are set as arguments. Packets are exchanged between two threads according to the flowchart of FIG. When receiving an action return packet as an argument of the exchangePacket method called from the A thread, the communication object management unit 26 returns an action return packet as a return value of the exchangePacket method called from the B thread, and decrements the action count variable. When the action count becomes 0, the communication object management unit 26 returns null as a return value of the exchangePacket method called from the A thread. In other cases, when the exchangePacket method is called from the A thread with the A packet as an argument, the communication object management unit 26 returns the A packet as a return value of the exchangePacket previously called from the B thread and is called from the A thread. The received exchangePacket method waits.

ここで、通信オブジェクト管理部26が扱うパケットは、図7の様なクラス構成を備える。パケットは、送信パケットと受信パケットを含む。送信パケットは、クライアントスレッドIDを含み、スレッドスタートパケットと、アクションID及びGUIオブジェクトIDを含むアクションコールパケットと、GUIオブジェクトリターンデータを含むメソッドリターンパケットを含む。受信パケットは、GUIオブジェクトIDとパラメタを含むメソッドコールパケットと、アクションリターンパケットを含むアクションリターンパケットを含む。   Here, the packet handled by the communication object management unit 26 has a class configuration as shown in FIG. The packet includes a transmission packet and a reception packet. The transmission packet includes a client thread ID, and includes a thread start packet, an action call packet including an action ID and a GUI object ID, and a method return packet including GUI object return data. The received packet includes a method call packet including a GUI object ID and a parameter, and an action return packet including an action return packet.

次に、図3及び図8を参照して、本発明の最良の実施の形態に係る情報処理装置2のビジネスロジック実行モジュール30について詳述する。   Next, the business logic execution module 30 of the information processing apparatus 2 according to the preferred embodiment of the present invention will be described in detail with reference to FIG. 3 and FIG.

ビジネスロジック実行モジュール30は、アクションスレッド部31、スタブメソッド実行部32、GUIスタブ管理部33、アクション管理部34、アクション実行部35及びビジネスロジックスレッド管理部36を備える。   The business logic execution module 30 includes an action thread unit 31, a stub method execution unit 32, a GUI stub management unit 33, an action management unit 34, an action execution unit 35, and a business logic thread management unit 36.

アクションスレッド部31は、図8(a)に示すように、runメソッドを備える。runメソッドは、引数としてGUIスレッドIDが設定されて呼び出される。runメソッドは、通信オブジェクト管理部26のexchangePacketメソッドを用いて、アクションを実行するためのActionCallパケットを受信し、アクション実行部35を生成してアクション実行部35のinvokeActionを呼び出し、その戻り値を再びexchangePacketメソッドの引数として、通信オブジェクト管理部26に渡す。   The action thread unit 31 includes a run method as shown in FIG. The run method is called with a GUI thread ID set as an argument. The run method receives an ActionCall packet for executing an action by using the exchangePacket method of the communication object management unit 26, generates an action execution unit 35, calls the invokeAction of the action execution unit 35, and returns the return value again. Passed to the communication object management unit 26 as an argument of the exchangePacket method.

スタブメソッド実行部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パケットが返ってくるまで、同様の処理を繰り返す。   As shown in FIG. 8B, the stub method execution unit 32 includes an invokeMethod method. The invokeMethod method is called with a GUI object ID and parameters set. The invokeMethod method passes a MethodCall packet by the exchangePacket method of the communication object management unit 26 in accordance with the GUI stub call. When the MethodReturn packet is returned as the return value of the exchangePacket method, the invokeMethod method returns GUI object return data as the return value of the GUI stub. When the ActionCall packet is returned, the invokeMethod method newly creates the action execution unit 35, calls the invokeAction of the action execution unit 35, and passes the return value again as an argument of the exchangePacket of the communication object management unit 26. The invokeMethod method repeats the same processing until a MethodReturn packet is returned as the return value of exchangePacket.

GUIスタブ管理部33は、GUIスタブを管理し、図8(c)に示すように、getObjectStubメソッドを備える。getObjectStubメソッドは、引数としてオブジェクトIDが設定されて呼び出され、オブジェクトIDを元にGUIオブジェクトスタブを生成し、戻り値としてGUIオブジェクトスタブを返す。ここでGUIオブジェクトスタブは、図8(g)に示すように、GUIオブジェクトIDに対応する。   The GUI stub management unit 33 manages the GUI stub and includes a getObjectStub method as shown in FIG. The getObjectStub method is called with an object ID set as an argument, generates a GUI object stub based on the object ID, and returns a GUI object stub as a return value. Here, the GUI object stub corresponds to the GUI object ID as shown in FIG.

アクション管理部34は、ユーザアクションを管理し、図8(d)に示すように、getActionメソッドを備える。getActionメソッドは、引数としてアクションIDが設定されて呼び出され、アクションIDを元にユーザアクションを検索して、戻り値としてユーザアクションを返す。   The action management unit 34 manages user actions and includes a getAction method as shown in FIG. The getAction method is called with an action ID set as an argument, searches for a user action based on the action ID, and returns a user action as a return value.

アクション実行部35は、図8(e)に示すように、invokeActionメソッドを備える。invokeActionメソッドは、引数としてActionCallパケットが設定されて呼び出され、アクション管理部34からユーザアクションを取得し、GUIスタブ管理部33から取得したGUIオブジェクトスタブを引数として、ユーザアクションを呼び出す。   The action execution unit 35 includes an invokeAction method as shown in FIG. The invokeAction method is called by setting an ActionCall packet as an argument, acquires a user action from the action management unit 34, and calls the user action using the GUI object stub acquired from the GUI stub management unit 33 as an argument.

ビジネスロジックスレッド管理部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をキーにレコードを検索し、検索されたレコードを削除する。   The business logic thread management unit 36 has three methods: a setGuiThreadID method, a getGuiThreadID method, and a removeGuiThreadID method. The setGuiThreadID method is called with a GUI thread ID set as an argument, acquires a business logic thread ID using a thread ID acquisition unit, and stores a pair of GUI thread ID and business logic thread ID as one record. The getGuiThreadID method acquires a business logic thread ID using a thread ID acquisition unit, searches for a GUI thread ID using the business logic thread ID as a key, and returns a GUI thread ID. The removeGuiThreadID method is called with a GUI thread ID set as an argument, searches for a record using the GUI thread ID as a key, and deletes the searched record.

(情報処理方法)
次に、図9乃及び図10を参照して、本発明の最良の実施の形態に係る情報処理方法を説明する。
(Information processing method)
Next, an information processing method according to the best embodiment of the present invention will be described with reference to FIGS.

まず、図9を参照して、ユーザアクションを実行するまでの処理を説明する。   First, with reference to FIG. 9, a process until a user action is executed will be described.

GUIオブジェクト部21は、情報処理端末1のGUI表示モジュール10の入力部12から入力イベントを受信すると、入力イベントからユーザアクションに関するアクションID及びGUIオブジェクトを取得する。GUIオブジェクト部21は、ステップS101において、アクションイベント受信部24のreceiveEventメソッドを、引数としてアクションID及びGUIオブジェクトを設定して呼び出す。   When the GUI object unit 21 receives an input event from the input unit 12 of the GUI display module 10 of the information processing terminal 1, the GUI object unit 21 acquires an action ID and a GUI object related to the user action from the input event. In step S101, the GUI object unit 21 calls the receiveEvent method of the action event reception unit 24 with an action ID and a GUI object as arguments.

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を設定して呼び出す。   When the receiveEvent method is called from the GUI object unit 21, in step S102, the action event receiving unit 24 calls the getGuiThreadID method of the communication object management unit 26 without setting an argument in the receiveEvent method, and returns a GUI thread ID as a return value. To get. Furthermore, the action event reception unit 24 calls the isNewThread method of the communication object management unit 26 with the GUI thread ID set as an argument. The action event reception unit 24 obtains a Boolean value TRUE as a return value, and confirms that a record having the GUI thread ID as a key exists in the communication object management unit 26. After acquiring the Boolean value TRUE, the action event receiving unit 24 calls the start method of the communication object management unit 26 with the GUI thread ID as an argument.

通信オブジェクト管理部26は、startメソッドの中で、GUIスレッドIDにACTION_COUNT及びINITを対応付けたレコードを作成して各変数は初期化され、ステップS103において、ステップS102に対する応答としてGUIスレッドIDをアクションイベント受信部に返す。   In the start method, the communication object management unit 26 creates a record in which ACTION_COUNT and INIT are associated with the GUI thread ID to initialize each variable. In step S103, the communication object management unit 26 sets the GUI thread ID as a response to step S102. Return to the event receiver.

アクションイベント受信部24は、receiveEventメソッドの中で、ステップS104において、情報処理端末1のリクエスト代理部13のpostを、引数としてビジネスロジック実行モジュールアドレス及びGUIスレッドIDを設定して、非同期で呼び出す。   In the receiveEvent method, the action event receiving unit 24 asynchronously calls the post of the request proxy unit 13 of the information processing terminal 1 by setting the business logic execution module address and the GUI thread ID as arguments in step S104.

情報処理端末1のリクエスト代理部13は、postメソッドが呼び出されると、postメソッドの中で、引数であるビジネスロジック実行モジュールアドレスを元にビジネスロジック実行モジュール30を探し出し、ステップS105において、アクションスレッド部31のrunメソッドを、引数としてGUIスレッドIDを設定して呼び出す。   When the post method is called, the request proxy unit 13 of the information processing terminal 1 searches for the business logic execution module 30 based on the business logic execution module address that is an argument in the post method. In step S105, the action thread unit The 31 run method is called with the GUI thread ID set as an argument.

アクションスレッド部31は、runメソッドの中で、ビジネスロジックスレッド管理部36のsetGuiThreadIDメソッドを、引数としてGUIスレッドIDを設定して呼び出し、応答を得る。このとき、ビジネスロジックスレッド管理部36のsetGuiThreadIDメソッドは、スレッドID取得手段を用いてビジネスロジックスレッドIDを取得し、GUIスレッドIDとビジネスロジックスレッドIDとを対応させて一つのレコードとして記憶する。   In the run method, the action thread unit 31 calls the setGuiThreadID method of the business logic thread management unit 36 by setting the GUI thread ID as an argument, and obtains a response. At this time, the setGuiThreadID method of the business logic thread management unit 36 acquires the business logic thread ID using the thread ID acquisition means, and stores the GUI thread ID and the business logic thread ID as one record in association with each other.

アクションスレッド部31は、runメソッドの中で、ビジネスロジックスレッド管理部36のsetGuiThreadIDメソッドの応答を得ると、ステップS107において、GUIスレッドIDのアドレス部分を元に、通信オブジェクト管理部26を検索し、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びnullを設定して呼び出す。更に、通信オブジェクト管理部26は、exchangePacketメソッドの中で変数ACTION_COUNTを0に設定して待機する。   When the action thread unit 31 obtains a response of the setGuiThreadID method of the business logic thread management unit 36 in the run method, in step S107, the action thread unit 31 searches the communication object management unit 26 based on the address part of the GUI thread ID. The exchangePacket method of the communication object management unit 26 is called with the GUI thread ID and null set as arguments. Further, the communication object management unit 26 sets the variable ACTION_COUNT to 0 in the exchangePacket method and waits.

一方、アクションイベント受信部24は、ステップS106において、receiveEventメソッドの中でGUIアクション実行部25を生成し、GUIアクション実行部25のrunActionメソッドを、引数としてGUIスレッドID、アクションID及びGUIオブジェクトを設定して呼び出す。   On the other hand, in step S106, the action event receiving unit 24 generates the GUI action execution unit 25 in the receiveEvent method, sets the runAction method of the GUI action execution unit 25, and sets the GUI thread ID, action ID, and GUI object as arguments. Then call.

GUIアクション実行部25は、runActionメソッドの中で、GUIオブジェクト管理部23のgetObjectIDメソッドを、引数としてGUIオブジェクトを設定して呼び出し、戻り値としてGUIオブジェクトIDを取得する。更に、GUIアクション実行部25は、GUIスレッドID、アクションID及びGUIオブジェクトIDを含むActionCallパケットを生成し、ステップS108において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びActionCallパケットを設定して呼び出す。   In the runAction method, the GUI action execution unit 25 calls the getObjectID method of the GUI object management unit 23 by setting the GUI object as an argument, and acquires the GUI object ID as a return value. Further, the GUI action execution unit 25 generates an ActionCall packet including a GUI thread ID, an action ID, and a GUI object ID. In step S108, the exchange packet method of the communication object management unit 26 is used as an argument with the GUI thread ID and the ActionCall packet. Set and call.

通信オブジェクト管理部26は、exchangePacketメソッドで引数としてGUIスレッドID及びActionCallパケットが渡された場合、変数ACTION_COUNTを一つインクリメントして、ステップS109において、ステップS107からの呼び出しの戻り値として、ActionCallパケットをアクションスレッド部31に渡す。   When the GUI thread ID and the ActionCall packet are passed as arguments in the exchangePacket method, the communication object management unit 26 increments the variable ACTION_COUNT by one, and in Step S109, sets the ActionCall packet as the return value of the call from Step S107. It is passed to the action thread unit 31.

アクションスレッド部31は、runメソッドの中で、exchangePacketメソッドの戻り値としてActionCalllパケットを受信すると、アクション実行部35を生成し、ステップS110において、アクション実行部35のinvokeActionメソッドを、引数としてActionCallパケットを設定して呼び出す。   When the action thread unit 31 receives an ActionCalll packet as a return value of the exchangePacket method in the run method, the action thread unit 31 generates an action execution unit 35. In step S110, the action call unit 31 uses the invokeAction method of the action execution unit 35 as an argument. Set and call.

アクション実行部35は、invokeActionメソッドの中で、ActionCallパケットからアクションIDとGUIオブジェクトIDを取得し、アクション管理部34のgetActionメソッドを、引数としてアクションIDを設定して呼び出し、ユーザアクションを取得する。更にアクション実行部35は、invokeActionメソッドの中で、GUIスタブ管理部33のgetObjectStubメソッドを、引数としてGUIオブジェクトIDを設定して呼び出してGUIスタブを取得する。ここで、アクション実行部35は、invokeActionメソッドの中で、GUIスタブを用いてユーザアクションを実行する。   The action execution unit 35 acquires the action ID and GUI object ID from the ActionCall packet in the invokeAction method, calls the getAction method of the action management unit 34 with the action ID set as an argument, and acquires the user action. Furthermore, the action execution unit 35 acquires the GUI stub by calling the getObjectStub method of the GUI stub management unit 33 with the GUI object ID set as an argument in the invokeAction method. Here, the action execution unit 35 executes a user action using a GUI stub in the invokeAction method.

図9を参照して、ユーザアクション内からGUIオブジェクトを操作する処理を説明する。   With reference to FIG. 9, a process for operating a GUI object from within a user action will be described.

アクション実行部35のinvokeActionメソッドの中で実行中のユーザアクションからGUIスタブのメソッドを呼び出した場合、GUIスタブは、ステップS111において、スタブメソッド実行部32のinovokeMethodメソッドを、引数としてGUIオブジェクトID及びパラメタを設定して呼び出す。ここで「パラメタ」は、実行中のユーザアクションから呼び出したメソッドに使用されるパラメタである。   When the GUI stub method is called from the user action being executed in the invokeAction method of the action execution unit 35, the GUI stub, in step S111, uses the invokeMethod method of the stub method execution unit 32 as a parameter with the GUI object ID and parameters. Set and call. Here, the “parameter” is a parameter used for a method called from the user action being executed.

スタブメソッド実行部32は、invokeMethodメソッドの中で、ビジネスロジックスレッド管理部36のgetGuiThreadIDメソッドを、引数を設定しいないで呼び出し、戻り値としてGUIスレッドIDを取得する。更にスタブメソッド実行部32は、invokeMethodメソッドの中で、GUIオブジェクトID及びパラメタを含むMethodCallパケットを作成し、GUIスレッドIDのアドレス部分を元に通信オブジェクト管理部26を検索する。スタブメソッド実行部32は、ステップS112において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びMethodCallパケットを設定して呼び出す。   The stub method execution unit 32 calls the getGuiThreadID method of the business logic thread management unit 36 in the invokeMethod method without setting an argument, and acquires the GUI thread ID as a return value. Further, the stub method execution unit 32 creates a MethodCall packet including a GUI object ID and parameters in the invokeMethod method, and searches the communication object management unit 26 based on the address portion of the GUI thread ID. In step S112, the stub method execution unit 32 calls the exchangePacket method of the communication object management unit 26 by setting the GUI thread ID and the MethodCall packet as arguments.

通信オブジェクト管理部26は、exchangePacketメソッドの中で、ステップS113において、ステップS112において渡されたMethodCallパケットを、ステップS108の呼び出しの戻り値としてGUIアクション実行部25に渡す。   In step S113, the communication object management unit 26 passes the MethodCall packet passed in step S112 to the GUI action execution unit 25 as a return value of the call in step S108 in the exchangePacket method.

GUIアクション実行部25は、runActionメソッドの中で、GUIメソッド実行部22を生成し、ステップS114において、invokeメソッドを、引数としてMethodCallパケットを設定して呼び出す。   The GUI action execution unit 25 generates the GUI method execution unit 22 in the runAction method, and calls the invoke method by setting a MethodCall packet as an argument in step S114.

GUIメソッド実行部22は、invokeメソッドの中で、MethodCallパケットからGUIオブジェクトID及びパラメタを取り出す。GUIメソッド実行部22は、invokeメソッドの中で、GUIオブジェクト管理部23のgetObjectメソッドを、引数としてGUIオブジェクトIDを設定して呼び出し、GUIオブジェクトを取得する。GUIメソッド実行部22は、invokeメソッドの中で、ステップS115において、GUIオブジェクトのGUI操作メソッドを、引数としてパラメタを設定して呼び出す。   The GUI method execution unit 22 extracts the GUI object ID and parameters from the MethodCall packet in the invoke method. The GUI method execution unit 22 calls the getObject method of the GUI object management unit 23 in the invoke method, setting the GUI object ID as an argument, and acquires the GUI object. In the invoke method, the GUI method execution unit 22 calls the GUI operation method of the GUI object by setting parameters as arguments in step S115.

GUIオブジェクト部21は、GUI操作メソッドの中で、引数として設定されたパラメタを元に、情報処理端末1の画面表示部11に表示し、情報処理端末1からGUIオブジェクトリターンデータが入力されると、ステップS116において、その入力をステップS114の戻り値として、GUIメソッド実行部22に渡す。   The GUI object unit 21 displays on the screen display unit 11 of the information processing terminal 1 based on parameters set as arguments in the GUI operation method, and when GUI object return data is input from the information processing terminal 1. In step S116, the input is passed to the GUI method execution unit 22 as a return value in step S114.

GUIメソッド実行部22は、invokeメソッドの中で、GUIオブジェクトリターンデータにGUIオブジェクトが存在した場合、GUIオブジェクト管理部23のgetObjectIDメソッドを呼び出し、GUIオブジェクトリターンデータ内のGUIオブジェクトをGUIオブジェクトIDに書き換える。更にGUIメソッド実行部22は、invokeメソッドの中で、GUIスレッドID、GUIオブジェクトリターンデータを含むMethodReturnパケットを作成し、ステップS117において、ステップS114の戻り値としてMethodReturnパケットをGUIアクション実行部25に渡した後、消滅する。   When the GUI object exists in the GUI object return data in the invoke method, the GUI method execution unit 22 calls the getObjectID method of the GUI object management unit 23 and rewrites the GUI object in the GUI object return data with the GUI object ID. . Further, the GUI method execution unit 22 creates a MethodReturn packet including the GUI thread ID and GUI object return data in the invoke method, and passes the MethodReturn packet to the GUI action execution unit 25 as the return value of step S114 in step S117. Then disappear.

GUIアクション実行部25は、runActionメソッドの中で、MethodReturnパケットを取得すると、ステップS118において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びMethodReturnパケットを設定して呼び出す。   When the GUI action execution unit 25 acquires the MethodReturn packet in the runAction method, in step S118, the GUI action execution unit 25 calls the exchangePacket method of the communication object management unit 26 with the GUI thread ID and the MethodReturn packet as arguments.

通信オブジェクト管理部26は、exchangePacketメソッドの中で、ステップS119において、ステップS112の戻り値としてMethodReturnパケットをスタブメソッド実行部32に渡す。   In step S119, the communication object management unit 26 passes the MethodReturn packet to the stub method execution unit 32 as the return value of step S112 in the exchangePacket method.

スタブメソッド実行部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に渡した後に消滅する。   When the MethodReturn packet is acquired as the return value of the exchangePacket method in the invokeMethod method, the stub method execution unit 32 extracts GUI object return data from the MethodReturn packet. When the GUI object return data includes the GUI object ID in the invokeMethod method, the stub method execution unit 32 calls the getObjectStub method of the GUI stub management unit 33 and acquires the GUI stub corresponding to the GUI object ID. The GUI object ID of the GUI object return data is rewritten to a GUI stub. In the invokeMethod method, the stub method executing unit 32 disappears after passing the GUI object return data to the action executing unit 35 as the return value of the GUI stub method call in Step S111 in Step S120.

更に、図9を参照して、ユーザアクションのリターン処理を説明する。   Furthermore, user action return processing will be described with reference to FIG.

アクション実行部35は、invokeActionメソッドの中でアクションリターンデータとしてGUIオブジェクトリターンデータを取得すると、アクションリターンデータを含むActionReturnパケットを作成し、ステップS121において、ステップS110の戻り値としてアクションスレッド部31にActionReturnパケットを渡した後、消滅する。   When the action execution unit 35 acquires the GUI object return data as the action return data in the invokeAction method, the action execution unit 35 creates an ActionReturn packet including the action return data. In step S121, the action execution unit 35 sends the ActionReturn packet to the action thread unit 31 as the return value. After passing the packet, it disappears.

アクションスレッド部31は、runメソッドの中で、ActionReturnパケットを受信し、ステップS122において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてActionReturnパケットを設定して呼び出す。   The action thread unit 31 receives the ActionReturn packet in the run method, and calls the exchangePacket method of the communication object management unit 26 with the ActionReturn packet as an argument in step S122.

通信オブジェクト管理部26は、exchangePacketメソッドの中で、ActionReturnパケットを渡された場合、ステップS123において、ステップS118の戻り値としてActionReturnパケットをGUIアクション実行部25に渡す。通信オブジェクト管理部26は、exchangePacketメソッドの中で、変数ACTION_COUNTから一つデクリメントする。これによりACTION_COUNTが0になるので、GUIスレッドIDに対応したレコードを削除し、ステップS125において、ステップS122の戻り値としてアクションスレッド部31にnullを渡す。   When the ActionReturn packet is passed in the exchangePacket method, the communication object management unit 26 passes the ActionReturn packet to the GUI action execution unit 25 as a return value of Step S118 in Step S123. The communication object management unit 26 decrements one from the variable ACTION_COUNT in the exchangePacket method. As a result, ACTION_COUNT becomes 0, so the record corresponding to the GUI thread ID is deleted, and null is passed to the action thread unit 31 as the return value of step S122 in step S125.

アクションスレッド部31は、runメソッドの中で、ステップS126において、ビジネスロジックスレッド管理部36のremoveGuiThreadIDメソッドを、引数としてGUIスレッドIDを設定して呼び出し、リクエスト代理部13にステップS105のリターンを返して消滅する。   In step S126, the action thread unit 31 calls the removeGuiThreadID method of the business logic thread management unit 36 with the GUI thread ID set as an argument, and returns the return of step S105 to the request proxy unit 13. Disappear.

GUIアクション実行部25は、runActionメソッドの中で、ActionReturnパケットを受信した場合、ActionReturnパケットからアクションリターンデータを取得し、ステップS124において、ステップS106の戻り値としてアクションイベント受信部24にアクションリターンデータを渡す。   When the action return packet is received in the runAction method, the GUI action execution unit 25 acquires the action return data from the ActionReturn packet. In step S124, the GUI action execution unit 25 sends the action return data to the action event reception unit 24 as the return value of step S106. hand over.

アクションイベント受信部24は、receiveEventメソッドの中で、ステップS127において、ステップS101の戻り値としてアクションリターンデータをGUIオブジェクト部21に渡す。GUIオブジェクト部21は、アクションリターンデータに従って情報処理端末1の画面表示部11に画面表示させる。   The action event receiving unit 24 passes action return data to the GUI object unit 21 as a return value of step S101 in step S127 in the receiveEvent method. The GUI object unit 21 causes the screen display unit 11 of the information processing terminal 1 to display a screen according to the action return data.

次に、図10を参照して、ビジネスロジック実行モジュール30から呼び出されたGUIオブジェクトのメソッドの中からアクションイベントが発生した場合を説明する。   Next, with reference to FIG. 10, a case where an action event occurs from the method of the GUI object called from the business logic execution module 30 will be described.

ステップS201乃至ステップS215までの処理によって、ビジネスロジック実行モジュール30から、GUIオブジェクト部21のGUI操作メソッドが呼び出される。   Through the processing from step S201 to step S215, the GUI operation method of the GUI object unit 21 is called from the business logic execution module 30.

GUIオブジェクト部21は、GUI操作メソッドの中で、引数として設定されたパラメタを元に、情報処理端末1の画面表示部11に表示する。情報処理端末1からGUIオブジェクトリターンデータが入力され、そのGUIオブジェクトリターンデータの中でアクションイベントが発生すると、ステップS201’において、GUIオブジェクト部21のGUI操作メソッドは、アクションイベント受信部24のreceiveEventメソッドを、引数としてアクションID、GUIオブジェクトを設定して呼び出す。   The GUI object unit 21 displays on the screen display unit 11 of the information processing terminal 1 based on parameters set as arguments in the GUI operation method. When GUI object return data is input from the information processing terminal 1 and an action event occurs in the GUI object return data, the GUI operation method of the GUI object unit 21 is the receiveEvent method of the action event receiving unit 24 in step S201 ′. Are set with the action ID and GUI object as arguments.

アクションイベント受信部24は、receiveEventメソッドの中で、通信オブジェクト管理部26のgetGuiThreadIDメソッドを、引数を設定しないで呼び出し、戻り値としてGUIスレッドIDを取得する。アクションイベント受信部24は、receiveEventメソッドの中で、通信オブジェクト管理部26のisNewThreadメソッドを、引数としてGUIスレッドIDを呼び出し、戻り値としてブール値FALSEを取得する。更にアクションイベント受信部24は、ステップS206’において、receiveEventメソッドの中で、GUIアクション実行部25’を作成し、runActionメソッドを、引数としてGUIスレッドID、アクションID及びGUIオブジェクトを設定して呼び出す。   The action event reception unit 24 calls the getGuiThreadID method of the communication object management unit 26 in the receiveEvent method without setting an argument, and acquires the GUI thread ID as a return value. The action event reception unit 24 calls the isNewThread method of the communication object management unit 26 in the receiveEvent method, calls the GUI thread ID as an argument, and acquires the Boolean value FALSE as a return value. Further, in step S206 ', the action event reception unit 24 creates a GUI action execution unit 25' in the receiveEvent method, and calls the runAction method with the GUI thread ID, action ID, and GUI object as arguments.

GUIアクション実行部25’は、runActionメソッドの中で、GUIオブジェクト管理部23のgetObjectIDメソッドを、引数としてGUIオブジェクトを設定して呼び出し、戻り値としてGUIオブジェクトIDを取得する。更に、GUIアクション実行部25’は、runActionメソッドの中で、GUIスレッドID、アクションID及びGUIオブジェクトIDを含むActionCallパケットを作成し、ステップS208’において、通信オブジェクト管理部26のexchangePacketメソッドを、引数としてGUIスレッドID及びActionCallパケットを設定して呼び出す。   In the runAction method, the GUI action execution unit 25 ′ calls the getObjectID method of the GUI object management unit 23 by setting a GUI object as an argument, and acquires a GUI object ID as a return value. Further, the GUI action execution unit 25 ′ creates an ActionCall packet including a GUI thread ID, an action ID, and a GUI object ID in the runAction method. In step S208 ′, the exchangePacket method of the communication object management unit 26 is set as an argument. And set the GUI thread ID and ActionCall packet.

通信オブジェクト管理部26は、exchangePacketメソッドの中で、引数としてGUIスレッドID及びActionCallパケットが送付されると、変数ACTION_COUNTが一つインクリメントされ、ステップS209’において、ステップS212の呼び出しの戻り値として、ActionCallパケットをスタブメソッド32に渡す。   When the GUI thread ID and the ActionCall packet are sent as arguments in the exchangePacket method, the communication object management unit 26 increments the variable ACTION_COUNT by one, and in Step S209 ′, the ActionCall as the return value of the call in Step S212. Pass the packet to the stub method 32.

スタブメソッド32は、invokeMethodメソッドの中で、exchangePacketメソッドの戻り値としてActionCallパケットを取得するので、アクション実行部35’を生成し、ステップS210’において、アクション実行部35’のinvokeActionメソッドを、引数としてActionCallパケットを設定して呼び出す。   Since the stub method 32 acquires an ActionCall packet as a return value of the exchangePacket method in the invokeMethod method, the stub method 32 generates an action execution unit 35 ′. In step S210 ′, the invokeAction method of the action execution unit 35 ′ is used as an argument. Set the ActionCall packet and call it.

このような図10に示す処理により、ビジネスロジック実行モジュール30から呼び出されたGUIオブジェクトのメソッドの中から、アクションイベントが発生した場合でもアクションを実行することができる。   With the process shown in FIG. 10, an action can be executed even when an action event occurs from the method of the GUI object called from the business logic execution module 30.

図11を参照して、本発明の最良の実施の形態に係る通信オブジェクト管理部26のstartメソッドの処理を説明する。ここでは、図9及び図10の各ステップにおける通信オブジェクト管理部26の動作を説明する。   With reference to FIG. 11, the process of the start method of the communication object management unit 26 according to the preferred embodiment of the present invention will be described. Here, the operation of the communication object management unit 26 in each step of FIGS. 9 and 10 will be described.

(1)処理の開始(図9のステップS102)
ステップS301において、通信オブジェクト管理部26のstartメソッドは、GUIオブジェクト部21から、引数としてGUIスレッドID及びパケットが設定されて呼び出されることによって処理が開始される。
(1) Start of processing (step S102 in FIG. 9)
In step S301, the start method of the communication object management unit 26 is started by calling the GUI object unit 21 with the GUI thread ID and packet set as arguments.

(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の戻り値が処理されることになる。
(2) Processing in Step S107 in FIG. 9 A case will be described in which, in step S107 in FIG. 9, the exchange thread method is called from the action thread unit 31 with the GUI thread ID and null set as arguments.
In step S302, since the argument packet is determined to be null, the process proceeds to step S303. In step S303, TRUE is substituted into the INIT area. Also, if the call at step S108 in FIG. 9 is earlier, the call thread at step S108 in FIG. 9 is WAITing (waiting) at step S305, so Notify (notify) the waiting call thread at step S108. . In step S313, if the call in step S108 in FIG. 9 is slower, the process waits for the calling thread in step S108 to notify in step S312.
If Notify is made in step S312, the process proceeds to step S314.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the ActionCall packet is stored in Step S312 when calling in Step S108 of FIG. 9, the ActionCall packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the ActionCall packet received in step S108 is transmitted as the return value in step S107, the return value in step S108 is processed.

(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の戻り値が処理されることになる。
(3) Processing in Step S108 in FIG. 9 A case where the GUI action execution unit 25 sets the GUI thread ID and the ActionCall packet as arguments and calls the exchangePacket method in step S108 in FIG. 9 will be described.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, if the call of step S107 is earlier, since INIT is already TRUE, the process proceeds to step S306. If the call of step S107 is slower, the process proceeds to step S305.
In step S305, the process waits for Notify from the calling thread in step S107 in step S303, and proceeds to step S306 when notified from the calling thread in step S107.
In step S306, it is determined that the argument is not an ActionReturn packet, and the process proceeds to step S308. In step S308, the argument is determined to be an ActionCall packet, and the process proceeds to step S310. In step S310, ACTION_COUNT is incremented by one, ACTION_COUNT becomes “1”, and the process proceeds to step S312. In step S312, the ActionCall packet is stored in the packet area of the record, and the process advances to step S313 after notifying the calling thread in step S107 of FIG. 9 that is waiting in step S313.
In step S313, in step S312, it waits for Notify from the calling thread in step S112 of FIG. 9, and when notified from the calling thread in step S112, the process proceeds to step S314.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the MethodCall packet is stored in Step S312 when calling in Step S112 of FIG. 9, the MethodCall packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the MethodCall packet received in step S112 is processed as the return value in step S108, the return value in step S112 is processed.

(4)図9のステップS112の処理
図9のステップS112において、スタブメソッド実行部32から、引数としてGUIスレッドID及びMethodCallパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS107の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
(4) Processing in Step S112 in FIG. 9 A case will be described in which, in step S112 in FIG. 9, the stub method execution unit 32 sets the GUI thread ID and the MethodCall packet as arguments and calls the exchangePacket method.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, since INIT is TRUE by the calling operation in step S107, the process proceeds to step 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の戻り値が処理されることになる。
In step S306, it is determined that the argument is not an ActionReturn packet, and the process proceeds to step S308. In step S308, it is determined that the argument is not an ActionCall packet, and the process proceeds to step S312.
In step S312, the MethodCall packet is stored in the packet area of the record, and the process advances to step S313 after notifying the calling thread in step S108 of FIG. 9 that is waiting in step S313.
In step S313, the process waits for Notify from the calling thread in step S118 of FIG. 9 in step S312, and proceeds to step S314 when notified from the calling thread in step S118.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the MethodReturn packet is stored in step S312 when calling in step S118 of FIG. 9, the MethodReturn packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the MethodReturn packet received in step S118 is processed as the return value in step S112, the return value in step S118 is processed.

(5)図9のステップS118の処理
図9のステップS118において、GUIアクション実行部25から、引数としてGUIスレッドID及びMethodReturnパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS107の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
(5) Processing in Step S118 in FIG. 9 A case will be described in which, in step S118 in FIG. 9, the GUI action execution unit 25 sets the GUI thread ID and MethodReturn packet as arguments and calls the exchangePacket method.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, since INIT is TRUE by the calling operation in step S107, the process proceeds to step 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の戻り値が処理されることになる。
In step S306, it is determined that the argument is not an ActionReturn packet, and the process proceeds to step S308. In step S308, it is determined that the argument is not an ActionCall packet, and the process proceeds to step S312.
In step S312, the MethodReturn packet is stored in the packet area of the record, and the process advances to step S313 after notifying the calling thread in step S112 of FIG. 9 that is waiting in step S313.
In step S313, the process waits for Notify from the calling thread in step S122 of FIG. 9 in step S311, and when notified from the calling thread in step S122, the process proceeds to step S314.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the ActionReturn packet is stored in step S311 when calling in step S122 of FIG. 9, the ActionReturn packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the ActionReturn packet received in step S122 is processed as the return value in step S118, the return value in step S122 is processed.

(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の戻り値が処理されることになる。
(6) Processing in Step S122 in FIG. 9 A case will be described where, in step S122 in FIG. 9, the action thread unit 31 sets an ActionReturn packet as an argument and calls the exchangePacket method.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, since INIT is TRUE by the calling operation in step S107, the process proceeds to step S306.
In step S306, since the argument is an ActionReturn packet, the process proceeds to step S307. Here, ACTION_COUNT is decremented by 1 in step S307, ACTION_COUNT becomes “0”, and the process proceeds to step S309. In step S309, since ACTION_COUNT is “0”, the process proceeds to step S311.
In step S311, the ActionReturn packet is stored in the packet area of the record, and a Notify is made to the calling thread in step S118 of FIG. 9 that is waiting in step S313. Further, the record having the GUI thread ID as a key is deleted, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the ActionReturn packet received in step S122 is processed as the return value in step S118, the return value in step S122 is processed.

(7)図10のステップS207の処理
上述した図9のステップS107の処理と同じである。
(7) Processing in Step S207 in FIG. 10 This processing is the same as the processing in step S107 in FIG. 9 described above.

(8)図10のステップS208の処理
上述した図9のステップS108の処理と同じである。
(8) Processing in Step S208 in FIG. 10 This is the same as the processing in step S108 in FIG. 9 described above.

(9)図10のステップS212の処理
図10のステップS212において、スタブメソッド実行部32から、引数としてGUIスレッドID及びMethodCallパケットパケットが設定されてexchangePacketメソッドが呼び出される場合について説明する。
ステップS302において、引数パケットがnullではないと判断されるので、ステップS304に処理が進む。ステップS304において、ステップS207の呼び出しの動作によって、INITがTRUEなのでステップS306に処理が進む。
(9) Processing in Step S212 of FIG. 10 A case will be described in which, in step S212 of FIG. 10, the stub method execution unit 32 sets the GUI thread ID and MethodCall packet packet as arguments and calls the exchangePacket method.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, because INIT is TRUE by the calling operation in step S207, the process proceeds to step 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’の戻り値が処理されることになる。
In step S306, it is determined that the argument is not an ActionReturn packet, and the process proceeds to step S308. In step S308, it is determined that the argument is not an ActionCall packet, and the process proceeds to step S312.
In step S312, the MethodCall packet is stored in the packet area of the record, and the process advances to step S313 after notifying the calling thread in step S208 of FIG. 10 that is waiting in step S313.
In step S313, the process waits for Notify from the calling thread in step S208 ′ of FIG. 10 in step S312, and proceeds to step S314 when notified from the calling thread in step S208 ′.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the ActionCall packet is stored in step S312 when the step S208 ′ of FIG. 10 is called, the ActionCall packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the ActionCall packet received in step S208 ′ is processed as the return value in step S212, the return value in step S208 ′ is processed.

(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’の戻り値が処理されることになる。
(10) Processing in Step S208 ′ in FIG. 10 A case will be described in which, in step S208 ′ in FIG. 10, the GUI action execution unit 25 ′ sets the GUI thread ID and the ActionCall packet as arguments and calls the exchangePacket method.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, because INIT is TRUE by the calling operation in step S207, the process proceeds to step S306.
In step S306, it is determined that the argument is not an ActionReturn packet, and the process proceeds to step S308. In step S308, the argument is determined to be an ActionCall packet, and the process proceeds to step S310. In step S310, ACTION_COUNT is incremented by one, ACTION_COUNT becomes “2”, and the process proceeds to step S312. In step S312, the ActionCall packet is stored in the packet area of the record, and the process advances to step S313 after notifying the calling thread in step S212 of FIG. 10 that is waiting in step S313.
In step S313, the process waits for Notify from the calling thread in step S222 'of FIG. 10 in step S312, and when notified from the calling thread in step S222', the process proceeds to step S314.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the ActionReturn packet is stored in step S312 when step S222 ′ of FIG. 10 is called, the ActionReturn packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the MethodCall packet received in step S222 ′ is processed as the return value in step S208 ′, the return value in step S222 ′ is processed.

(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の戻り値が処理されることになる。
(11) Processing in Step S222 ′ in FIG. 10 A case will be described in which, in Step S222 ′ in FIG.
In step S302, since it is determined that the argument packet is not null, the process proceeds to step S304. In step S304, because INIT is TRUE by the calling operation in step S207, the process proceeds to step S306.
In step S306, since the argument is an ActionReturn packet, the process proceeds to step S307. Here, ACTION_COUNT is decremented by 1 in step S307, ACTION_COUNT becomes “1”, and the process proceeds to step S312. In step S312, the ActionReturn packet is stored in the packet area of the record, and the process advances to step S313 after notifying the calling thread in step S208 ′ of FIG. 10 that is waiting in step S313.
In step S313, the process waits for Notify from the calling thread in step S218 of FIG. 10 in step S312, and proceeds to step S314 when notified from the calling thread in step S218.
In step S314, the packet in the packet area is stored in the stack variable TMP. Here, since the MethodReturn packet is stored in step S312 when calling in step S218 of FIG. 10, the MethodReturn packet is stored in the stack variable TMP. Furthermore, null is assigned to the packet area of the record, and the process proceeds to step S315. In step S315, TMP is returned as a return value.
With this control, after the MethodReturn packet received in step S218 is processed as the return value in step S222, the return value in step S218 is processed.

(12)図10のステップS218の処理
上述した図9のステップS118の処理と同じである。
(12) Processing in Step S218 in FIG. 10 This processing is the same as the processing in step S118 in FIG. 9 described above.

本発明の最良の実施の形態に係る情報処理方法は、GUI表示モジュール10からビジネスロジック実行モジュール30へのリクエスト・リプライ型の通信と、ビジネスロジック実行モジュール30からGUI実行モジュール20へのリクエスト・リプライ型の通信を用いて、GUIアプリケーション上で発生したアクションイベントをきっかけとして、ビジネスロジック実行モジュール30で行った計算結果をGUIアプリケーションに反映させることができる。   The information processing method according to the preferred embodiment of the present invention includes a request reply type communication from the GUI display module 10 to the business logic execution module 30 and a request reply from the business logic execution module 30 to the GUI execution module 20. Using the type of communication, a calculation result performed by the business logic execution module 30 can be reflected in the GUI application, triggered by an action event that has occurred on the GUI application.

これにより、情報処理端末1からビジネスロジック実行モジュール30へのアクセスにSSLのクライアント認証が使われていて、情報処理端末1のGUI表示モジュール10条にクライアント証明書がインストールされている場合でも、GUI実行モジュール10は、リクエスト代理部13によってリクエストを代理することによって、ビジネスロジック実行モジュール30へアクセスすることができる。   Thereby, even when the SSL client authentication is used to access the business logic execution module 30 from the information processing terminal 1 and the client certificate is installed in the GUI display module 10 of the information processing terminal 1, the GUI is installed. The execution module 10 can access the business logic execution module 30 by proxying the request by the request proxy unit 13.

これにより本発明の最良の実施の形態に係る情報処理方法は、情報処理端末1ではGUI画面の表示し、入力イベントを受信するのみで、情報処理装置2でGUI操作メソッド及びビジネスロジックが実行されるので、情報処理端末1側の開発作業量を軽減し、開発効率を向上させる情報処理方法を提供することができる。   Thus, in the information processing method according to the preferred embodiment of the present invention, the GUI operation method and the business logic are executed in the information processing apparatus 2 only by displaying the GUI screen and receiving the input event in the information processing terminal 1. Therefore, it is possible to provide an information processing method that reduces the amount of development work on the information processing terminal 1 side and improves development efficiency.

(変形例)
本発明の最良の実施の形態の変形例に係る情報処理システム4aは、図12に示すように、情報処理端末1、第1の情報処理装置2a及び第2の情報処理装置2bを備える。第1の情報処理装置2aにはGUI実行モジュール20が実装される。第2の情報処理装置2bにはビジネスロジック実行モジュール30が実装される。
(Modification)
As shown in FIG. 12, an information processing system 4a according to a modification of the best embodiment of the present invention includes an information processing terminal 1, a first information processing device 2a, and a second information processing device 2b. A GUI execution module 20 is mounted on the first information processing apparatus 2a. A business logic execution module 30 is mounted on the second information processing apparatus 2b.

情報処理端末1と第1の情報処理装置2a及び第2の情報処理装置2bは、第1の通信ネットワーク5aを介して接続される。第1の通信ネットワーク5aは、例えばインターネットなどの外部の通信ネットワークである。第1の情報処理装置2a及び第2の情報処理装置2bは、第2の通信ネットワーク5bを介して接続される。第2の通信ネットワーク5bは、例えば社内LANなどの通信ネットワークである。   The information processing terminal 1, the first information processing device 2a, and the second information processing device 2b are connected via the first communication network 5a. The first communication network 5a is an external communication network such as the Internet, for example. The first information processing device 2a and the second information processing device 2b are connected via the second communication network 5b. The second communication network 5b is a communication network such as an in-house LAN.

このような本発明の最良の実施の形態の変形例に係る情報処理システム4aは、第1の情報処理装置2a及び第2の情報処理装置2bとの間の通信において、オーバヘッドが発生するものの、第1の情報処理装置2a及び第2の情報処理装置2bとで、それぞれ作業を分担することにより、付加を分散させることができる。   In the information processing system 4a according to the modified example of the best embodiment of the present invention, although overhead occurs in communication between the first information processing apparatus 2a and the second information processing apparatus 2b, The addition can be distributed by sharing the work between the first information processing apparatus 2a and the second information processing apparatus 2b.

(その他の実施の形態)
上記のように、本発明の最良の実施の形態とその変形例によって記載したが、この開示の一部をなす論述及び図面はこの発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替実施の形態、実施例及び運用技術が明らかとなる。
(Other embodiments)
As described above, the best mode for carrying out the invention and the modifications thereof have been described. However, it should not be understood that the description and drawings constituting a part of this disclosure limit the present invention. From this disclosure, various alternative embodiments, examples, and operational techniques will be apparent to those skilled in the art.

例えば、本発明の最良の実施の形態に記載した情報処理端末1及び情報処理装置2は、図3に示すようにそれぞれ一つのハードウェア上に構成されても良いし、図12に示すように二つのハードウェア上に構成されても良い。又、その機能や処理数に応じて、3つ以上のハードウェア上に構成されても良い。また、既存の情報処理システム上に実現されても良い。   For example, the information processing terminal 1 and the information processing apparatus 2 described in the best embodiment of the present invention may be configured on one piece of hardware as shown in FIG. 3, or as shown in FIG. You may comprise on two hardware. Further, it may be configured on three or more hardware according to the function and the number of processes. Moreover, you may implement | achieve on the existing information processing system.

本発明はここでは記載していない様々な実施の形態等を含むことは勿論である。従って、本発明の技術的範囲は上記の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものである。   It goes without saying that the present invention includes various embodiments not described herein. Therefore, the technical scope of the present invention is defined only by the invention specifying matters according to the scope of claims reasonable from the above description.

本発明の最良の実施の形態に係る情報処理システムの概要を説明する図である。It is a figure explaining the outline | summary of the information processing system which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理システムに用いられる情報処理方法の処理を説明する図である。It is a figure explaining the process of the information processing method used for the information processing system which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理システムの機能構成を説明する図である。It is a figure explaining the function structure of the information processing system which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理装置のハードウェア構成を説明する図である。It is a figure explaining the hardware constitutions of the information processing apparatus which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理端末に実装されるオブジェクトを説明する図である。It is a figure explaining the object mounted in the information processing terminal which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理装置のGUI実行モジュールに実装されるオブジェクトを説明する図である。It is a figure explaining the object mounted in the GUI execution module of the information processing apparatus which concerns on best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理装置のGUI実行モジュールにおいて扱われるパケットのクラス構成図である。It is a class structure figure of the packet handled in the GUI execution module of the information processing apparatus which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理装置のビジネスロジック実行モジュールに実装されるオブジェクトを説明する図である。It is a figure explaining the object mounted in the business logic execution module of the information processing apparatus which concerns on best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理方法を概略して説明するシーケンス図である。It is a sequence diagram which illustrates roughly the information processing method which concerns on the best embodiment of this invention. 本発明の最良の実施の形態に係る情報処理方法を概略して説明するシーケンス図であって、ビジネスロジック実行モジュールから呼び出されたGUIオブジェクトのメソッドの中からアクションイベントが発生した場合のシーケンス図である。FIG. 6 is a sequence diagram schematically illustrating an information processing method according to the preferred embodiment of the present invention, and is a sequence diagram when an action event occurs from a method of a GUI object called from a business logic execution module. is there. 本発明の最良の実施の形態に係る通信オブジェクト管理部のstartメソッドの処理を説明するフローチャートである。It is a flowchart explaining the process of the start method of the communication object management part which concerns on the best embodiment of this invention. 本発明の最良の実施の形態の変形例に係る情報処理システムの機能構成を説明する図である。It is a figure explaining the function structure of the information processing system which concerns on the modification of the best embodiment of this invention. 従来の情報システムの概要を説明する図である。It is a figure explaining the outline | summary of the conventional information system.

符号の説明Explanation of symbols

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 ビジネスロジックスレッド管理部
DESCRIPTION OF SYMBOLS 1 Information processing terminal 2, 2a, 2b Information processing apparatus 4, 4a Information processing system 5, 5a, 5b Communication network 10 GUI display module 11 Screen display part 12 Input part 13 Request proxy part 20 GUI execution module 21 GUI object part 22 GUI Method execution unit 23 GUI object management unit 24 Action event reception unit 25 GUI action execution unit 26 Communication object management unit 30 Business logic thread management unit 31 Action thread unit 32 Stub method execution unit 33 GUI stub management unit 34 Action management unit 35 Action execution Part 36 Business Logic Thread Management Department

Claims (5)

情報処理装置と、前記情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法であって、
前記情報処理端末において、前記情報処理装置の命令に従って前記情報処理端末にGUI画面が表示され、前記GUI画面に対して入力イベントを発生するステップと、
前記情報処理装置において、前記入力イベントを発生したことが入力されると、前記入力イベントがユーザアクションに変換され、前記入力イベントに対応するGUIオブジェクトのスタブであるGUIオブジェクトスタブで前記ユーザアクションを実行するスレッドが生成されるとともに、GUIスレッドIDを取得し、前記情報処理端末のリクエスト代理部に、ビジネスロジックを実行するビジネスロジック実行部のアドレスおよび前記GUIスレッドIDを送信するステップと、
前記情報処理端末の前記リクエスト代理部が、前記ビジネスロジック実行部のアドレスおよび前記GUIスレッドIDを受信すると、受信したアドレスおよびGUIスレッドIDに基づいて、前記情報処理装置の前記ビジネスロジック実行部を呼び出し、前記ユーザアクションを実行するステップと、
前記情報処理装置において、前記ユーザアクションの実行において前記GUIオブジェクトのメソッドが呼び出された場合、前記呼び出しに関するパラメタに基づいて前記情報処理端末に新たなGUI画面が表示され、前記新たなGUI画面に対して新たな入力イベントを発生するステップと、
前記情報処理装置において、前記新たな入力イベントを発生したことが入力されると、前記新たな入力イベントがリターンデータに変換され、前記リターンデータに基づいて、前記スレッドにおいて前記ユーザアクションが実行された結果を、前記ユーザアクションの実行命令の戻り値として出力するステップ
とを備えることを特徴とする情報処理方法。
An information processing method used in an information processing system including an information processing device and an information processing terminal using information provided from the information processing device,
In the information processing terminal, a GUI screen is displayed on the information processing terminal in accordance with an instruction of the information processing device, and an input event is generated on the GUI screen;
In the information processing apparatus, when the occurrence of the input event is input, the input event is converted into a user action, and the user action is executed with a GUI object stub that is a stub of a GUI object corresponding to the input event. with threads is generated, a step of acquiring the GUI thread ID, the request agent unit of the information processing terminal, transmits the address and the GUI thread ID of the business logic execution unit for executing the business logic,
When the request proxy unit of the information processing terminal receives the address of the business logic execution unit and the GUI thread ID, it calls the business logic execution unit of the information processing device based on the received address and GUI thread ID. Performing the user action;
In the information processing apparatus, when the method of the GUI object is called in the execution of the user action, a new GUI screen is displayed on the information processing terminal based on the parameters related to the call, and the new GUI screen Generating a new input event,
In the information processing apparatus, when it is input that the new input event has occurred, the new input event is converted into return data, and the user action is executed in the thread based on the return data. And a step of outputting a result as a return value of the execution instruction of the user action.
情報処理装置と、前記情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムに用いられる情報処理方法であって、
前記情報処理装置のGUI実行部のGUIオブジェクト管理部において、GUIオブジェクトと、前記GUIオブジェクトを識別するGUIオブジェクトIDとを関連づけて記憶するステップと、
前記情報処理装置のビジネスロジック実行部のアクション管理部において、前記GUIオブジェクトで発生するユーザアクションと、前記ユーザアクションを識別するアクションIDとを関連づけて記憶するステップと、
前記情報処理装置の前記ビジネスロジック実行部のGUIスタブ管理部において、前記GUIオブジェクトIDと、前記GUIオブジェクトIDに関連づけられたGUIオブジェクトのスタブであるGUIオブジェクトスタブとを関連づけて記憶するステップと、
前記情報処理装置の前記GUI実行部によって、前記GUIオブジェクトに基づいて前記情報処理端末にGUI画面を表示し、前記GUI画面に対して入力イベントが発生すると、前記入力イベントを前記情報処理装置の前記GUI実行部に送信するステップと、
前記情報処理装置の前記GUI実行部において、前記入力イベントを受信すると、前記入力イベントに基づいてGUI操作メソッドを実行してユーザアクションイベントを生成し、ユーザアクションに関する前記アクションIDとGUIオブジェクトを取得するステップと、
前記情報処理装置の前記GUI実行部において、前記ユーザアクションを実行するスレッドを生成し、アクションカウント変数を初期化するとともに、GUIスレッドIDを取得するステップと、
前記情報処理装置の前記GUI実行部において、ビジネスロジック実行部のアドレスと前記GUIスレッドIDを、前記情報処理端末のリクエスト代理部に送信するステップと、
前記情報処理端末のリクエスト代理部において、前記アドレスおよび前記GUIスレッドIDに基づいて、前記情報処理装置の前記ビジネスロジック実行部を呼び出すステップと、
前記情報処理装置の前記GUI実行部において、前記GUIスレッドID、前記アクションIDと前記GUIオブジェクトとを取得すると、前記GUIオブジェクトに基づいて前記GUIオブジェクト管理部から前記GUIオブジェクトIDを取得するとともに、前記アクションIDと前記GUIオブジェクトIDとを含むアクションコールパケットを生成するステップと、
前記情報処理装置の前記GUI実行部において、前記アクションカウント変数をインクリメントするとともに、前記アクションコールパケットを、前記情報処理装置の前記ビジネスロジック実行部に送信するステップと、
前記情報処理装置の前記ビジネスロジック実行部において、前記アクションコールパケットを受信すると、前記アクションコールパケットから前記アクションIDとGUIオブジェクトIDを取得し、前記アクションIDに基づいて前記アクション管理部から前記ユーザアクションを取得するとともに、前記GUIオブジェクトIDに基づいて前記GUIスタブ管理部から前記GUIオブジェクトスタブを取得するステップと、
前記情報処理装置の前記ビジネスロジック実行部において、取得された前記GUIオブジェクトスタブに対して、取得された前記ユーザアクションを実行するステップ
を備えることを特徴とする情報処理方法。
An information processing method used in an information processing system including an information processing device and an information processing terminal using information provided from the information processing device,
Storing a GUI object and a GUI object ID for identifying the GUI object in association with each other in the GUI object management unit of the GUI execution unit of the information processing apparatus;
In the action management unit of the business logic execution unit of the information processing device, storing a user action that occurs in the GUI object in association with an action ID that identifies the user action;
In the GUI stub management unit of the business logic execution unit of the information processing apparatus, storing the GUI object ID and a GUI object stub that is a stub of the GUI object associated with the GUI object ID in association with each other;
The GUI execution unit of the information processing apparatus displays a GUI screen on the information processing terminal based on the GUI object, and when an input event occurs on the GUI screen, the input event is transmitted to the information processing apparatus. Transmitting to the GUI execution unit;
When the GUI execution unit of the information processing apparatus receives the input event, it executes a GUI operation method based on the input event to generate a user action event, and acquires the action ID and GUI object related to the user action Steps,
In the GUI execution unit of the information processing device, generating a thread for executing the user action, initializing an action count variable, and acquiring a GUI thread ID;
In the GUI execution unit of the information processing device, transmitting the address of the business logic execution unit and the GUI thread ID to the request proxy unit of the information processing terminal;
In the request proxy unit of the information processing terminal, calling the business logic execution unit of the information processing device based on the address and the GUI thread ID;
In the GUI execution unit of the information processing apparatus, when the GUI thread ID, the action ID, and the GUI object are acquired, the GUI object ID is acquired from the GUI object management unit based on the GUI object, and Generating an action call packet including an action ID and the GUI object ID;
Transmitting in the GUI executing unit of the information processing apparatus, with increments the action count variable, the action call packet, the business logic execution unit of the information processing apparatus,
In the business logic execution unit of the information processing apparatus, when the action call packet is received, the action ID and GUI object ID are acquired from the action call packet, and the user action is acquired from the action management unit based on the action ID. And acquiring the GUI object stub from the GUI stub management unit based on the GUI object ID;
An information processing method comprising: executing the acquired user action on the acquired GUI object stub in the business logic execution unit of the information processing apparatus.
前記情報処理装置の前記ビジネスロジック実行部において、前記ユーザアクションから前記GUIオブジェクトスタブのメソッドが所定のパラメタで呼び出された場合、前記GUIオブジェクトIDと前記パラメタとを含むメソッドコールパケットを生成し、前記GUI実行部に送信するステップと、
前記情報処理装置の前記GUI実行部において、前記メソッドコールパケットを受信すると、前記メソッドコールパケットから前記GUIオブジェクトID及び前記パラメタを取り出し、前記GUIオブジェクトIDに基づいてGUIオブジェクト管理部から前記GUIオブジェクトを取得するステップと、
前記情報処理装置の前記GUI実行部において、取得された前記GUIオブジェクト及び前記パラメタに基づいて前記情報処理端末に新たなGUI画面を表示し、前記新たなGUI画面に対して新たな入力イベントが発生すると、前記新たな入力イベントが前記情報処理装置の前記GUI実行部に送信され、GUIオブジェクトリターンデータに変換するステップと、
前記情報処理装置の前記GUI実行部において、前記GUIオブジェクトリターンデータを含むメソッドリターンパケットを生成し、前記情報処理装置の前記ビジネスロジック実行部に送信するステップと、
前記情報処理装置の前記ビジネスロジック実行部において、前記メソッドリターンパケットを受信すると、前記メソッドリターンパケットから前記GUIオブジェクトリターンデータを取得し、前記GUIオブジェクトリターンデータを、前記GUIオブジェクトスタブのメソッドの戻り値として返すステップ
とを更に備えることを特徴とする請求項2に記載の情報処理方法。
In the business logic execution unit of the information processing apparatus, when a method of the GUI object stub is called from the user action with a predetermined parameter, a method call packet including the GUI object ID and the parameter is generated, Transmitting to the GUI execution unit;
In the GUI execution unit of the information processing apparatus, when the method call packet is received, the GUI object ID and the parameter are extracted from the method call packet, and the GUI object is extracted from the GUI object management unit based on the GUI object ID. A step to obtain,
In the GUI execution unit of the information processing apparatus, a new GUI screen is displayed on the information processing terminal based on the acquired GUI object and the parameter, and a new input event is generated on the new GUI screen Then, the new input event is transmitted to the GUI execution unit of the information processing apparatus, and converted into GUI object return data;
Generating a method return packet including the GUI object return data in the GUI execution unit of the information processing apparatus, and transmitting the method return packet to the business logic execution unit of the information processing apparatus;
In the business logic execution unit of the information processing apparatus, when the method return packet is received, the GUI object return data is acquired from the method return packet, and the GUI object return data is used as the return value of the method of the GUI object stub. The information processing method according to claim 2, further comprising the step of returning as:
前記情報処理装置の前記ビジネスロジック実行部において、前記GUIオブジェクトスタブのメソッドの戻り値としてアクションリターンデータを取得すると、前記アクションリターンデータを含むアクションリターンパケットを作成し、前記アクションリターンパケットを前記入力イベントの受信の戻り値として返すステップと、
前記情報処理装置の前記GUI実行部において、前記アクションリターンパケットを受信すると、前記アクションカウント変数をデクリメントし、前記アクションカウント変数がゼロになると、前記アクションリターンパケットから前記アクションリターンデータを取得するステップ
とを更に備えることを特徴とする請求項3に記載の情報処理方法。
In the business logic execution unit of the information processing apparatus, when action return data is acquired as a return value of the method of the GUI object stub, an action return packet including the action return data is created, and the action return packet is used as the input event. Step to return as the return value of
The GUI execution unit of the information processing apparatus receives the action return packet, decrements the action count variable, and acquires the action return data from the action return packet when the action count variable becomes zero. The information processing method according to claim 3, further comprising:
情報処理装置と、前記情報処理装置から提供される情報を利用する情報処理端末とを備える情報処理システムであって、
前記情報処理端末は、
前記情報処理装置の命令に従って、前記情報処理端末の表示装置にGUI画面を表示し、前記情報処理端末の入力装置によって前記GUI画面に対して発生された入力イベントを前記情報処理装置に送信するとともに、
前記情報処理装置から、前記情報処理装置においてビジネスロジックを実行するビジネスロジック実行部のアドレスおよびGUIスレッドIDを受信すると、受信した前記アドレスおよび前記GUIスレッドIDに基づいて、前記情報処理装置のビジネスロジック実行部を呼び出し、
前記情報処理装置は、
前記情報処理端末に前記GUI画面を表示する命令を出力し、前記GUI画面に対して入力イベントが発生すると、前記入力イベントをユーザアクションに変換し、前記情報処理端末のリクエスト代理部に、前記ビジネスロジック実行部のアドレスおよびGUIスレッドIDを送信し、前記情報処理端末のリクエスト代理部からの呼び出しに応じて、前記ビジネスロジック実行部で、前記入力イベントに対応するGUIオブジェクトのスタブであるGUIオブジェクトスタブで前記ユーザアクションを実行するスレッドを生成し、前記スレッドにおいて前記ユーザアクションを実行し、
前記ユーザアクションの実行において前記GUIオブジェクトのメソッドが呼び出された場合、前記呼び出しに関するパラメタに基づいて前記情報処理端末に新たなGUI画面を表示する命令を出力し、前記新たなGUI画面に対して新たな入力イベントが発生すると、前記新たな入力イベントをリターンデータに変換し、前記リターンデータに基づいて、前記スレッドにおいて前記ユーザアクションを実行した結果を、前記ユーザアクションの実行命令の戻り値として出力する
ことを特徴とする情報処理システム。
An information processing system comprising an information processing device and an information processing terminal using information provided from the information processing device,
The information processing terminal
In accordance with an instruction from the information processing device, a GUI screen is displayed on the display device of the information processing terminal, and an input event generated on the GUI screen by the input device of the information processing terminal is transmitted to the information processing device. ,
From the information processing apparatus, when receiving the address and GUI thread ID of the business logic execution unit for executing the business logic in the information processing apparatus, on the basis of the address and the GUI thread ID received, the information processing apparatus business logic Call the execution part,
The information processing apparatus includes:
A command to display the GUI screen is output to the information processing terminal, and when an input event occurs on the GUI screen, the input event is converted into a user action, and the business agent is sent to the request proxy unit of the information processing terminal. A GUI object stub that is a stub of a GUI object corresponding to the input event is transmitted in the business logic execution unit in response to a call from the request proxy unit of the information processing terminal by transmitting an address of the logic execution unit and a GUI thread ID Generating a thread for executing the user action, executing the user action in the thread,
When the method of the GUI object is called in the execution of the user action, a command to display a new GUI screen on the information processing terminal is output based on the parameters related to the call, and a new GUI screen is displayed. When a new input event occurs, the new input event is converted into return data, and a result of executing the user action in the thread based on the return data is output as a return value of the execution instruction of the user action. An information processing system characterized by this.
JP2006259546A 2006-09-25 2006-09-25 Information processing method and information processing system Active JP4342545B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006259546A JP4342545B2 (en) 2006-09-25 2006-09-25 Information processing method and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006259546A JP4342545B2 (en) 2006-09-25 2006-09-25 Information processing method and information processing system

Publications (2)

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

Family

ID=39354611

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006259546A Active JP4342545B2 (en) 2006-09-25 2006-09-25 Information processing method and information processing system

Country Status (1)

Country Link
JP (1) JP4342545B2 (en)

Also Published As

Publication number Publication date
JP2008083745A (en) 2008-04-10

Similar Documents

Publication Publication Date Title
US20220070122A1 (en) Method and Apparatus for Composite User Interface Generation
US7330878B2 (en) Method and system for remote control of a local system
US7668937B2 (en) Wireless communication device use of application server applications
US7904194B2 (en) Event management systems and methods for motion control systems
JP3055970B2 (en) Method and apparatus for implementing interface between object-oriented languages
JP2011118879A (en) Location independent execution of user interface operations
US20050015387A1 (en) Managing program applications
CN115210689A (en) System and method for a reactive messaging client for use in a microservice environment
JP4342545B2 (en) Information processing method and information processing system
US7418717B1 (en) Smart card framework
US6308226B1 (en) Communication method and system for objects movable in network
US8132189B1 (en) WS-management resource MBean wrapper for JAXB beans
JP2006252344A (en) Information processing method, information processing system, information processing terminal and information processor
KR100494827B1 (en) Distributed object model based radio server with hardware-independent communication interface and communication control method using the same
JP2003076563A (en) Distributed object middleware connection method and recording medium with program recorded thereon and program
US20060161618A1 (en) Abstract mechanism for constructing commands for the command pattern
Silva-Lepe et al. Container-managed messaging: an architecture for integrating java components and message-oriented applications
JPH10214196A (en) Software linking processor
Huang et al. Java communication interfaces for control systems
Faison A Survey of Commercial Systems
Ren et al. Utilizing commercial object libraries within looselycoupled, event-based 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