JP2004227405A - Webアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラム - Google Patents
Webアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラム Download PDFInfo
- Publication number
- JP2004227405A JP2004227405A JP2003016297A JP2003016297A JP2004227405A JP 2004227405 A JP2004227405 A JP 2004227405A JP 2003016297 A JP2003016297 A JP 2003016297A JP 2003016297 A JP2003016297 A JP 2003016297A JP 2004227405 A JP2004227405 A JP 2004227405A
- Authority
- JP
- Japan
- Prior art keywords
- gui
- application
- web
- application server
- unit
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
【解決手段】リモートGUI表示部11を形成するHTML解析表示部12をもったWebクライアント1と、このWebクライアントからのリクエスト等に基づきGUIアプリケーション起動要求、或いはWebクライアントのHTML解析表示部からのユーザ入力により発生するイベント要求を送信するWebアプリケーションサーバ2と、このサーバからのアプリケーション起動要求或いはイベント要求に対し、GUIアプリケーションを起動・実行し、その実行結果をリモートGUI表示部11に反映し、イベント要求に対してGUIアプリケーションを操作し、WebクライアントのHTML解析表示部に反映させるGUIアプリケーションサーバ5等のWebアプリケーションシステムである。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、クライアントユーザにGUI(Graphical User Interface)部品を効率的に提供するWebアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラムに関する。
【0002】
【従来の技術】
近年、ネットワーク上の通信は、HTML(Hyper Text Markup Language)をベースとしたWeb技術が広く利用されてきている。このWeb技術は、HTTP(Hyper Text Transport Protocol)を用い、WWW(World Wide Web)のコンテンツを通信する技術である。このHTTPは、クライアントからサーバへのリクエストに対し、サーバがリプライとして新しいWebページを返すという通信方式であるので、ユーザ入力をクライアント側でリアルタイムにチェックするアプリケーションでは、ユーザ入力ごとにWebページが切り替わることから、ユーザにとって非常に使い勝手の悪いものとなってしまう。
【0003】
そこで、従来、ユーザ入力をリアルタイムにチェック可能とするために、図5に示すようなモジュール群からなるWebアプリケーションシステムが開発されている。
【0004】
このWebアプリケーションシステムは、クライアント60とWebアプリケーションサーバ70とからなり、クライアント60側は、Webブラウザ上で動作可能なJavaスクリプトなどを用いてユーザ入力をチェックする入力チェック部61、Javaアプレットなどを用いて入力チェック後のユーザ入力情報をHTTPにてWebアプリケーションサーバ70に送信する入力情報送信部62、Webアプリケーションサーバ70からユーザ入力情報のチェック結果であるレスポンス情報を受け取る入力チェック結果受信部63及び入力チェック結果表示部64等のモジュールにより構成されている。一方、Webアプリケーションサーバ70としては、同じくJavaアプレットなどを用いてクライアント60から送信されてくるユーザ入力情報を受信する入力情報受信部71、入力チェック結果送信部72等のモジュール群の他、入力情報受信部71で受信されたユーザ入力情報をチェック用データを参照しつつ解析チェックし、入力チェック結果送信部62に渡すといった入力データ解析部73が設けられている。つまり、このWebアプリケーションシステムは、以上のようなモジュール群61〜64、71,72を開発する一方、クライアント60側からのリクエストに対し、Webアプリケーションサーバ70では、入力情報受信部71、入力データ解析部73及び入力チェック結果送信部72に関連付けをもったWebアプリケーションを開発している。
【0005】
すなわち、このユーザ入力をリアルタイムにチェックする技術は、クライアントアプリケーションであるブラウザ上において、当該ブラウザソフトに対してプラグインやスクリプトを動かし、ユーザ入力をリアルタイムにチェックし、Webアプリケーションサーバ70にリクエスト情報として送信し、当該サーバ70にて入力チェックを行った後、クライアント60にレスポンス情報を返送する。このクライアント60は、レスポンス情報を受け取り、プラグインやスクリプトによりWebページの一部だけを変更可能とするものである
他の1つは、予め複数のパターンのパターン情報と各パターン間を関連付けするパターン間関連情報とを格納し、ネットワークに接続される各計算機上で開発対象モデルのソフトウエアを開発を行う要求に対し、パターン適用手段が開発対象モデルにパターン情報及びパターン間関連情報を適用し、その適用結果を要求元計算機に返信する技術が提案されている。
【0006】
【特許文献1】
特開2002−342080号公報(図1)
【0007】
【発明が解決しようとする課題】
しかしながら、前者のユーザ入力をリアルタイムにチェックする技術は、前述するようにモジュール群61〜64、71,72を開発する必要があるが、入力チェック部61及び入力チェック結果表示部64等は、ブラウザ制御用のJavaスクリプト言語を用いて実現しなければならない。また、ブラウザには種々の種類があり、また随時バージョンアップが図られているので、ブラウザの種類ごと、またバージョンごとに、ブラウザ上で動作する異なるスクリプトを作成し、それに対応するモジュール群61〜64、71,72を開発する必要がある。さらに、クライアント・サーバ間のユーザ入力情報の送受信は、Javaアプレットなどを用いて、HTTPによる通信を行う必要がある。
【0008】
従って、以上のように種々のプログラム言語を用いたモジュール群を作成することから開発効率が非常に低く、またモジュール群の作成後においても前述するようにブラウザの種類ごと及びバージョンごとに作成し直し、かつ、送受信部に修正を加える必要があり、保守性が悪い。
【0009】
一方、後者の技術は、開発対象モデルのソフトウエアを開発するに先立ち、各種の開発対象モデルのソフトウエア開発に必要な多数のパターン情報及び各パターン間の関連情報を登録したり、外部計算機からの開発対象モデルに適用可能なパターン情報及びパターン間関連情報の検索する技術であり、パターン情報及び各パターン間関連情報の作成に多大な時間を必要とする問題があり、またWebアプリケーションを効率的に開発できない。
【0010】
本発明は上記事情にかんがみてなされたもので、クライアントユーザに提供するためのGUI(Graphical User Interface)部品を効率的に開発可能であり、かつ、保守性に優れたWebアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラムを提供することを目的とする。
【0011】
【課題を解決するための手段】
上記課題を解決するために、本発明は、アプリケーションサーバ内のGUIアプリケーションを起動・実行し、この実行結果をWebクライアントのマークアップランゲージ解析表示部から起動されるリモートGUI表示部に表示させるWebアプリケーションサーバであって、ユーザ単位のセッションID、第1のデータ名、第1の実体データを組として管理するユーザセッションデータ管理部と、GUIアプリケーションIDとともに起動タグを含んだマークアップランゲージ情報を前記WebクライアントのHTML解析表示部に送信し、前記リモートGUI表示部を起動するとともに、前記アプリケーションサーバからの通信路形成時に受け取るWebアプリケーションID、前記データ管理部のユーザセッションを表す前記セッションID及び前記起動タグに含めたGUIアプリケーションIDを含む所要の起動要求データを前記アプリケーションサーバに送信し、所要とするGUIアプリケーションを起動・実行するWebアプリケーション部と、このGUIアプリケーションの実行時に必要とするリソースを検索し、前記GUIアプリケーションに提供するリソース取得部とを設けた構成である。
【0012】
本発明は以上のような構成とすることにより、Webアプリケーション部がアプリケーションサーバからの通信路形成時に受け取るGUIアプリケーションIDとともに起動タグを含んだマークアップランゲージ情報をWebクライアントのHTML解析表示部に送信し、リモートGUI表示部を起動する一方、当該WebアプリケーションID、データ管理部のユーザセッションを表すセッションID及び起動タグに含めたGUIアプリケーションIDを含む所要の起動要求データをアプリケーションサーバに送信すれば、このアプリケーションサーバの所要とするGUIアプリケーションを起動し実行可能となるので、所要とするGUI部品をリモートGUI表示部に表示させることが可能である。
【0013】
また、GUIアプリケーションの実行時に必要なリソースは、リソース取得要求に基づいて検索し、GUIアプリケーションに提供でき、非常に柔軟性の富んだGUI部品の作成が可能となる。
【0014】
なお、HTML解析表示部からユーザ入力がなされたとき、Webクライアント側からイベントを届けたいGUIアプリケーションID及び自身のセッションIDを含むイベント内容を受けた場合、Webアプリケーションサーバは、イベント内容から実行命令を解釈し、その実行命令に従ってアプリケーションサーバの所要とするGUIアプリケーションを実行させ、その実行結果を受け取ってHTML解析表示部に返送することができ、GUIアプリケーションに対する操作性を上げることが可能となる。
【0015】
一方、アプリケーションサーバとして、Webアプリケーションサーバから所定の起動要求用データを受けて起動・実行し、この実行結果のGUI部品をリモートGUI表示部に提供するGUIアプリケーションと、外部から入力されるデータ種別及びデータ名に基づき、当該GUIアプリケーションを介してユーザセッションデータ管理部又はWebアプリケーションデータ管理部により管理される実体データ又は当該実体データの参照データを取得し、この取得された実体データ又は参照データに対して実行命令を発生し、ユーザセッションデータ管理部又は前記Webアプリケーションデータ管理部に管理される実体データを操作する操作ライブラリ部とを設ければ、ユーザセッションデータ管理部又はWebアプリケーションデータ管理部により管理される実体データを容易に操作することが可能である
(2) 本発明は、Webアプリケーションサーバからアプリケーションサーバ内のGUIアプリケーションを起動・実行し、この実行結果をWebクライアントのマークアップランゲージ解析表示部から起動されるリモートGUI表示部に表示するシステムであって、WebアプリケーションサーバからGUIアプリケーションID、起動タグを含んだマークアップランゲージ情報を前記Webクライアントのマークアップランゲージ解析表示部に送信し、前記リモートGUI表示部を起動するステップと、Webアプリケーションサーバから前記アプリケーションサーバの通信路形成時に受け取るWebアプリケーションID、ユーザセッションを表すセッションID及び前記起動タグに含めたGUIアプリケーションIDを含む所要の起動要求データを前記アプリケーションサーバに送信する起動要求ステップと、この起動要求ステップから受け取った起動要求データのもとに前記アプリケーションサーバの所要とするGUIアプリケーションを起動し、実行する実行ステップと、こののGUIアプリケーションの実行結果を前記Webクライアントに送信し、リモートGUI表示部にGUI部品を表示するステップとを設けるようにすれば、アプリケーションサーバの所要とするGUIアプリケーションを起動し、実行させて所要とするGUI部品を生成しリモートGUI表示部に提供可能となる。
【0016】
また、前記(2)に記載するステップに新たに、GUIアプリケーションの実行時に前記Webアプリケーションサーバ上のリソースを必要とする時、前記アプリケーションサーバがリソース名のもとにリソース取得要求を行うリソース取得要求ステップと、このリソース取得要求を受け取ったWebアプリケーションサーバが要求リソースの存在有無を確認し、リソース有りの通知に基づいて該当するリソースをダウンロードし、前記GUIアプリケーションを実行するステップとを設ければ、必要なリソースをWebアプリケーションサーバから取得し、GUIアプリケーションを実行することが可能である。
【0017】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
【0018】
図1はWebクライアントを含む本発明に係るWebアプリケーションサーバシステムの一実施の形態を示す構成図である。
【0019】
このWebアプリケーションサーバシステムは、Webアプリケーション開発者が大枠のフレームワーク(アプリケーション構成概念)に従い、Webアプリケーションサーバとアプリケーションサーバとを開発し、Webクライアントなどの要求に基づき、アプリケーションサーバのGUIアプリケーションを効率的に運用し、所要とするGUI部品を提供可能とする構成を実現したものであり、具体的には、クライアントユーザがマウスなどのポインティングデバイスを用いて操作可能なグラフィカルなインターフェースであるGUI(Graphical UserInterface),つまりアイコン,ウインドウなどを提供するWebクライアント1と、このWebクライアント1からネットワーク2を通じて送信されてくるリクエスト情報等に基づき、予め定めるプログラムに基づいて動的にHTML情報を生成し、またWebクライアント1側で必要なGUI部品を提供可能とする処理を実行するWebアプリケーションサーバ3と、このWebアプリケーションサーバ3と通信ライン4を介して接続され、Webクライアント1側からWebアプリケーションサーバ3を介してGUI部分を操作可とし、またWebクライアント1側で必要なGUI部品を提供するアプリケーションサーバ5とによって構成されている。
【0020】
Webクライアント1は、リモートGUI表示部11を表示画面の一部に形成するHTML解析表示部12とイベントリクエスト発生部13とが設けられている。
【0021】
なお、Webアプリケーションサーバ3から提供する情報としては、HTML情報の他、CHTML情報、XML情報、HDML情報等のマークアップランゲージ情報が挙げられるが、以下、説明の便宜上、HTML情報、HTML解析表示部12と統一して説明する。
【0022】
このリモートGUI表示部11は、アプリケーションサーバ5で実行されているGUIアプリケーション部51の実行によるGUI部分を表示可能にする機能を有するもので、その表示内容はHTML解析表示部12によって認識され、またクライアントユーザとは無関係にリモートGUI表示部11からHTML解析表示部12を経由してWebアプリケーションサーバ3のWebアプリケーション部31にリクエスト情報を送信する。
【0023】
このHTML解析表示部12は、受信されたリクエスト情報に対し、Webアプリケーションサーバ3のWebアプリケーション部31側で予め定める所定のプログラムに基づいて動的に生成され返送されるHTML情報(レスポンス情報)を受信し、この受信されたHTML情報を解析し表示するとともに、HTML情報のタグ内にリモートGUI表示部11に表現すべきタグが存在する場合には当該GUI表示部11を実行可能に処理する機能をもっている。
【0024】
イベントリクエスト発生部13は、HTML解析表示部12に表示されるHTMLで表現されたGUI部品に対してユーザ入力がなされたときのイベントを認識し、イベント内容をWebアプリケーションサーバ3に送信する機能をもっている。
【0025】
前記Webアプリケーションサーバ3は、Webアプリケーション部31の他、Webアプリケーションデータ管理部32、ユーザセッションデータ管理部33及びGUIアプリケーション起動要求送信部34が設けられている。
【0026】
このWebアプリケーション部31は、前述するようにWebクライアント1のHTML解析表示部12からリクエスト情報を受け付け、動的にHTML情報を生成し、リクエストの順番にGUIアプリケーションID発生部35からGUIアプリケーションIDを取り出し、生成されたHTML情報とともにHTML解析表示部12に返す機能を有する。なお、ここでは、リクエスト情報を初め、必要なデータは、外部記憶装置を用いることなく、Webアプリケーションデータ管理部32、ユーザセッションデータ管理部33に保存可能である。
【0027】
Webアプリケーションデータ管理部32は、Webアプリケーションサーバ3内で共通して使用可能なWebアプリケーションデータを管理する部分であって、Webアプリケーションデータとしては、例えば図2に示すようなデータ名と実体データとが格納されているが、その他必要なデータも格納することが可能である。このWebアプリケーションデータ管理部32の管理データは、何れのユーザでも参照可能である。また、ユーザセッションデータ管理部33は、Webアプリケーションサーバ3内においてユーザごとにデータを登録し管理する部分であって、図3に示すようにユーザセッションを表すセッションID、データ名及び実体データが格納されているが、その他ユーザセッションに関係するデータも格納することができる。このユーザセッションデータ管理部33の管理データは、Webアプリケーションサーバ3内のセッションIDをもたないユーザはアクセスできない。つまり、テーブルに登録されていないユーザはユーザセッションデータ管理部33にアクセスできない。
【0028】
前記GUIアプリケーション起動要求送信部34は、Webクライアント1のリモートGUI表示部11からHTML解析表示部12を経由して発生されるリクエスト情報に基づき、或いはWebアプリケーション部31自身の処理要求に基づき、Webアプリケーション部31から発生される起動要求を受け付け、アプリケーションサーバ5にGUIアプリケーション部51の起動要求を送信する機能をもっている。
【0029】
さらに、Webアプリケーションサーバ3は、Webクライアント1側のイベントリクエスト発生部13から発生されるイベントを受信するイベントリクエスト受信部36、このイベントリクエスト受信部36で受信されたイベントに基づき、アプリケーションサーバ5のGUIアプリケーション部51を操作可能にするGUIアプリケーション操作ライブラリ部37、Webアプリケーション操作部38、リソース取得部39及びリモートGUI中継部40が設けられている。
【0030】
このWebアプリケーション操作部38は、アプリケーションサーバ5からの操作要求に応じて、Webアプリケーションサーバ3が管理するデータ,つまりWebアプリケーションデータ管理部32及びユーザセションデータ管理部33で管理するデータを操作する機能をもっている。リソース取得部39は、同じくアプリケーションサーバ5からリソース取得要求を受けたとき、Webアプリケーションサーバ3上で所持するGUI部品を含むリソースの存在を検索し、所要とするリソースが存在する場合にアプリケーションサーバ5にダウンロードする機能をもっている。さらに、リモートGUI中継部40は、アプリケーションサーバ5とWebクライアント1のリモートGUI表示部11との間の情報の授受に際し、HTTPにてカプセル化して通信を可能にするゲートウェイとしての機能をもっている。
【0031】
前記アプリケーションサーバ5は、Webクライアント1側から操作可能な複数のGUIアプリケーション部51の他、Webアプリケーションサーバ3のGUIアプリケーション起動要求送信部34からGUIアプリケーション起動要求を受け付け、GUIアプリケーション部51を起動するGUIアプリケーション起動部52、Webアプリケーションサーバ3のGUIアプリケーション操作ライブラリ部37からGUIアプリケーション操作要求を受け付け、GUIアプリケーション部51を操作するGUIアプリケーション操作部53、GUIアプリケーション部51からの操作要求に基づき、Webアプリケーション操作部38を介してWebアプリケーションサーバ3上で管理するデータを操作するWebアプリケーション操作ライブラリ部54、GUIアプリケーション部51からリソース取得要求を受けたとき、アプリケーションサーバ3にリソース取得要求を送信するリソース取得要求送信部55及びWebアプリケーションIDを発行するID発行部56などが設けられている。
【0032】
従って、以上のようなWebアプリケーションサーバシステムでは、Webアプリケーション部31から起動要求を発生し、アプリケーションサーバ5の所要とするGUIアプリケーション部51を起動・実行し、その実行結果によって生成された例えばGUI部品をリモート中継部40を介してリモートGUI表示部11に表示でき、またWebクライアント1からのイベント情報に基づいてGUIアプリケーション部51を操作実行できる。
【0033】
さらに、GUIアプリケーション部51からWebアプリケーション操作ライブラリ部54を介してWebアプリケーションサーバ3側で管理するデータを操作したり、GUIアプリケーション部51の実行上必要なリソースをWebアプリケーションサーバ3側から容易に取得し、GUIアプリケーション部51の実行に利用することができる。
【0034】
次に、以上のようなWebアプリケーションサーバシステムの動作ないし本発明に係るアプリケーション制御方法について説明する。
【0035】
このアプリケーションの制御方法としては、Webアプリケーション部31からのGUIアプリケーション部51への制御方法と、GUIアプリケーション部51からWebアプリケーション部31への制御方法とがある。
【0036】
前者の場合としては、Webアプリケーション部31によるGUIアプリケーション部51の起動要求方法とWebアプリケーション部31又はWebクライアント1のリモートGUI表示部11の表示中のGUI部品からGUIアプリケーション部51を操作する方法とが挙げられる。
【0037】
一方、後者の場合としては、GUIアプリケーション部51がWebクライアント1のリモートGUI表示部11にGUI部分を表示する観点から、GUIアプリケーション部の実行上必要なWebアプリケーションサーバ3に存在するリソースをダウンロードする方法とWebアプリケーションデータ管理部32及びユーザセションデータ管理部33にアクセスし、データを操作する方法が挙げられる。
【0038】
以下、アプリケーション制御方法について具体的に説明する。
【0039】
先ず、アプリケーション制御方法を実現するに先立ち、Webアプリケーションサーバ3は、一般的な通信手段に基づき、アプリケーションサーバ5との間で通信路4を接続する。ここで、Webアプリケーションサーバ3とアプリケーションサーバ5との通信路4が確立すると、当該アプリケーションサーバ5から通信路形成に基づき、Webアプリケーション発行部56から例えば通信路接続の順番に発行されるWebアプリケーションIDを取り出し、Webアプリケーションサーバ3に送信する。このWebアプリケーションサーバ3は、WebアプリケーションIDを受け取り、適宜な記憶手段に保存し、以下のアプリケーション制御方法に利用される。
【0040】
(1) Webアプリケーション部31からGUIアプリケーション部51を起動する方法について。
【0041】
以上のようにして通信路4が確立された後、本発明に係るWebアプリケーション生成方法の1つであるWebアプリケーション部31からGUIアプリケーション部51を起動する処理を実行する。
【0042】
▲1▼ Webアプリケーション部31は、リモートGUI表示部11から自動的に発生されるリクエスト情報に対し、或いは自身から直接にWebクライアント1のリモートGUI表示部11を起動するタグを含んだHTMLファイルをWebクライアント1のHTML解析表示部12に送信し、リモートGUI表示部11を起動する。なお、起動タグの中には所定の順番で発行されるGUIアプリケーションID発行部35からのGUIアプリケーションIDを含めて送信する(S1:GUI表示起動ステップ)。
【0043】
▲2▼ また、Webアプリケーション部31は、前述するようにWebクライアント1にHTMLファイルを送信するとともに、GUIアプリケーション部51に対して起動要求を行う。この起動要求は、Webアプリケーション部31がアプリケーションサーバ5の中の何れのGUIアプリケーション部51を起動するかのデータを送信する。具体的な起動要求は、Webアプリケーション開発者ないしユーザが入力するGUIアプリケーション部51を起動するための起点となるモジュール名、GUIアプリケーション部51を起動しようとするWebアプリケーションサーバ3側のユーザセッションデータ管理部33で管理されるユーザセッションを表すセッションID、通信路形成時にアプリケーションサーバ5から取得されるWebアプリケーションID及びクライアント側GUI表示起動時に起動タグに含めたGUIアプリケーションID等の起動要求データをGUIアプリケーション起動要求送信部34に送出する。このGUIアプリケーション起動要求送信部34は、Webアプリケーション部31からの起動要求データを受け付け、アプリケーションサーバ5に送信する(S2:起動要求ステップ)。
【0044】
▲3▼ このアプリケーションサーバ5のGUIアプリケーション起動部52は、起動要求データであるモジュール名、セッションID、WebアプリケーションID、GUIアプリケーションIDに基づき、複数のGUIアプリケーション部51の中から所要とするGUIアプリケーション部51を指定し、当該GUIアプリケーション部51を起動し、GUI部品である例えば表示ボタンを出すための処理を実行させる(S3:GUIアプリケーション実行ステップ)。この実行結果である表示ボタンは、リモートGUI中継部40を経由してWebクライアント1のリモートGUI表示部11に送られ表示される。
【0045】
従って、Webアプリケーション部31は、以上のような一連の処理ステップS1〜S3によりGUIアプリケーション部51を起動・実行し、その実行結果をWebクライアント1のリモートGUI表示部11に表示するので、迅速、かつ、効率的に所要とするGUI部品等をリモートGUI表示部11に表示できる。
【0046】
▲4▼ ところで、指定されたGUIアプリケーション部51の実行時、この実行の際にリソースが必要な場合、Webアプリケーションサーバ3から必要とするリソースをダウンロードする。具体的には、GUIアプリケーション部51は、例えば表示ボタンなどを必要とする場合、表示ボタンなどのリソース名と既にWebアプリケーションサーバ3から受け取っているWebアプリケーションIDとをリソース取得要求送信部55に通知する(S4:リソース取得要求ステップ)。
【0047】
▲5▼ このリソース取得要求送信部55は、GUIアプリケーション部51から受け取ったWebアプリケーションIDに対応するWebアプリケーションサーバ3とのコネクションを検索し、この検索されたコネクションを用いて、Webアプリケーションサーバ3のリソース取得部39に該当するリソースが存在するかを問合せる(S5:リソース問合せステップ)。
【0048】
▲6▼ リソース取得部39は、問合せに基づくリソースがWebアプリケーションサーバ3上に存在するか否かを調べ、問合せ中のリソースが存在するとき、その旨をリソース取得要求送信部55に通知すると、GUIアプリケーション部51は該当リソースをダウンロードする。ここで、GUIアプリケーション部51は、前述する▲3▼で説明するように実行結果として表示ボタンを取得したならば、リモートGUI中継部40を経由してWebクライアント1のリモートGUI表示部11に送信する。
【0049】
なお、必要とするリソースが存在しなかった場合、リソースが存在しなかったことをリソース取得要求送信部55に通知する。
【0050】
従って、以上のような一連の処理によりGUIアプリケーション部51を起動・実行させてGUI部分のWebアプリケーションを生成できるだけでなく、GUIアプリケーション部51の実行に際してリソースが必要な場合、Webアプリケーションサーバ3からリソースをダウンロードし、Webクライアント1に提供することができる。
【0051】
(2) Webアプリケーション部31からGUIアプリケーション部51を操作する方法について。
【0052】
▲1▼ Webアプリケーション部31は、Webクライアント1のリモートGUI表示部11からHTML解析表示部12を介してリクエスト情報を受け、或いはWebアプリケーション部31自身において必要とする場合、ユーザセッションデータ管理部33から所要とするセッションID、GUIアプリケーションID発行部35から発行されるGUIアプリケーションID及び実行命令をGUIアプリケーション操作ライブラリ部37に送出する。
【0053】
▲2▼ ここで、GUIアプリケーション操作ライブラリ部37は、Webアプリケーション部31から受け取ったセッションID、GUIアプリケーションID及び実行命令をアプリケーションサーバ5のGUIアプリケーション操作部53に送信する。
【0054】
▲3▼ GUIアプリケーション操作部53は、セッションID、GUIアプリケーションIDのもとに、複数のGUIアプリケーション部51の中から所要とするGUIアプリケーション部51を検索し、受信された実行命令の命令内容に従って該当するGUIアプリケーション部51を操作する。そして、この操作結果は、GUIアプリケーション操作部53−GUIアプリケーション操作ライブラリ部37を経てWebアプリケーション部31で受け取る。このWebアプリケーション部31は、受け取った操作結果に基づくHTML情報をHTML解析表示部12にレスポンス情報として返送し、またWebアプリケーションデータ管理部32、ユーザセッションデータ管理部33に管理される実体データに反映する。
【0055】
従って、以上のような実施の形態によれば、Webクライアント1からのリクエスト情報に基づき、Webアプリケーション部31は、セッションID、GUIアプリケーションIDのもとに、複数のGUIアプリケーション部51の中から所要とするGUIアプリケーション部51を検索し、実行させて必要な実行結果をHTML情報の形でHTML解析表示部12に返送でき、またWebアプリケーションデータ管理部32、ユーザセッションデータ管理部33に管理される実体データに反映させることができる。
【0056】
(3) GUIアプリケーション部51からWebアプリケーションサーバ3の管理するデータを操作する方法について。
【0057】
▲1▼ GUIアプリケーション部51は、Webアプリケーションサーバ3上の管理するデータを操作する場合、アプリケーションサーバ側ユーザの入力のもとに何れのデータ管理部32,33のデータかを表すデータ種別とデータ名とをWebアプリケーション操作ライブラリ部54に送出する。
【0058】
▲2▼ このWebアプリケーション操作ライブラリ部54は、実行中のGUIアプリケーション部51のWebアプリケーションID及び起動要求時に受け取ったセッションIDを検索する。このWebアプリケーション操作ライブラリ部54は、検索されたWebアプリケーションIDに対応するWebアプリケーションサーバ3とのコネクションを検索する。
【0059】
▲3▼ ここで、Webアプリケーション操作ライブラリ部54は、検索によって得られたコネクションを利用して、セッションIDの他、既に受け取っているデータ種別、データ名をWebアプリケーションサーバ3のWebアプリケーション操作部38に送信する。
【0060】
▲4▼ このWebアプリケーション操作部38は、Webアプリケーション操作部38から送信されてくるデータ種別とデータ名とに基づき、両データ管理部32、33から該当する実体データを探し出し、この実体データの識別可能な参照データをWebアプリケーション操作ライブラリ部54に返送する。このWebアプリケーション操作ライブラリ部54は、実体データに対する参照データをGUIアプリケーション部51に返送する。
【0061】
▲5▼ このGUIアプリケーション部51は、参照データを受け取ると、その参照データに対して実行を行うか否かを判断し、ユーザがデータ操作内容をもつ実行を行う場合、データ操作内容を伴う実行命令をWebアプリケーション操作ライブラリ部54に送信する。ここで、Webアプリケーション操作ライブラリ部54は、参照データと実行命令とをWebアプリケーション操作部38に送信する。
【0062】
▲6▼ Webアプリケーション操作部38は、受信した参照データに基づき、受信した実行命令を実行する。すなわち、Webアプリケーション操作部38は、参照データからWebアプリケーションデータ管理部32、ユーザセッションデータ管理部33に管理される実体データに取り出し、実行命令であるデータ操作内容に従って所要とするデータ操作を実行する。
【0063】
従って、以上のような実施の形態によれば、以上のような一連の処理動作により、GUIアプリケーション部51からWebアプリケーションサーバ3上の管理データを操作することができる。
【0064】
(4) Webクライアント1のHTML部品からGUIアプリケーション部51を操作する方法について。
【0065】
▲1▼ HTML解析表示部12に表示されるHTML部品に対してユーザ入力が発生した場合、イベントクエスト発生部13に通知する。ここで、イベントクエスト発生部13は、既にWebアプリケーション部31からのHTML情報のタグに含まれてイベントを届けたいGUIアプリケーションIDとクライアント1自身のセッションIDとイベント内容とをWebアプリケーションサーバ3に送信する。
【0066】
▲2▼ このWebアプリケーションサーバ3のイベントリクエスト受信部36は、イベント内容を解析することによりイベント実行命令を決定し、受け取ったGUIアプリケーションID、セッションIDとともに、実行命令をGUIアプリケーション操作ライブラリ部37に送出する。
【0067】
▲3▼ このGUIアプリケーション操作ライブラリ部37は、これらGUIアプリケーションID、セッションID、実行命令をリモートGUIアプリケーションサーバ5のGUIアプリケーション操作部53に送信する。
【0068】
▲4▼ GUIアプリケーション操作部53は、GUIアプリケーションID、セッションIDのもとに、所要とするGUIアプリケーション部51を検索し、受信した実行命令に従って実行し、この実行結果をGUIアプリケーション操作部53−GUIアプリケーション操作ライブラリ部37を介してWebアプリケーション部31で受け取り、ここで動的にHTML情報を生成し、Webクライアント1のHTML解析表示部12に表示する。
【0069】
従って、このような実施の形態によれば、Webクライアント1側ユーザがHTML解析表示部12に表示されるHTML情報に対し、何らかのユーザ入力を行ったとき、GUIアプリケーションID、セッションIDのもとにイベントを発生し、Webアプリケーションサーバ3がイベント内容から実行命令を決定し、アプリケーションサーバ5側に送信し、所要とするGUIアプリケーション部51を操作することが可能となる。
【0070】
(5) また、Webアプリケーションサーバ3自体がCPUで構成されている場合、記録媒体(図示せず)に記録されるプログラムに基づき、図4に示すようにWebアプリケーション部31からGUIアプリケーション部51を起動する一連の処理を実行させることができる。
【0071】
すなわち、Webアプリケーションサーバ用コンピュータ3は、記録媒体に記録されるプログラムに基づいて、GUI表示起動機能301を実行する。このGUI表示起動機能301は、Webクライアント1のリモートGUI表示部11を起動するタグを含んだHTMLファイルをWebクライアント1のHTML解析表示部12に送信し、GUI表示部11を起動する。なお、このとき、起動タグの中には所定の順序で発行するGUIアプリケーションIDを含めて送信する。
【0072】
引き続き、コンピュータ3は、GUI表示起動機能301を実行後、起動要求機能302を実行する。この起動要求機能302は、前述のごとくWebクライアント1にHTMLファイルを送信した後、アプリケーションサーバ5の中の何れのGUIアプリケーション部51を起動するかのデータを送信する。具体的には、アプリケーション開発者が入力するGUIアプリケーション部51を起動するための起点となるモジュール名、GUIアプリケーション部51を起動しようとするWebアプリケーションサーバ用コンピュータ3上で管理されるユーザセッションを表すセッションID、通信路4の接続時に取得されたWebアプリケーションID及びクライアント側GUI表示起動時に起動タグに含めたGUIアプリケーションID等の起動要求データをアプリケーションサーバ5に送信する。
【0073】
しかる後、Webアプリケーションサーバ用コンピュータ3は、アプリケーション実行機能303を実行する。このアプリケーション実行機能303は、起動要求データをである起動要求データであるモジュール名、セッションID、WebアプリケーションID、GUIアプリケーションIDに基づき、アプリケーションサーバ5の複数のGUIアプリケーション部51から所要のGUIアプリケーション部51を指定し、当該GUIアプリケーション部51を起動し、GUI部品である例えば表示ボタンを出すための処理を実行させる。この実行結果である表示ボタンは、リモートGUI中継部40を経由させてWebクライアント1のリモートGUI表示部11に送信することを促し、これによりWebクライアント1のリモートGUI表示部11にGUI部品を表示することが可能となる。
【0074】
なお、本願発明は、上記実施の形態に限定されるものでなく、その要旨を逸脱しない範囲で種々変形して実施できる。 また、各実施の形態は可能な限り組み合わせて実施することが可能であり、その場合には組み合わせによる効果が得られる。さらに、上記各実施の形態には種々の上位,下位段階の発明が含まれており、開示された複数の構成要素の適宜な組み合わせにより種々の発明が抽出され得るものである。例えば問題点を解決するための手段に記載される全構成要件から幾つかの構成要件が省略されうることで発明が抽出された場合には、その抽出された発明を実施する場合には省略部分が周知慣用技術で適宜補われるものである。
【0075】
【発明の効果】
以上説明したように本発明によれば、クライアントユーザに提供するためのGUI部品を迅速、効率的に開発でき、また保守性に優れているWebアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラムを提供できる。
【図面の簡単な説明】
【図1】本発明に係るWebアプリケーションサーバシステムの一実施の形態を示す系統構成図。
【図2】図1に示すWebアプリケーションデータ管理部で管理される一部のデータのデータ配列を説明する図。
【図3】図1に示すユーザセッションデータ管理部で管理される一部のデータのデータ配列を説明する図。
【図4】本発明に係るプログラムを説明する処理手順を示す図。
【図5】従来のWebアプリケーションサーバシステムを説明する図。
【符号の説明】
1…Webクライアント、11…リモートGUI表示部、12…HTML解析表示部、13…イベントリクエスト発生部、3…Webアプリケーションサーバ、31…Webアプリケーション部、32…Webアプリケーションデータ管理部、33…ユーザセッションデータ管理部、34…GUIアプリケーション起動要求送信部、36…イベントリクエスト受信部、37…GUIアプリケーション操作ライブラリ部、38…Webアプリケーション操作部、39…リソース取得部、40…リモートGUI中継部、5…アプリケーションサーバ、51…GUIアプリケーション部、52…GUIアプリケーション起動部、53…GUIアプリケーション操作部、54…Webアプリケーション操作ライブラリ部、55…リソース取得要求送信部。
Claims (8)
- アプリケーションサーバ内のGUIアプリケーションを起動・実行し、この実行結果をWebクライアントのマークアップランゲージ解析表示部から起動されるリモートGUI表示部に表示させるWebアプリケーションサーバにおいて、
ユーザ単位のセッションID、第1のデータ名、第1の実体データを組として管理するユーザセッションデータ管理部と、
GUIアプリケーションIDとともに起動タグを含んだマークアップランゲージ情報を前記Webクライアントのマークアップランゲージ解析表示部に送信し、前記リモートGUI表示部を起動するとともに、前記アプリケーションサーバからの通信路形成時に受け取るWebアプリケーションID、前記データ管理部のユーザセッションを表す前記セッションID及び前記GUIアプリケーションIDを含む起動要求データを前記アプリケーションサーバに送信し、所要とするGUIアプリケーションを起動・実行するWebアプリケーション部と、
このGUIアプリケーションの実行時に必要とするリソースを検索し、前記GUIアプリケーションに提供するリソース取得部とを備えたことを特徴とするWebアプリケーションサーバ。 - 請求項1に記載のWebアプリケーションサーバにおいて、前記マークアップランゲージ解析表示部へのユーザ入力に基づいて前記Webクライアントからイベントを届けたいGUIアプリケーションID及び自身のセッションIDを含むイベント内容を受けた場合、前記イベント内容から実行命令を解釈し、当該GUIアプリケーションID及び自身のセッションIDのもとに前記アプリケーションサーバの所要とする前記GUIアプリケーションを実行させ、この実行結果を受け取って前記Webクライアントに提供するGUIアプリケーション操作ライブラリ部を設けたことを特徴とするWebアプリケーションサーバ。
- 前記請求項1又は請求項2に記載する構成と、第2のデータ名及び第2の実体データを組として管理するWebアプリケーションデータ管理部とを有するWebアプリケーションサーバと、
このWebアプリケーションサーバから所定の起動要求用データを受けて起動・実行し、この実行結果のGUI部品を前記リモートGUI表示部に提供するGUIアプリケーションと、外部から入力されるデータ種別及び前記データ名に基づき、当該GUIアプリケーションを介して前記ユーザセッションデータ管理部又は前記Webアプリケーションデータ管理部により管理される前記実体データ又は当該実体データの参照データを取得し、この取得された実体データ又は参照データに対して実行命令を発生し、前記ユーザセッションデータ管理部又は前記Webアプリケーションデータ管理部に管理される実体データを操作する操作ライブラリ部とを有するアプリケーションサーバと
を備えたことを特徴とするWebアプリケーションサーバシステム。 - Webアプリケーションサーバからアプリケーションサーバ内のGUIアプリケーションを起動・実行し、この実行結果をWebクライアントのHTML解析表示部から起動されるリモートGUI表示部に表示するシステムにおいて、
前記WebアプリケーションサーバからGUIアプリケーションID、起動タグを含んだHTML情報を前記Webクライアントのマークアップランゲージ解析表示部に送信し、前記リモートGUI表示部を起動するステップと、
前記Webアプリケーションサーバから前記アプリケーションサーバの通信路形成時に受け取るWebアプリケーションID、ユーザセッションを表すセッションID及び前記GUIアプリケーションIDを含む起動要求データを前記リモートGUIアプリケーションサーバに送信する起動要求ステップと、
この起動要求ステップから受け取った起動要求データのもとに前記アプリケーションサーバの所要とするGUIアプリケーションを起動し、実行する実行ステップと、
このGUIアプリケーションの実行結果を前記Webクライアントに送信し、リモートGUI表示部にGUI部品を表示するステップと
を有することを特徴とするアプリケーション制御方法。 - 請求項4に記載のGUIアプリケーション制御方法において、
前記GUIアプリケーションの実行時に前記Webアプリケーションサーバ上のリソースを必要とする時、前記アプリケーションサーバがリソース名のもとにリソース取得要求を行うリソース取得要求ステップと、
このリソース取得要求を受け取ったWebアプリケーションサーバが要求リソースの存在有無を確認し、リソース有り通知に基づいて該当するリソースをダウンロードし、前記GUIアプリケーションを実行するステップとを有し、
その実行結果を前記Webクライアントに送信することを特徴とするアプリケーション制御方法。 - アプリケーションサーバからWebアプリケーションサーバが管理するWebアプリケーションデータ及びユーザセッションデータを操作するシステムにおいて、
前記Webアプリケーションサーバから起動要求時に送られてくるWebアプリケーションID、ユーザセッションを表すセッションIDを含む所要の起動要求データを前記アプリケーションサーバで受信し保存するステップと、
このアプリケーションサーバ5が起動要求時に保存された起動要求データを用いて、前記Webアプリケーションサーバをアクセスし、Webアプリケーションサーバで管理するWebアプリケーションデータ及びユーザセッションデータを操作するステップと
を有することを特徴とするアプリケーション制御方法。 - Webアプリケーションサーバからアプリケーションサーバ内のGUIアプリケーションを起動・実行し、この実行結果をWebクライアントのマークアップランゲージ解析表示部から起動されるリモートGUI表示部に表示するシステムにおいて、
前記HTML解析表示部からユーザ入力が発生されたとき、前記Webアプリケーションサーバが前記Webクライアントから少なくともGUIアプリケーションIDを含むイベント内容を受け取るステップと、
前記Webアプリケーションサーバが受け取ったイベント内容から実行命令を決定し、少なくともGUIアプリケーションIDとともに前記アプリケーションサーバに送信するステップと、
このアプリケーションサーバがGUIアプリケーションIDのもとに所要とするGUIアプリケーションを選択し、前記実行命令に従って当該GUIアプリケーションを実行するステップと
を有することを特徴とするアプリケーション制御方法。 - アプリケーションサーバ内のGUIアプリケーションを起動・実行し、この実行結果をWebクライアントのマークアップランゲージ解析表示部から起動されるリモートGUI表示部に表示するWebアプリケーションサーバ用コンピュータに、
GUIアプリケーションID、起動タグを含んだマークアップランゲージ情報を前記Webクライアントのマークアップランゲージ解析表示部に送信し、前記リモートGUI表示部を起動するGUI表示起動機能と、前記アプリケーションサーバから通信路形成時に受け取るWebアプリケーションID、ユーザセッションを表すセッションID及び前記GUIアプリケーションID等を含む起動要求データを前記アプリケーションサーバに送信する起動要求機能と、この起動要求能により受け取った起動要求データのもとに前記アプリケーションサーバの所要とするGUIアプリケーションを起動、実行するアプリケーション実行機能とを実現させることを特徴とするプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003016297A JP2004227405A (ja) | 2003-01-24 | 2003-01-24 | Webアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003016297A JP2004227405A (ja) | 2003-01-24 | 2003-01-24 | Webアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004227405A true JP2004227405A (ja) | 2004-08-12 |
Family
ID=32903799
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003016297A Pending JP2004227405A (ja) | 2003-01-24 | 2003-01-24 | Webアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004227405A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011081510A (ja) * | 2009-10-05 | 2011-04-21 | Toshiba Corp | 情報処理装置 |
CN110780861A (zh) * | 2019-09-10 | 2020-02-11 | 广州市金度信息科技有限公司 | 一种基于人工智能应用开发的方法、系统及存储介质 |
-
2003
- 2003-01-24 JP JP2003016297A patent/JP2004227405A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011081510A (ja) * | 2009-10-05 | 2011-04-21 | Toshiba Corp | 情報処理装置 |
CN110780861A (zh) * | 2019-09-10 | 2020-02-11 | 广州市金度信息科技有限公司 | 一种基于人工智能应用开发的方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7421511B2 (ja) | アプリケーションをデプロイするための方法及び装置、電子機器、読み取り可能な記憶媒体並びにコンピュータプログラム | |
US11816492B2 (en) | Third party integration of plugins and widgets | |
US6868454B1 (en) | Distributed-object development system and computer-readable recording medium recorded with program for making computer execute distributed-object development | |
JP4878627B2 (ja) | クライアントスクリプトウェブページに対する初期サーバ側コンテンツレンダリング | |
JP3055970B2 (ja) | オブジェクト指向言語間インタフェース実現方法および装置 | |
US11042387B2 (en) | Deploying cross-platform applications on mobile devices with native and web components | |
CN110083455B (zh) | 图计算处理方法、装置、介质及电子设备 | |
CN106997298B (zh) | 一种应用资源获取方法及装置 | |
JP5171790B2 (ja) | 情報処理装置、通信システムおよびプログラム | |
US20070106946A1 (en) | Method and system for developing interactive Web applications in a unified framework | |
CN103283209A (zh) | 一种应用服务平台系统及其实现方法 | |
WO2002029548A2 (en) | Http transaction monitor with capacity to replay in debugging session | |
JP6940751B2 (ja) | 情報処理装置、情報処理方法および情報処理プログラム | |
US20080288622A1 (en) | Managing Server Farms | |
CN112579097A (zh) | 软件项目构建方法、装置、存储介质及电子设备 | |
CN113296653B (zh) | 一种仿真交互模型构建方法、交互方法及相关设备 | |
Xu et al. | Enhanced service framework based on microservice management and client support provider for efficient user experiment in edge computing environment | |
JP6993577B2 (ja) | インタフェース変換プログラム、インタフェース変換方法および情報処理装置 | |
US20220043546A1 (en) | Selective server-side rendering of scripted web page interactivity elements | |
JPH10187512A (ja) | データベース構築及びデータベース操作用プログラム生成方法 | |
JP5737249B2 (ja) | 負荷シミュレーション装置、シミュレーション装置、負荷シミュレーション方法、シミュレーション方法及びプログラム | |
JP2004227405A (ja) | Webアプリケーションサーバ、Webアプリケーションサーバシステム、アプリケーション制御方法及びプログラム | |
CN114389936A (zh) | 一种跨云多集群部署运维方法、系统、处理器和存储介质 | |
JP2009080587A (ja) | データ転送サーバ | |
JP4708685B2 (ja) | Cliコマンド投入方法/プログラム/プログラム記録媒体/装置、データ記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070605 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070806 |
|
A02 | Decision of refusal |
Effective date: 20070904 Free format text: JAPANESE INTERMEDIATE CODE: A02 |