JP3688914B2 - Web system processing order monitoring apparatus and computer-readable storage medium storing program - Google Patents

Web system processing order monitoring apparatus and computer-readable storage medium storing program Download PDF

Info

Publication number
JP3688914B2
JP3688914B2 JP33449098A JP33449098A JP3688914B2 JP 3688914 B2 JP3688914 B2 JP 3688914B2 JP 33449098 A JP33449098 A JP 33449098A JP 33449098 A JP33449098 A JP 33449098A JP 3688914 B2 JP3688914 B2 JP 3688914B2
Authority
JP
Japan
Prior art keywords
screen
information
web browser
processing
transition
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.)
Expired - Fee Related
Application number
JP33449098A
Other languages
Japanese (ja)
Other versions
JP2000163343A (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
Original Assignee
Toshiba 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 filed Critical Toshiba Corp
Priority to JP33449098A priority Critical patent/JP3688914B2/en
Publication of JP2000163343A publication Critical patent/JP2000163343A/en
Application granted granted Critical
Publication of JP3688914B2 publication Critical patent/JP3688914B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、WWW(World Wide Web)を利用可能なシステム(以下、「Webシステム」という)において実行される処理の実行順序を監視する装置及びプログラムを記録したコンピュータ読み取り可能な記憶媒体に関する。
【0002】
【従来の技術】
図17は、一般的なWebシステムにおけるWebブラウザの表示画面とWebアプリケーションサーバの処理の関係の例を示すブロック図である。
【0003】
Webシステム1の中には、複数の画面にわたってユーザからの入力を順次受け付けながら、一連の業務を実現する機能を有するものがある。図17ではこの複数の画面により一連の業務を提供する例として、ユーザ認証を行い、その後データベースをアクセスする場合を挙げている。
【0004】
この一般的なWebシステム1は、主にWebブラウザ2と、Webサーバ3及びアプリケーションプログラム44を実行するアプリケーションサーバ4を含むWebアプリケーションサーバ5とから構成されている。なお、アプリケーションプログラム44には、ユーザ認証処理4b、データベースアクセス処理4c、アクセス終了処理4dがある。
【0005】
Webブラウザ2の画面は一連の業務を提供するにあたり、画面2a、2b、2c、2dと遷移する。
【0006】
このWebブラウザ2は、それぞれ画面2a〜2cに基づいてWebサーバ3に対してリクエスト(URL)6b〜6dを発信する。また、このリクエスト6b〜6dの応答であるHTML形式のデータ7b〜7dをWebサーバ3から受信し、この受信したHTML形式データ7b〜7dの内容にしたがって画面2b〜2dを形成する。また、このWebブラウザ2は、図示していないクライアント上で動作する。
【0007】
Webアプリケーションサーバ5の第1の要素であるWebサーバ3は、Webブラウザ2からリクエスト6b〜6dを受信した際に、このリクエスト6b〜6dの内容をアプリケーションサーバ4に出力する。そして、アプリケーションサーバ4で実行された処理4b〜4dの結果を用いてWebブラウザ2へのHTML形式データ7b〜7dの送信処理を実行する。
【0008】
Webアプリケーションサーバ5の第2の要素であるアプリケーションサーバ4は、Webブラウザ2から発信された各リクエスト6b〜6dをWebサーバ3経由で入力し、このリクエスト6b〜6dにしたがってそれぞれユーザ認証処理4b、データベースアクセス処理4c、アクセス終了処理4dを実行する。
【0009】
上記のような構成を有するWebシステム1においては、まず画面2aに対してユーザからログイン情報が入力され、このログイン情報を含むリクエスト6bがWebブラウザ2からWebサーバ3を介してアプリケーションサーバ4に入力される。
【0010】
次に、このリクエスト6bにしたがってアプリケーションサーバ4のユーザ認証を行うための処理4bが実行され、この処理4bの実行結果がWebサーバ3に出力される。
【0011】
これにより、Webサーバ3において、HTML形式データ7bが処理4bの実行結果及び先に受信したリクエスト6bに基づいて生成され、このHTML形式データ7bがWebサーバ3からWebブラウザ2に送信され、画面2bがWebブラウザ2に表示される。
【0012】
次に、画面2bに対してユーザからデータベースアクセス命令が入力され、このデータベースアクセス命令を含むリクエスト6cがWebブラウザ2からWebサーバ3に送信され、このWebサーバ3を介してアプリケーションサーバ4に入力される。
【0013】
次に、このリクエスト6cにしたがって、先の処理4bによって得られたユーザ認証結果を用いたデータベースアクセス処理4cが実行され、この処理4cの実行結果がWebサーバ3に出力される。
【0014】
これにより、Webサーバ3において、HTML形式データ7cが処理4cの実行結果及び先に受信したリクエスト6cに基づいて生成され、このHTML形式データ7cがWebサーバ3からWebブラウザ2に送信され、画面2cがWebブラウザ2に表示される。
【0015】
次に、画面2cに対してユーザからアクセス終了命令が入力され、このアクセス終了命令を含むリクエスト6dがWebブラウザ2からWebサーバ3を介してアプリケーションサーバ4に入力される。
【0016】
そして、このリクエスト6dを入力したアプリケーションサーバ4によってデータベースのアクセス終了処理4dが実行される。
【0017】
上記の一般的なWebシステム1において、Webブラウザ2とWebサーバ3の間では、HTTP(Hyper Text Transfer Protocol)にしたがって通信が行われる。
【0018】
このHTTPは、ステートレスなプロトコルであり状態を維持しない。すなわち、HTTPにおいては、それぞれのリクエスト6b〜6dが発信される度にWebブラウザ2とWebサーバ3の間のセッションが張り替えられる。
【0019】
このため、例えば図17に示すように、まずWebブラウザ2からのログイン情報に基づいてユーザの認証を行い、その後この認証情報にしたがってデータベースをアクセスする場合には、ユーザ認証処理4bとデータベースアクセス処理4cの2つの処理を用意しておき、処理4bの中間結果を処理4cに引き渡すための仕組みが必要となる。
【0020】
また、このWebシステム1で提供される一連の業務において、処理4b〜4dが呼び出される順序は予め定められており、ここではユーザ認証処理4b、データベースアクセス処理4c、アクセス終了処理4dの順に処理が実行されなければならない。
【0021】
【発明が解決しようとする課題】
以上説明したような例えば図17に示すようなWebシステム1においては、Webブラウザ2からのリクエスト6b〜6dの発信順序をWebサーバ3及びアプリケーションサーバ4側で制御することが容易ではない。
【0022】
これにより、Webシステム1においては、複数の処理4b〜4dの実行順序が予め定義されていても、この処理4b〜4dの実行順序を保証することができず問題が発生する場合がある。
【0023】
例えばユーザがWebブラウザ2のバックボタンによって先に表示されていた画面を再表示させ、この画面に基づくリクエストを再送信した場合にはアプリケーションサーバ4で実行される処理4b〜4dの順序が予め定義されていた順序と異なることになる。すなわち、図17のWebシステム1において、処理4b及び処理4cを実行した後にユーザがWebブラウザ2のバックボタンをプッシュし、再び画面2aからリクエスト6bが送信されると、このWebシステム1で提供する一連の業務が正常に実行されなくなる。
【0024】
上記のような問題を解消するために、従来においては、例えば一連の処理に対して、決定表などを用いて、起こりうる全ての条件を列挙し、それらに対する処理を定義する方法が利用されている。
【0025】
しかしながら、この決定表等を利用する方法は、条件が少ない場合には有効であるが、条件が多い場合には処理の変更時の改変に手間がかかるという問題がある(三善英行著、「Webサーバによる3層クライアント/サーバシステム開発技法」、ソフト・リサーチ・センター)。
【0026】
また、他の従来方法として、あるプログラムが実行されるときに、その直前に実行されるプログラム名を保持することによって、一連の処理の流れを定義する方法がある。この方法において、あるプログラムはその直前に実行されたプログラム名をチェックし、保持されているプログラム名との関係において適切であれば一連の処理を正常とする。適切でなければ一連の処理を異常とする。
【0027】
しかしながら、プログラム名を保持するこの従来方法においては、一連の業務の中で同一処理の繰り返しを必要とするアプリケーションプログラムが利用される場合には、バックボタンによるWebブラウザの戻り方によっては同じプログラム名が読み出されることになり、処理が適切か否かを区別することができないという問題がある。
【0028】
この問題を解決する方法として、Webブラウザから発信されるリクエストに連続した番号(例えばカウンタで生成)を付加し、サーバ側においてその番号の連続性を確認するという方法が特願平10−288329号公報に開示されている。
【0029】
この連続する番号をリクエストに付加する方法を図17の場合に適用して説明する。
【0030】
この方法では、処理4bが実行されるアプリケーションプログラム44において番号1が記憶される。また、この番号1が付加されたHTML形式データ7bがWebサーバ3からWebブラウザ2に送信される。
【0031】
次に、この番号1の付加されたHTML形式データ7bの内容に基づいて、Webブラウザ2に画面2bが表示される。この画面2bにユーザによる入力がなされると、この画面2bを構成する原因となったHTML形式データ7bに付加されていた番号1が、発信されるリクエスト6cに付加され、アプリケーションサーバ4に送信される。
【0032】
アプリケーションサーバ4では、自己が記憶済みの番号1と、新規に受信されたリクエスト6cに付加されている番号1とが比較され、一致していれば処理順序は正常であると判定され、処理4cが実行される。
【0033】
すると、アプリケーションサーバ4においてカウントアップされた番号2が記憶される。また、この番号2が付加されたHTML形式データ7cがWebサーバ3からWebブラウザ2に送信される。
【0034】
次に、この番号2の付加されたHTML形式データ7cの内容に基づいて、Webブラウザ2に画面2cが表示される。この画面2cにユーザによる入力がなされると、この画面2cを構成する原因となったHTML形式データ7cに付加されていた番号2が、発信されるリクエスト6dに付加され、アプリケーションサーバ4に送信される。
【0035】
アプリケーションサーバ4では、自己が記憶済みの番号2と、新規に受信されたリクエスト6dに付加されている番号2とが比較され、一致していれば処理順序は正常であると判定され、処理4dが実行される。
【0036】
ここで、画面2cを表示中のWebブラウザのバックボタンがユーザによって押され、画面2cが画面2bに戻ってリクエスト6cが発信されると、アプリケーションサーバ4で受信されたリクエスト6cに付加されている番号1は、記憶されている番号2よりも小さくなることから、処理順序が異常であると判定される。
【0037】
しかしながら、この連続する番号をリクエストに付加する方法においては、Webブラウザの表示画面が複数のHTML形式データによって構成される場合に処理順序の適否を判定することができない場合がある。
【0038】
図18は、複数のHTML形式データによって構成されているWebブラウザの表示画面とこのHTML形式データに付加されている連続番号との関係の例を示す図である。
【0039】
この例では、Webブラウザ2の表示画面では、画面8aが親フレーム、画面8b、8cがこの親フレームに基づく子フレームとなっている。また、このWebブラウザ2の表示状態を実現する際には、まずWebサーバ3において親フレームである画面8aに関するHTML形式データ9aの送信処理が実行され、次にこの親フレームの表示内容に基づいて子フレームである画面8bに関するHTML形式データ9bの送信処理が実行され、最後に子フレームである画面8cに関するHTML形式データ9cの送信処理が実行されたとする。
【0040】
この場合、アプリケーションサーバ4で実行された処理順序にしたがいHTML形式データ9aに番号1が付加され、HTML形式データ9bに番号2が付加され、HTML形式データ9cに番号3が付加される。また、このWebブラウザ2の表示状態が実現された際におけるアプリケーションサーバ4には番号3が記憶される。
【0041】
このような図18の表示状態において画面8bへの操作がなされると、この画面8bに基づくリクエストがWebブラウザ2から発信されるが、このリクエストには番号2が付加される。
【0042】
したがって、アプリケーションサーバ4においては、処理順序が正常であるにもかかわらず、記憶済みの番号3とリクエストに付加されている番号2が一致しないため異常であると判定される。
【0043】
本発明は、以上のような実状に鑑みてなされたもので、Webブラウザの画面がサーバへの通知なしに切り換えられた状態を検出することで、Webブラウザの処理順序を管理するWebシステムの処理順序監視装置及びプログラムを記録したコンピュータ読み取り可能な記憶媒体を提供することを目的とする。
【0044】
【課題を解決するための手段】
本発明は、上記目的を達成するために以下のような手段を講じた。
【0045】
第1の発明は、リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムに組み込まれる装置であって、予め設定されており、Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移によりWebブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持する手段と、Webブラウザから発信されたリクエストにしたがってサーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識し、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、サーバで次に実行される処理による前記Webブラウザの表示状態を予測した予測情報を求める予測手段と、この予測情報とWebブラウザから発信されたリクエストにしたがって実際に次にサーバで実行される処理による前記Webブラウザの表示状態との整合性の有無を調べ、サーバで実行される処理の順序の適否を判定する監視手段とを具備するWebシステムの処理順序監視装置である。
【0046】
この第1の発明のWebシステム処理順序監視装置においては、サーバ側において次に実行される処理に関する情報の候補が予測され、実際に次に実行される処理に関する情報がこの予測された候補のいずれかに該当するか否かが判定され、処理の順序の適否が判定される。
【0047】
なお、この発明において、処理に関する情報としては、Webブラウザの表示状態の起因となる処理としてこのサーバが認識している少なくとも一つの処理名を適用することができる。また、Webブラウザの表示状態の起因となる処理により送信された画面データも適用可能である。さらに、Webブラウザの表示状態の起因となる処理を要求したリクエストも適用可能である。
【0048】
このように、この第1の発明においては、サーバに実行要求されている処理が実行許可されている処理か否かにより処理順序の適否が判定される。
【0049】
したがって、Webブラウザの表示画面が複数の画面データから構成される場合であってもWebシステムで実現される処理の順序の適否を判定することができ、Webシステムにおける動作の信頼性を向上させることができる。
【0050】
また、この第1の発明においては、処理の内容を変更する場合には、変更された処理に関する状態遷移情報を書き換えるのみでよいため、処理変更時に必要とされる労力を低減させることができる。
【0051】
第2の発明は、リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムに組み込まれる装置であって、予め設定されており、Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移により前記Webブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持する手段と、サーバで次に実行される処理による前記Webブラウザの表示状態である予測情報を格納する予測情報格納手段と、Webブラウザから発信されたリクエストにしたがってサーバで実行される処理による前記Webブラウザの表示状態を認識し、この認識結果と予測情報格納手段に格納済みの予測情報との整合性の有無を調べ、サーバで実行される処理の順序の適否を判定する監視手段と、監視手段によって処理順序が適していると判定された場合に、Webブラウザから発信されたリクエストにしたがってサーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識し、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、新規の予測情報を求めて予測情報格納手段に格納する予測手段とを具備するWebシステムの処理順序監視装置である。
【0052】
この第2の発明のWebシステム処理順序監視装置においては、サーバで次に実行されると予測される処理に関する情報が、状態予測情報を用いて予測手段によって予測される。そして、実際にサーバで次に実行される処理に関する情報がこの予測された処理に関する情報と一致するか否かが判定される。
【0053】
この第2の発明における動作は、先に説明した第1の発明の動作と同様であり、同様の効果を得ることができる。
【0054】
第3の発明は、第2の発明のWebシステムの処理順序監視装置において、監視手段によって処理順序が適していると判定された場合に、Webブラウザから発信されたリクエストにしたがってサーバで実行された処理による前記Webブラウザの表示状態の履歴情報を格納する実行履歴格納手段をさらに具備したWebシステムの処理順序監視装置である。
【0055】
したがって、第2の発明と同様の作用効果に加えて、処理順序が適切でなくなる直前までの情報が確保されるため、この情報を異常原因の解析、正常状態への回復に用いることができる。
【0056】
第4の発明は、第3の発明のWebシステムの処理順序監視装置において、Webブラウザからリクエストが発信される際に、このWebブラウザに表示されている画面の状態情報を発信する画面状態情報発信手段をさらに具備し、監視手段、画面状態情報発信手段によって発信された画面の状態情報と実行履歴格納手段に格納されている履歴情報とを比較してサーバで実行される処理の順序の適否を判定するWebシステムの処理順序監視装置である。
【0057】
この第4の発明においては、サーバで実行される処理に関する情報とサーバで先に予測された情報との整合性のみではなく、Webブラウザの現在の表示状態と先にサーバで実行された処理に関する情報との整合性も考慮して処理順序の適否が判定される。
【0058】
これにより、第3の発明と同様の作用効果に加えて、処理順序が適切でなくなる前と後で同じリクエストがWebブラウザから発信される場合であっても、適切に処理順序の適否が判定される。
【0059】
第5の発明は、第3の発明又は第4の発明のWebシステムの処理順序監視装置において、監視手段によって処理順序が適していないと判定された場合に、実行履歴格納手段に格納されている履歴情報を用いてWebブラウザの表示画面を再構築する回復処理手段をさらに具備するWebシステムの処理順序監視装置である。
【0060】
この第5の発明においては、処理順序が適切でなくなった場合に、適切でなくなる直前の状態にWebブラウザの状態が回復されるため、操作容易性が向上され、Webシステムにおける動作が一層向上される。
【0061】
第6の発明は、リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムのサーバに、予め設定されており、Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移によりWebブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持させる機能、Webブラウザから発信されたリクエストにしたがってサーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識させ、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、サーバで次に実行される処理による前記Webブラウザの表示状態を予測した予測情報を求めさせる予測機能、この予測情報とWebブラウザから発信されたリクエストにしたがって実際に次にサーバで実行される処理による前記Webブラウザの表示状態との整合性の有無を調べさせ、サーバで実行される処理の順序の適否を判定させる監視機能を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【0062】
また、第7の発明は、リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムのサーバに、予め設定されており、Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移によりWebブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持させる機能、サーバで次に実行される処理による前記Webブラウザの表示状態である予測情報を格納させる予測情報格納機能、Webブラウザから発信されたリクエストにしたがってサーバで実行される処理による前記Webブラウザの表示状態を認識させ、この認識結果と予測情報格納機能によって格納済みの予測情報との整合性の有無を調べさせ、サーバで実行される処理の順序の適否を判定させる監視機能、監視機能によって処理順序が適していると判定された場合に、Webブラウザから発信されたリクエストにしたがってサーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識させ、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、新規の予測情報を求めて予測情報格納機能によって格納させる予測機能を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【0063】
第8の発明は、第7の発明のプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、Webシステムのサーバに、監視機能によって処理順序が適していると判定された場合に、Webブラウザから発信されたリクエストにしたがってサーバで実行された処理による前記Webブラウザの表示状態の履歴情報を格納させる実行履歴格納機能を実現させるためのプログラムをさらに記憶したコンピュータ読み取り可能な記憶媒体である。
【0064】
第9の発明は、第8の発明のプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、Webシステムのサーバに、Webブラウザからリクエストが発信される際に、このWebブラウザに表示されている画面の状態情報を発信させる画面状態情報発信機能を実現させるためのプログラムをさらに記憶し、監視機能は、画面状態情報発信機能によって発信された画面の状態情報と実行履歴格納機能によって格納されている履歴情報とを比較してサーバで実行される処理の順序の適否を判定させるコンピュータ読み取り可能な記憶媒体である。
【0065】
第10の発明は、第8の発明又は第9の発明のプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、Webシステムのサーバに、監視機能によって処理順序が適していないと判定された場合に、実行履歴格納機能によって格納されている履歴情報を用いてWebブラウザの表示画面を再構築させる回復処理機能を実現させるためのプログラムをさらに記憶するコンピュータ読み取り可能な記憶媒体である。
【0066】
この第6乃至第10の発明は、それぞれ上記第1乃至第5の発明と同様の機能をコンピュータに実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
【0067】
この第6乃至第10の発明のようなプログラムを記憶した記憶媒体を用いることによって、上述した機能を有していない装置や、計算機においても、簡単に上述した機能を付加することができる。
【0068】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態について説明する。
【0069】
(第1の実施の形態)
本実施の形態においては、Webブラウザに表示される画面の遷移情報を利用して、事前に実行可能な処理を予測し、Webブラウザから発信されたリクエストにしたがってサーバが処理を実行する前に制約違反を発見する装置について説明する。
【0070】
図1は、本実施の形態に係るWebシステムの処理順序監視装置の構成を示すブロック図であり、図17と同一の部分については同一の符号を付してその説明を省略するかあるいは簡単に説明し、ここでは異なる部分についてのみ詳しく説明する。
【0071】
Webブラウザ2は、Webアプリケーションサーバ10に搭載されているアプリケーションプログラムの処理10aによって送信されたHTML形式ファイル11aの内容にしたがって画面12aを表示している。
【0072】
HTML形式データ11aには「/cgi-bin/10b」という記載13が含まれている。この記載13の内容は、PATH_INFO という変数の値としてリクエスト14bに含まれ、画面12aを表示しているWebブラウザ2から発信される。この「/cgi-bin/10b」という記載13は、アプリケーションプログラムの処理10bを読み出す旨を示す記載である。また、リクエスト14bは、HTML形式データ11a内に記載されているFORMタグによって送信される。
【0073】
Webアプリケーションサーバ10は、先で説明したWebアプリケーションサーバ5と同様の機能を有するが、自己が受信したWebブラウザ2からのリクエストを処理順序監視装置15に送信し、この処理順序監視装置15からの応答を解析し、受信したリクエストにしたがう処理を実行するか又は表示状態の回復を実行する点が異なる。
【0074】
処理順序監視装置15は、Webブラウザ2から発信されたリクエストをWebアプリケーションサーバ10を介して受信し、このWebアプリケーションサーバ10で実行される処理の順序が適切か否かを判定する。そして、処理の順序が適切であると判定した場合にはWebアプリケーションサーバ10に処理実行命令を送信し、処理の順序が適切でないと判定した場合にはWebアプリケーションサーバ10に回復処理情報を送信する。
【0075】
この処理順序監視装置15は、リクエスト解析部16と、実行監視部17と、状態遷移情報保持部18と、予測情報格納部19と、実行履歴格納部20と、回復処理部21とから構成されている。
【0076】
以下、この処理順序監視装置15の各構成要素をそれぞれ詳細に説明する。
【0077】
リクエスト解析部16は、Webブラウザ2から発信されたリクエストを受信し、この受信したリクエストの中から処理の順序を監視する際に必要とされる情報である実行パラメータを抽出し、この実行パラメータを実行監視部17に出力する。なお、この実行パラメータは、具体的にはPATH_INFO 変数値により特定される処理名(プログラム名)、状態変数、クッキーにセットされている情報でありリクエストを発信した画面の状態情報等を含んでいる。
【0078】
次に、状態遷移情報保持部18について説明する。
【0079】
この状態遷移情報保持部18は、Webブラウザ2に表示される各画面が次にどのような画面に変化するかを示す情報である状態遷移情報を保持する。
【0080】
図2は、この状態遷移情報保持部18に保持されている状態遷移情報の内容を示す図である。
【0081】
この図2に示すように、状態遷移情報22は、画面遷移の差分情報であり、主に遷移の起因となる画面情報(Pre情報)と、画面遷移によりWebブラウザ2の表示画面から削除される画面リスト及び新たに追加される画面リストを示す画面遷移情報(Post情報)と、この画面遷移を引き起こす処理名を示す遷移処理情報(AppLogic情報)とからなる。
【0082】
この状態遷移情報22は、各画面への遷移状態毎に定められており、状態遷移情報保持部18に保持されている。
【0083】
図3は、Webブラウザ2の画面が遷移する状態の例とこの画面遷移状態を示す各状態遷移情報22の例を示す概念図である。
【0084】
この例では、画面Aに対する操作の結果、画面X、B、Cが表示される。ここで、画面Xは親フレームであり、画面B、Cは子フレームである。
【0085】
この画面Aから画面X、B、Cへの遷移状態を示す状態遷移情報22aは、遷移前の画面はAであるためPre情報:[A]を含んでいる。また、削除される画面リストはAであり追加される画面リストはX、B、CであるためPost情報:[−[A]、+[X、B、C]]を含んでいる。さらに、画面遷移を引き起こす処理はX0 であるためAppLogic情報:[処理X0 ]を含んでいる。
【0086】
また、画面X、B、Cが表示されている場合に画面Cに操作がなされると、この画面Cに代えて画面Dが表示される。この画面X、B、Cが表示されている場合に画面Cに代えて画面Dが表示される画面遷移状態を示す状態遷移情報22bは、遷移前の画面はCであるためPre情報:[C]を含んでいる。また、削除される画面リストはCであり追加される画面リストはDであるためPost情報:[−[C]、+[D]]を含んでいる。さらに、画面遷移を引き起こす処理はC0 であるためAppLogic情報:[処理C0 ]を含んでいる。
【0087】
また、画面X、B、Cが表示されている場合に画面Bに操作がなされると、画面Eが表示される。この画面Bへの操作により画面X、B、Cから画面Eに切り替わる状態遷移情報22cは、遷移前の画面はBであるためPre情報:[B]を含んでいる。また、削除される画面リストはX、B、Cであり追加される画面リストはEであるためPost情報:[−[X、B、C]、+[E]]を含んでいる。さらに、画面遷移を引き起こす処理はE0 であるためAppLogic情報:[E0 ]を含んでいる。
【0088】
また、画面X、B、Dが表示されている場合に画面Dに操作がなされると、画面Eが表示される。この画面Dへの操作により画面X、B、Dから画面Eに切り替わる状態遷移情報22dは、遷移前の画面はDであるためPre情報:[D]を含んでいる。また、削除される画面リストはX、B、Dであり追加される画面リストはEであるためPost情報:[−[X、B、D]、+[E]]を含んでいる。さらに、画面遷移を引き起こす処理はE0 であるためAppLogic情報:[E0 ]を含んでいる。
【0089】
また、画面X、B、Dが表示されている場合に画面Bに操作がなされると、画面Eが表示される。この画面Bへの操作により画面X、B、Dから画面Eに切り替わる状態遷移情報22eは、遷移前の画面はBであるためPre情報:[B]を含んでいる。また、削除される画面リストはX、B、Dであり追加される画面リストはEであるためPost情報:[−[X、B、D]、+[E]]を含んでいる。さらに、画面遷移を引き起こす処理はE0 であるためAppLogic情報:[E0 ]を含んでいる。
【0090】
上述したように、状態遷移情報保持部18は、このような各画面毎の遷移状態に関する状態遷移情報を保持する。
【0091】
次に、図1で示す実行履歴格納部20について説明する。
【0092】
実行履歴格納部20は、処理順序が適切と判定された場合にWebアプリケーションサーバ10において実行された処理の実行結果である履歴情報を時系列(スタック形式)で格納する部分である。また、この実行履歴格納部20は、Webブラウザ2に表示されなくなる部分の履歴情報の代わりに、新規に表示されることになる部分の履歴情報を記憶する。ここではスタック形式で記憶されているため、前者の履歴情報の上に後者の履歴情報が重ねられる。
【0093】
したがって、この実行履歴格納部20は、処理順序が適切な場合における最新の履歴情報を記憶し、処理順序が適切でない場合における履歴情報は記憶しない。
【0094】
ここで、履歴情報とは、Webブラウザ2の表示状態を構成するためにWebアプリケーションサーバ10が送信したHTML形式データ、及びこれらのHTML形式データを生成する起因となった処理の名称、この処理が実行完了前の第1段階であるか実行完了後の第2段階であるかを示す実行状態からなる情報である。
【0095】
図4は、この実行履歴格納部20の記憶内容とWebブラウザ2の画面との関係の例を示す図である。なお、ここでは、第1段階の履歴情報を点線であらわし、第2段階の履歴情報を実線であらわしている。
【0096】
この図4においては、まず、Webブラウザ2に画面Aが表示され、次に画面X、B、Cが表示され、その後画面X、B、Dが表示される場合が例示されている。
【0097】
画面Aが表示された際には、Webアプリケーションサーバ10における処理A0 が完了されているため、処理A0 に関する履歴情報A1 が第2段階として実行履歴格納部20に格納される(格納状態1)。
【0098】
次に、画面Aを表示しているWebブラウザ2からリクエストが発信されると、処理X0 に関する履歴情報X1 が第1段階として実行履歴格納部20に格納され(格納状態2)、その後Webアプリケーションサーバ10において処理X0 が完了すると、処理X0 に関する履歴情報X1 が第2段階として実行履歴格納部20に格納される(格納状態3)。
【0099】
次に、親フレームである画面Xを表示しているWebブラウザ2から子フレームである画面B、Cの送信処理を求めるリクエストが発信されると、処理B0 、C0 に関する履歴情報B1 、C1 が第1段階として実行履歴格納部20に格納される(格納状態4)。その後、Webアプリケーションサーバ10において処理B0 、C0 が完了すると、処理処理B0 、C0 に関する履歴情報B1 、C1 が第2段階として実行履歴格納部20に格納される(格納状態5)。
【0100】
そして、画面Cに操作がなされると、Webブラウザ2から画面Dの送信処理を求めるリクエストが発信され、処理D0 に関する履歴情報D1 が第1段階として実行履歴格納部20に格納される(格納状態6)。その後、Webアプリケーションサーバ10において処理D0 が完了すると、処理D0 に関する履歴情報D1 が第2段階として実行履歴格納部20に格納される(格納状態7)。
【0101】
図1に示す予測情報格納部19は、Webブラウザ2の次の表示状態を予測情報として格納する。
【0102】
実行監視部17は、処理順序の適否を判定する監視部17aとこの適否の判定に利用される予測情報を求める予測部17bとから構成される。
【0103】
監視部17aは、リクエスト解析部16から入力された実行パラメータの含む処理の内容と予測情報格納部19に記憶されている予測情報との整合性の有無を調べ、処理の順序が適切か否かを判定する。具体的には、リクエストに含まれている処理の内容と履歴情報とを用いて、このリクエスト発信後のWebブラウザ2の表示状態を認識(推定)し、この推定結果と予測情報とを比較して処理順序の適否を判定する。
【0104】
処理の順序が適切な旨の判定がなされた場合には、その旨を示す判定結果を回復処理部21、及び予測部17bに通知する。また、履歴情報を実行履歴格納部20に記憶する。
【0105】
処理の順序が適切でない旨の判定がなされた場合には、その旨を示す判定結果を回復処理部21に通知する。
【0106】
予測部17bは、監視部17aによって処理の順序が適していると判定された場合に、以下のような状態予測処理を実行する。状態予測処理とは、次にリクエストが発信された後に構成されるWebブラウザ2の表示状態を予測する処理である。
【0107】
図5は、予測部17bが予測情報を求める場合の手順を示す図である。この図5に示すWebブラウザ2の画面遷移状態は、図3で説明した状態と同様であるためここでは説明を省略する。
【0108】
Webアプリケーションサーバ10において処理A0 が実行され、Webブラウザ2に画面Aが表示された場合には、実行履歴格納部20に履歴情報A1 が記憶される。
【0109】
予測部17bは、この実行履歴格納部20に記憶されている履歴情報の内容からWebブラウザ2の表示状態を認識する。ここでは、実行履歴格納部20に履歴情報A1 が記憶されているため、表示状態は[A]であると認識する。
【0110】
また、予測部17bは、予測情報格納部19に記憶されている状態遷移情報22の中から、認識された表示状態[A]と同一のPre情報[A]を有する状態遷移情報22aを抽出する。
【0111】
そして、この抽出された状態遷移情報22aの有するPost情報の排除画面リスト[A]の内容を認識された表示状態の内容から排除し、Post情報の追加画面リスト[X、B、C]の内容を認識された表示状態の内容に追加し、予想情報の内容[X、B、C]とする。
【0112】
同様に、Webアプリケーションサーバ10において処理X0 、B0 、C0 が実行され、Webブラウザ2に画面X、B、Cが表示された場合には、実行履歴格納部20に履歴情報X1 、B1 、C1 が記憶される。
【0113】
予測部17bは、この実行履歴格納部20に記憶されている履歴情報の内容からWebブラウザ2の表示状態を認識する。ここでは、実行履歴格納部20に履歴情報X1 、B1 、C1 が記憶されているため、表示状態は[X、B、C]であると認識する。
【0114】
また、予測部17bは、予測情報格納部19に記憶されている状態遷移情報22の中から、認識された表示状態[X、B、C]のいずれかと同一のPre情報を有する状態遷移情報を抽出する。ここでは、それぞれPre情報[C]、[B]を含む状態遷移情報22b、22cが抽出される。
【0115】
そして、この抽出された状態遷移情報22bの有するPost情報の排除画面リスト[C]の内容を認識された表示状態の内容から排除し、Post情報の追加画面リスト[D]の内容を認識された表示状態の内容に追加し、予想情報の内容[X、B、D]とする。
【0116】
一方、抽出された状態遷移情報22cの有するPost情報の排除画面リスト[X、B、D]の内容を認識された表示状態の内容から排除し、Post情報の追加画面リスト[E]の内容を認識された表示状態の内容に追加し、予想情報の内容[E]とする。
【0117】
以下、Webアプリケーションサーバ10において処理X0 、B0 、D0 が実行され、Webブラウザ2に画面X、B、Dが表示された場合も同様であり、Webアプリケーションサーバ10において実行された処理に関する情報(ここでは履歴情報)からWebブラウザ2に表示状態となっている画面を認識し、この認識されたWebブラウザ2の表示状態[X、B、D]と状態遷移情報22d、22eとから予測情報[E]が求められる。
【0118】
次に、図1に示す回復処理部21について説明する。
【0119】
この回復処理部21は、実行監視部17から処理順序が適切である旨の通知を入力した場合に、リクエストで示される処理を実行する旨の処理実行命令をWebアプリケーションサーバ10に送信し、処理を実行させる。
【0120】
一方、実行監視部17から処理順序が適切でない旨の通知を入力した場合には、実行履歴格納部20の内容をアクセスし、最上段に位置する履歴情報の有するHTML形式データを読み込んで回復処理情報としてWebアプリケーションサーバ10に送信し、回復処理を実行させる。これにより、Webブラウザ2上では、処理順序が適切でなくなる直前のWeb画面が再構築される。
【0121】
ここで、回復処理部21は、実行履歴格納部20のアクセス時に、最上段に第1段階の履歴情報があればこの第1段階の処理の実行が終了されて第2段階になってからHTML形式データを読み出す。
【0122】
なお、ここでは、画面を再構築するために最上段の履歴情報の有するHTML形式データを利用するとしたが、これに代えて最上段の履歴情報の有する処理名の再実行命令をWebアプリケーションサーバ10に送信するとしてもよい。
【0123】
上記のような構成を有する本実施の形態に係る処理順序監視装置15の動作について、処理順序が適切な場合、バックボタンが押されて処理順序が不適切となった場合、リロードボタンが押されて処理順序が不適切となった場合、回復処理を実行する場合を例に挙げて以下に説明する。
【0124】
まず、第1の動作例として処理順序が適切な場合について説明する。
図6は、適切な順序によるオペレーション時の画面遷移状態と処理順序監視装置内の情報の関係を示す図である。なお、この図6において、Webブラウザ2の画面遷移状態は図3、5の場合と同様であるため説明を省略する。
【0125】
まず、Webアプリケーションサーバ10において処理A0 が実行される。
すると、Webアプリケーションサーバ10からWebブラウザ2へHTML形式データが送信され、Webブラウザ2上に画面Aが表示される。
【0126】
処理順序監視装置15においては、この処理A0 の実行終了により第2段階の履歴情報A1 が実行履歴格納部20に記憶され、この履歴情報A1 に基づいてWebブラウザ2の表示状態が[A]であると認識される。
【0127】
また、この認識されたWebブラウザ2の表示状態[A]と状態遷移情報22とから予測情報[X、B、C]が求められ、予測情報格納部19に記憶される。
【0128】
次に、処理X0 の実行命令をPATH_INFO 変数として含むリクエストが画面Aを表示するWebブラウザ2から発信され、処理X0 の実行命令がWebアプリケーションサーバ10及び処理順序監視装置15に通知される。
【0129】
処理順序監視装置15においては、予測情報格納部19に記憶されている予測情報[X、B、C]が実行監視部17によって読み出される。
【0130】
また、Webブラウザ2に直前まで表示されていた画面Aと予測情報[X、B、C]とから、Webブラウザ2に表示されていた画面Aは画面X、B、Cに変更される旨が認識され、現状においては未だ処理X0 しか要求されていないため、表示状態の遷移要求が未完であると判定される。
【0131】
次に、処理X0 がWebアプリケーションサーバ10によって実行され、Webアプリケーションサーバ10からWebブラウザ2に画面X用のHTML形式データが送信され、画面Xが表示される。
【0132】
ここで、Webブラウザ2に表示された画面X用のHTML形式データには、子フレームである画面B、Cの要求リクエストがこの順に記載されている。ゆえに、この画面Xを表示するWebブラウザ2から、処理B0 の実行命令を含むリクエスト及び処理C0 の実行命令を含むリクエストとが順に発信される。
【0133】
処理B0 、C0 の実行命令はWebアプリケーションサーバ10及び処理順序監視装置15に通知される。
【0134】
処理順序監視装置15においては、Webブラウザ2に表示されていた画面Aが画面X、B、Cに変更される旨が認識されており、処理X0 、B0 、C0 が要求されていないため、表示状態の遷移要求が完了であると判定される。
【0135】
これにより、Webアプリケーションサーバ10において画面構成のために実行される処理はX0 、B0 、C0 となる。
【0136】
処理順序監視装置15においては、処理X0 、B0 、C0 の実行命令と実行履歴格納部20の内容とから、処理X0 、B0 、C0 の実行命令を含むリクエスト発信後のWebブラウザ2の表示状態[X、B、C]が認識される。
【0137】
また、認識されたWebブラウザ2の表示状態[X、B、C]と予測情報[X、B、C]とが一致するため、実行監視部17の監視部17aにおいて処理順序が適切であると判定され、処理実行命令が処理順序監視装置15からWebアプリケーションサーバ10に送信される。
【0138】
これにより、Webブラウザ2に画面X、B、Cが表示されることになる。
さらに、処理X0 、B0 、C0 の実行結果として履歴情報X1 、B1 、C1 が実行履歴格納部20に記憶される。
【0139】
さらに、処理順序が適切であるため、認識されたWebブラウザ2の表示状態[X、B、C]と状態遷移情報22とから新規の予測情報[X、B、D]、[E]が求められ、予測情報格納部19に記憶される。
【0140】
次に、処理D0 の実行命令を含むリクエストが画面X、B、Cを表示するWebブラウザ2から発信され、処理D0 の実行命令がWebアプリケーションサーバ10及び処理順序監視装置15に通知される。
【0141】
処理順序監視装置15においては、予測情報格納部19に記憶されている予測情報[X、B、D]、[E]が実行監視部17によって読み出される。
【0142】
また、リクエストに含まれている処理D0 の実行命令と履歴情報の内容とから、このリクエスト発信後にWebブラウザ2で実現される表示状態[X、B、D]が推定される。
【0143】
この推定された表示状態[X、B、D]と読み出した予測情報の一方[X、B、D]が一致するため、処理順序監視装置15からWebアプリケーションサーバ10に処理実行命令が送信され、Webアプリケーションサーバ10において処理D0 が実行される。
【0144】
これにより、Webブラウザ2に画面X、B、Dが表示される。
【0145】
処理順序監視装置15においては、処理D0 によって得られる履歴情報D1 が実行履歴格納部20に記憶され、この実行履歴格納部20の記憶内容と状態遷移情報22とから予測情報[E]が求められる。
【0146】
以下、同様に、Webブラウザ2からのリクエストに含まれている処理に関する情報と履歴情報とによりWebブラウザ2の表示状態が処理順序監視装置15の実行監視部17によって認識され、この認識結果が先において予測され予測情報格納部19に記憶されている予測情報と一致するか否かが判定されながら、順次処理が進められる。
【0147】
なお、認識されたWebブラウザ2の表示状態と予測情報が一致する場合には、この認識されたWebブラウザ2の表示状態と状態遷移情報とから、新規の予測情報が求められる。
【0148】
次に、第2の動作例としてバックボタンが押されて処理順序が不適切となった場合について説明する。
【0149】
図7は、バックボタンの押されたオペレーション時の画面遷移状態と処理順序監視装置15内の情報の関係を示す図である。
【0150】
この図7において、バックボタンが押されるまでの画面遷移及び情報の内容は図6の場合と同様である。
【0151】
すなわち、この図7において画面Aから画面X、B、Dが表示されるまでの遷移状態は図6の場合と同様である。また、リクエストが示す処理の内容と履歴情報とから処理順序監視装置15で認識されるWebブラウザ2の表示状態も、画面Aから画面X、B、Dに遷移するまでの間は図6と同様である。さらに、この処理順序監視装置15で認識されたWebブラウザ2の表示状態から予測された予測情報も図6の場合と同様である。
【0152】
画面X、B、Dの表示されているWebブラウザ2においてバックボタンが押された場合、Webブラウザ2には画面X、B、Cが再び表示される。
【0153】
ここで、画面Cに基づいて再び処理D0 の実行命令を含むリクエストがWebブラウザ2から発信されると、この処理D0 は先で予測された予測情報[E]で示されるような画面Eの表示処理ではないため、処理順序監視装置15の実行監視部17によって処理順序が適切でないと判定される。
【0154】
このように、バックボタンが押されたために処理に不具合の生じる具体的な例を、銀行の送金処理を用いて説明する。
【0155】
この例において、画面Cは現在の口座の残高を表示しかつオペレータが送金額を指定するための画面とする。また、処理D0 は、指定された金額を口座から引き落とす処理とする。さらに、画面Dは、引き落とした結果を表示しかつ送金先口座を指定する画面とする。さらに、処理E0 は、指定された送金先口座に引き落とされた金額を加える処理とする。
【0156】
この場合に、各処理C0 、D0 、E0 が正常な流れで実行されれば、送金元と送金先の口座の合計額は一定である。ところが、先で述べたように、画面X、B、Dから画面X、B、Cにバックボタンによって表示が変更された場合には、画面Cを構成するHTML形式データは、既にWebブラウザ2を搭載するクライアントにキャッシュされたものが利用されるため、Webアプリケーションサーバ10に処理が戻された旨が通知されず、送金元と送金先の口座の合計額が一定でなくなる。
【0157】
例えば、送金元残高1000、送金先残高1000であり、画面X、B、Cで送金額500が指定されたとする。この場合、処理D0 により送金元残高が1000−500=500となり、画面X、B、DがWebブラウザ2に表示される。
【0158】
ここで、バックボタンが押されて再び画面X、B、Cに戻り、送金額300が指定されたとすると、Webアプリケーションサーバ10において既に送金元残高が500と変更されているため、送金元残高が500−300=200となってしまい、その後送金額300が送金先残高に加えられて1300となる。当初は送金元残高1000と送金先残高1000の合計額2000であるが、処理終了後には送金元残高200と送金先残高1300の合計額は1500となるため、処理に異常が発生する。
【0159】
本実施の形態に係る処理順序監視装置15を適用すると、バックボタンが押される前に記憶されている予測情報は[E]であるが、次にWebブラウザ2から受信するリクエストは処理D0 の実行命令を含んでいるため予測情報と整合性がなく、処理順序の異常を検出できる。
【0160】
すなわち、バックボタンが押されて再び画面X、B、Cに戻り、送金額300が指定された際に、処理順序が適切でないと判定され、回復処理が実行される。
【0161】
次に、第3の動作例としてリロードボタンが押されて処理順序が不適切となった場合について説明する。
【0162】
図8は、リロードボタンの押されたオペレーション時の画面遷移状態と処理順序監視装置15内の情報の関係を示す図である。この図8において、バックボタンが押されるまでの画面遷移及び情報の内容は図6、7の場合と同様である。
【0163】
Webブラウザ2によるリロードとは、Webブラウザ2に表示されている画面に対応するリクエストを再実行する機能である。
【0164】
例えばこの図8において、画面X、B、Dを表示するWebブラウザ2のページ全体のリロードが指定されると、まず処理X0 の実行命令を含むリクエストがWebブラウザ2からWebアプリケーションサーバ10に送信される。Webアプリケーションサーバ10では処理X0 が再実行され、その結果がWebブラウザ2に送信され画面Xが表示される。画面Xは親フレームであるため、その子フレーム表示のための処理B0 、D0 も実行され、結果としてWebブラウザ2に画面X、B、Dが再表示される。
【0165】
また、リロードはフレーム単位でも実行可能であり、例えば画面X、B、Dが表示されているWebブラウザ2において画面Dの部分が指定されてリロードされると再び処理D0 の実行命令を含むリクエストが発信される。
【0166】
このようなリロード処理により、Webアプリケーションサーバ10における一連の処理順序が変更されることになる。
【0167】
しかしながら、本実施の形態に係る処理順序監視装置15を適用すると、画面X、B、Dを表示しているWebブラウザ2において画面Xがリロードされ、処理X0 の実行命令を含むリクエストが発信されたとしても、処理順序監視装置15に記憶されている予測情報の中にこの処理X0 と整合性を有するものがないため、処理順序が適切でないと判定される。
【0168】
また、表示状態T3において画面Dがリロードされ、処理Dの実行命令を含むリクエストが発信されたとしても、この処理Xを含む予測情報がないため、処理順序の異常が検出される。
【0169】
最後に、第4の動作例として回復処理を実行する場合について説明する。
【0170】
図9は、回復処理時の画面遷移状態と処理順序監視装置15における実行履歴格納部20の内容との関係を示す図であり、バックボタンが押されてエラーが発生するまでの画面遷移状態は図7の場合と同様である。
【0171】
先にも述べたように、実行履歴格納部20には適切な順序で処理が実行された際の実行結果である履歴情報が記憶されており、この履歴情報にはWebブラウザ2に送信されたHTML形式データ(画面情報)が含まれている。
【0172】
また、先に述べたように、実行履歴は2段階で格納される。第1段階は、リクエストを受信した場合であり、第2段階は処理が実行され画面情報が送信完了後に記憶される。
【0173】
画面AがWebブラウザ2に表示された場合には、実行履歴格納部20に画面A用のHTML形式データを含む履歴情報A1 が第2段階として格納される。
【0174】
画面X、B、CがWebブラウザ2に表示された場合には、実行履歴格納部20に画面X、B、C用のHTML形式データを含む履歴情報X1 、B1 、C1 が第2段階として格納される。
【0175】
画面X、B、DがWebブラウザ2に表示された場合には、実行履歴格納部20に画面D用のHTML形式データを含む履歴情報D1 が、履歴情報C1 に代えて第2段階として格納される。
【0176】
ここで、バックボタンが押されて画面X、B、Dが画面X、B、Cに切り換えられ、再び処理D0 の実行命令を含むリクエストが送信されが、処理順序監視装置15では処理E0 のリクエストを期待しているため、処理順序が適切でない旨が実行監視部17から回復処理部21に通知される。
【0177】
回復処理部21では、実行監視部21からエラー発生の通知を受信すると、実行履歴格納部20の最上段(最新)に記憶されている履歴情報が含むHTML形式データとWebブラウザ2の表示画面のうち、整合性のない部分のみのHTML形式データが送信される。
【0178】
ここでは、回復前と回復後との表示内容において、画面Dが異なるため、この画面DのためのHTML形式データが処理順序監視装置15からWebアプリケーションサーバ10を介してWebブラウザ2に送信される。
【0179】
これにより、バックボタンが押される前の画面X、B、Dが再びWebブラウザ2に表示され、異常の復旧がなされる。
【0180】
なお、各履歴情報の内容のうち、第2段階になっていないものに関しては、この処理が第2段階となるような処置を行い、第2段階となった時点でHTML形式データが送信される。
【0181】
例えば、画面X、B、Dの画面構成中にストップボタンが押され、処理D0 が第1段階(処理完了前)であり、この状態でWebブラウザ2によってリロードされた場合にはエラーが発生する。
【0182】
この場合、画面X、Bの構築には履歴情報格納部の内容をそのまま利用するが、画面Dに構築に関しては処理D0 を再実行して第2状態とし、この処理結果であるHTML形式データを送信する。
【0183】
以上説明したように、本実施の形態に係る処理順序監視装置15においては、Webブラウザ2に表示される画面の遷移情報から、Webアプリケーションサーバ10で次に実行可能な処理を予測した予測情報が抽出され、実際にWebアプリケーションサーバ10に実行要求された処理と予測情報とから処理順序の制約違反が検出される。
【0184】
これにより、フレームのように複数の画面が組み合わされてWebブラウザ2に表示される場合や、リロードにより同一の処理が繰り返される場合であっても、処理順序が適切でない旨の検出が可能である。
【0185】
したがって、Webシステムの一連の業務に係る処理を適切な順序で実行させることができ、Webシステムの動作の信頼性を向上させることができる。
【0186】
また、本実施の形態に係る処理順序監視装置15においては、適切な順序で実行された処理の実行結果が、処理順序が不適切となった場合の訂正用情報として予め記憶されており、実際に処理順序が不適切となった場合にこの訂正用の情報を用いて正常なオペレーションまで効率よくかつ矛盾なく誘導させることができる。
【0187】
ゆえに、Webシステムの動作の信頼性が向上される。
【0188】
(第2の実施の形態)
本実施の形態においては、クッキー(Cookie)の機能を備えたWebシステムで利用される処理順序監視装置について説明する。
【0189】
先に述べた第1の実施の形態に係る処理順序監視装置15では、Webブラウザ2からのリクエストにしたがって実行される処理に関する情報の内容と予め予測された予測情報とが比較されて処理順序の適否が判定される。
【0190】
しかしながら、Webブラウザ2に表示されている一部の画面は、Webブラウザ2の表示状態が変化しても変更されない場合がある。
【0191】
例えば、先で説明した図5の場合には、Webブラウザ2の表示状態が画面X、B、Cから画面X、B、Dに切り換えられたとしても、画面Bは変更されていない。また、この画面X、B、Cが表示されている場合であっても、画面X、B、Dが表示されている場合であっても、処理順序監視装置15には予測情報[E]が保持されている。
【0192】
したがって、画面Bに基づいてWebブラウザ2から処理E0 の実行命令を含むリクエストが発信された場合に、正常な処理順序にしたがい画面X、B、Dを表示するWebブラウザ2から発信されたリクエストなのか、バックボタンが押されて表示状態が画面X、B、Dから画面X、B、Cに戻って発信されたリクエストなのかを区別することができない。ゆえに、バックボタンが押されて処理順序が適切でない旨の検出がなされない場合がある。
【0193】
そこで、本実施の形態に係る処理順序監視装置においては、リクエスト発信時のWebブラウザの画面情報をクッキーにセットしてサーバに送信することにより、リクエストの発信されたWebブラウザの表示状態を認識し、処理順序の適否を判定する。
【0194】
図10は、クッキーの機能を有するWebシステムの概略を示すブロック図である。
【0195】
クッキーとは、Webブラウザ23側に情報を保存するための仕組みであり、Webアプリケーションサーバ24にリクエストが発信される度にこの保持された情報がWebアプリケーションサーバ24側に送信される。
【0196】
すなわち、Webブラウザ23にはクッキー用の記憶装置23aが備えられており、例えばWebアプリケーションサーバ24から受信した情報やWebブラウザ23側で得られた情報等のような所定の情報がこのクッキー用の記憶装置23aに記憶される。そして、このWebブラウザ23からWebアプリケーションサーバ24にリクエストが送信される度に、この記憶装置23aに記憶された所定の情報がクッキー(HTTP_COOKIE )にセットされ、Webアプリケーションサーバ24に送信される。
【0197】
図11は、本実施の形態においてWebアプリケーションサーバ24からWebブラウザ23に送信されるHTML形式データの例を示す図であり、画面Aを構成するためのHTML形式データ25を例示している。
【0198】
HTML形式データ25には、PATH_INFO 変数に処理X0 の実行命令を含むリクエストを送信する旨の記載25aがある。
【0199】
また、このHTML形式データ25には、予めWebブラウザ23の画面情報を収集しクッキーにセットするための処理が組み込まれている。これは、例えばJavaScriptのようなスクリプト言語を用いて定義されるものであり、図11におけるsendBrowserStatus(this) の記載25bが該当する。このsendBrowserStatus(this) は、Webブラウザ23からWebアプリケーションサーバ24への送信ボタン(Submit)が押されたときに起動するスクリプトであり、Webブラウザ23に表示されている画面Aをクッキーにセットし、現在の表示状態としてWebアプリケーションサーバ24に通知する。
【0200】
本実施の形態に係る処理順序監視装置は、クッキーにセットされた画面情報が、Webアプリケーションサーバ24で実行された先の処理の結果として実行履歴格納部に記憶された履歴情報により構成されたものか否かを判定することでWebブラウザ23の表示状態が適切か否かを判定する。そして、表示状態が適切であると判定された場合に、リクエストに含まれる処理命令の内容と予測情報との整合性を判定する。整合性がある場合には処理順序が適切であると判定され、整合性がない場合には処理順序が適切でないと判定されて回復処理が実行される。
【0201】
図12は、本実施の形態においてバックボタンの押されたオペレーション時の画面遷移状態と処理順序監視装置内の情報の関係を示す図であり、画面Aから画面X、B、Dが表示されるまでの画面の状態及び処理順序監視装置内の情報は図5の場合と同様である。
【0202】
ここで、画面X、B、Dが表示されている場合においてバックボタンが押されて画面X、B、Cに戻ったとする。Webブラウザ23では、この戻った際に表示されている画面情報[X、B、C]が記憶装置23aに記憶される。
【0203】
画面Bへの操作により、画面情報[X、B、C]がクッキーにセットされ、処理E0 の実行命令を含むリクエストがWebブラウザ23から発信される。
【0204】
これにより、Webアプリケーションサーバ24及び処理順序監視装置において、クッキーにセットされたWebブラウザ23の現在の画面情報[X、B、C]と、受信したリクエストに含まれている次の処理の指定E0 がリクエスト解析部によって抽出される。
【0205】
そして、実行監視部において、実行履歴格納部に記憶されている履歴情報から現状の画面情報[X、B、D]が推定され、この推定された画面情報[X、B、D]とクッキーにセットされていた現在の画面情報[X、B、C]とが比較される。
【0206】
ここでは、実行履歴格納部の内容から求まる画面情報[X、B、D]とクッキーにセットされていた現在の画面情報[X、B、C]が一致しないため、実行監視部から回復処理部に処理順序が適切でない旨が通知される。
【0207】
以上説明したように、本実施の形態に係る処理順序監視装置においては、クッキーにWebブラウザ23の表示状態を示す情報がセットされて発信されるため、バックボタンによって処理順序に異常が発生する前後で同一の画面が表示されていても、処理順序の適否を判定することができる。
【0208】
したがって、第1の実施の形態に係る処理順序監視装置と同様の作用効果に加えて、Webシステムの一連の業務に係る処理の順序を一層適切に実行させることができ、Webシステムの動作の信頼性を向上させることができる。
【0209】
なお、上記各実施の形態に係る処理順序監視装置においては、リクエストで指定されている処理が実行された後にWebブラウザに表示される画面が推定され、この推定された画面と先で予測された予測情報との整合性によって処理順序の適否が判定されている。しかしながら、これに限定されるものではなく、Webアプリケーションサーバで実行される処理に関する様々な情報(処理実行を指定するリクエスト、処理の結果得られる画像情報、処理の名称等)により整合性の有無を判定することができる。
【0210】
また、上記各実施の形態に係る処理順序監視装置は、WebサーバとアプリケーションサーバとからなるWebアプリケーションサーバに接続されている場合を例として説明しているが、これに限定されるものではなく、Webアプリケーションサーバ、Webサーバ、アプリケーションサーバ等に内蔵させてもよい。
【0211】
さらに、Webサーバの有するCGI(Common Gateway Interface)に本発明の機能を実現させてもよい。さらに、Webサーバと送受信可能に接続されるアプリケーションサーバの一機能としてこの処理順序監視装置と同様の機能を含めてもよい。
【0212】
また、上記各実施の形態で説明した処理順序監視装置の機能は、コンピュータに実行させることのできるプログラムとして、例えば磁気ディスク(フロッピーディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリなどの記憶媒体に書き込んで適用したり、通信媒体により伝送して各種装置に適用することも可能である。この処理順序監視装置の機能を実現するコンピュータは、記憶媒体に記録されたプログラムを読み込み、プログラムによって動作が制御されることにより、上述した処理を実行する。
【0213】
【実施例】
(実施例1)
ここでは、WWWによる書籍購買システムに本発明を適用した場合の例について具体的に説明する。
【0214】
図13は、本発明を適用していない書籍購買システムの動作例を示す図である。
【0215】
まず、Webブラウザ2にメニュー画面26が表示されており、ユーザによって書籍購入が選択される。すると、Webブラウザ2に購入候補リスト画面27、選択リスト画面28が表示される。
【0216】
ユーザによって購入候補リスト画面27に表示されている書籍がクリックされると、選択リスト画面281にそのクリック内容が表示される。
【0217】
ユーザによって計算ボタン28aが押されると、選択リスト画面281に表示されていた内容に基づいて代金演算処理が実行され、Webブラウザ2に精算用画面29が表示され、この精算用画面29に代金が表示される。
【0218】
ユーザによって精算用画面29の内容が確認され、OKボタン29aが押されると、Webアプリケーションサーバにおいて購入データの登録処理が実行され、謝辞画面30が表示される。
【0219】
ユーザによって謝辞画面30の「ここ」という部分がクリックされると、Webアプリケーションサーバにおいてメニュー画面表示処理が実行され、全ての画面が変更されて再びメニュー画面26が表示される。
【0220】
ここで、謝辞画面30が表示されているWebブラウザ2においてバックボタンが押されると、再び精算用画面29が表示され、さらに精算用画面29のOKボタン29aが押されると、Webアプリケーションサーバにおいて購入データの登録処理が実行され、同様の書籍が2度注文されてしまう。
【0221】
図14は、本発明を適用した書籍購買システムの動作例を示す図である。
【0222】
まず、Webブラウザ2にメニュー画面26が表示されており、ユーザによって書籍購入が選択される。すると、Webブラウザ2に購入候補リスト画面27、選択リスト画面28が表示される。
【0223】
ユーザによって購入候補リスト画面27に表示されている書籍がクリックされると、選択リスト画面281にそのクリック内容が表示される。
【0224】
ユーザによって計算ボタン28aが押されると、選択リスト画面28に表示されていた内容に基づいて代金演算処理が実行され、Webブラウザ2に精算用画面29が表示され、この精算用画面29に代金が表示される。ここで、本発明の処理順序監視装置では、次に購入データの登録処理が実行される旨の予測情報が得られる。
【0225】
ユーザによって精算用画面の内容が確認され、OKボタン29aが押されると、Webアプリケーションサーバに対して購入データの登録処理が要求される。この購入データの登録処理は、先の予測情報と一致するため実行が許可され、謝辞画面が表示される。ここで、本発明の処理順序監視装置では、次にメニュー画面表示処理が実行される旨の予測情報が得られる。
【0226】
ここで、謝辞画面が表示されているWebブラウザ2においてバックボタンが押されると、再び精算用画面29が表示され、さらに精算用画面29のOKボタン29aが押されたとする。
【0227】
この場合、Webアプリケーションサーバに対して購入データの登録処理が要求されるが、この購入データの登録処理は、メニュー画面表示処理が実行される旨の予測情報と一致しないため、本発明の処理順序監視装置において処理順序が適切でない旨の判定がなされる。
【0228】
(実施例2)
ここでは、先の実施例1とは別に、クッキーを用いてエラーを検出する手法について具体的に説明する。
【0229】
図15は、本発明を適用していない書籍購買システムの動作例を示す図である。
【0230】
まず、Webブラウザ23に購入候補リスト画面27、選択リスト画面28が表示される。
【0231】
ユーザによって購入候補リスト画面27に表示されている国語辞典がクリックされると、選択リスト画面282にそのクリック内容が表示される。
【0232】
さらに、ユーザによって購入候補リスト画面27に表示されている数学事典がクリックされると、選択リスト画面283にそのクリック内容が表示され、国語辞典と数学事典の購入要求が表示される。
【0233】
この表示状態において、Webブラウザのバックボタンが押されると、購入候補リスト画面37及び選択リスト画面282が再表示される。これにより、Webブラウザには、選択リスト画面282に国語辞典の購入要求が表示される。
【0234】
ここで、ユーザによって新たに購入候補リスト画面27に表示されている英語辞典がクリックされたとする。すると、バックボタンによるWebブラウザの操作がWebアプリケーションサーバで検知されないため、数学事典も含まれた選択リスト画面284が表示され、エラーが発生する。
【0235】
図16は、本発明を適用した書籍購買システムの動作例を示す図である。
【0236】
まず、Webブラウザ23に購入候補リスト画面27、選択リスト画面28が表示される。
【0237】
ユーザによって購入候補リスト画面27に表示されている国語辞典がクリックされると、選択リスト画面282にそのクリック内容が表示される。この際、本発明の処理順序監視装置では、画面27、282をWebブラウザに表示させた旨を示す履歴情報[27、282]が記憶される。
【0238】
さらに、ユーザによって購入候補リスト画面27に表示されている数学事典がクリックされると、クッキーにWebブラウザ23の表示状態[27、282]がセットされてWebアプリケーションサーバ及び本発明の処理順序監視装置に送信される。
【0239】
本発明の処理順序監視装置では、受信した表示状態[27、282]と先に記憶された履歴情報[27、282]が一致しているため、処理順序が適切である旨の判定がなされる。
【0240】
これにより、Webブラウザ23の選択リスト画面283にクリックされた内容が表示され、国語辞典と数学事典の購入要求が表示される。この際、本発明の処理順序監視装置では、画面27、283をWebブラウザに表示させた旨を示す履歴情報[27、283]が記憶される。
【0241】
この表示状態において、Webブラウザのバックボタンが押されると、購入候補リスト画面27及び選択リスト画面282が再表示される。これにより、Webブラウザには、選択リスト画面282に国語辞典の購入要求が表示される。
【0242】
ここで、ユーザによって新たに購入候補リスト画面27に表示されている英語辞典がクリックされたとする。すると、クッキーにWebブラウザの表示状態[27、282]がセットされてWebアプリケーションサーバ及び本発明の処理順序監視装置に送信される。
【0243】
本発明の処理順序監視装置では、受信した表示状態[27、282]と先に記憶された履歴情報[27、283]が一致しないため、処理順序が適切でない旨の判定がなされ、回復処理が実行される。
【0244】
【発明の効果】
以上詳記したように本発明では、画面の遷移情報を示す状態遷移情報が予め定められいる。また、Webブラウザからのリクエストにより実行される処理に関する情報とこの状態遷移情報とにより、次にWebブラウザからのリクエストにより実行される処理に関する情報が予測される。そして、実際に次にWebブラウザからのリクエストにより実行の要求された処理に関する情報が、この予測された情報と一致する場合を処理順序が適切であると判定する。
【0245】
これにより、Webブラウザに複数の画面が表示されていても、処理順序が適切か否かが判定可能である。
【0246】
また、本発明では、処理の内容が変更されたとしても、変更された処理に関する状態遷移情報を書き換えるのみで適用可能であるため、処理変更時に必要とされる労力を低減させることができる。
【0247】
さらに、本発明では、サーバで実行される処理に関する情報とサーバで先に予測された情報との整合性に加えて、Webブラウザの現在の表示状態と先にサーバで実行された処理に関する情報との整合性も考慮して処理順序の適否を判定することにより、一層高度に処理順序を監視することができる。
【0248】
さらに、本発明では、処理順序が適切と判定された場合の処理情報を記憶しておくことで、処理順序が適切でなくなった場合にも自動的に適切でなくなる前の状態にWebブラウザの状態を回復させることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るWebシステムの処理順序監視装置の構成を示すブロック図。
【図2】同実施の形態における状態遷移情報保持部に保持されている状態遷移情報の内容を示す図。
【図3】同実施の形態においてWebブラウザの画面が遷移する状態の例とこの画面遷移状態を示す各状態遷移情報の例を示す概念図
【図4】同実施の形態における実行履歴格納部の記憶内容とWebブラウザの画面との関係の例を示す図。
【図5】同実施の形態において予測部が予測情報を求める場合の手順を示す図。
【図6】同実施の形態における適切な順序によるオペレーション時の画面遷移状態と処理順序監視装置内の情報の関係を示す図。
【図7】同実施の形態においてバックボタンの押されたオペレーション時の画面遷移状態と処理順序監視装置内の情報の関係を示す図
【図8】同実施の形態においてリロードボタンの押されたオペレーション時の画面遷移状態と処理順序監視装置内の情報の関係を示す図。
【図9】同実施の形態における回復処理時の画面遷移状態と実行履歴格納部の内容との関係を示す図。
【図10】クッキーの機能を有するWebシステムの概略を示すブロック図。
【図11】本発明の第2の実施の形態においてWebサーバからWebブラウザに送信されるHTML形式データの例を示す図。
【図12】同実施の形態においてバックボタンの押されたオペレーション時の画面遷移状態と処理順序監視装置内の情報の関係を示す図。
【図13】本発明を適用していない書籍購買システムの第1の動作例を示す図。
【図14】本発明を適用した書籍購買システムの第1の動作例を示す図
【図15】本発明を適用していない書籍購買システムの第2の動作例を示す図。
【図16】本発明を適用した書籍購買システムの第1の動作例を示す図
【図17】一般的なWebシステムにおけるWebブラウザの表示画面とWebアプリケーションサーバの処理の関係の例を示すブロック図。
【図18】複数のHTML形式データによって構成されているWebブラウザの表示画面とこのHTML形式データに付加されている連続番号との関係の例を示す図。
【符号の説明】
1…Webシステム
2、23…Webブラウザ
3…Webサーバ
4…アプリケーションサーバ
44…アプリケーションプログラム
5、10、24…Webアプリケーションサーバ
15…処理順序監視装置
16…リクエスト解析部
17…実行監視部
17a…監視部
17b…予測部
18…状態遷移情報保持部
19…予測情報格納部
20…実行履歴格納部
21…回復処理部
22、22a〜22e…状態遷移情報
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an apparatus for monitoring the execution order of processes executed in a system that can use the WWW (World Wide Web) (hereinafter referred to as “Web system”) and a computer-readable storage medium storing a program.
[0002]
[Prior art]
FIG. 17 is a block diagram illustrating an example of a relationship between a display screen of a Web browser and processing of a Web application server in a general Web system.
[0003]
Some Web systems 1 have a function for realizing a series of tasks while sequentially receiving input from a user over a plurality of screens. In FIG. 17, as an example of providing a series of tasks by using the plurality of screens, a case where user authentication is performed and then the database is accessed is given.
[0004]
This general Web system 1 is mainly composed of a Web browser 2 and a Web application server 5 including an application server 4 that executes a Web server 3 and an application program 44. The application program 44 includes a user authentication process 4b, a database access process 4c, and an access end process 4d.
[0005]
The screen of the Web browser 2 transitions to screens 2a, 2b, 2c, and 2d when providing a series of tasks.
[0006]
The web browser 2 transmits requests (URLs) 6b to 6d to the web server 3 based on the screens 2a to 2c, respectively. Further, HTML format data 7b to 7d, which are responses to the requests 6b to 6d, are received from the Web server 3, and screens 2b to 2d are formed according to the contents of the received HTML format data 7b to 7d. The web browser 2 operates on a client (not shown).
[0007]
When the web server 3 as the first element of the web application server 5 receives the requests 6b to 6d from the web browser 2, the contents of the requests 6b to 6d are output to the application server 4. And the transmission process of the HTML format data 7b-7d to the Web browser 2 is performed using the result of the processes 4b-4d executed by the application server 4.
[0008]
The application server 4 as the second element of the Web application server 5 inputs the requests 6b to 6d transmitted from the Web browser 2 via the Web server 3, and in accordance with the requests 6b to 6d, user authentication processing 4b, A database access process 4c and an access end process 4d are executed.
[0009]
In the Web system 1 having the above configuration, first, login information is input from the user to the screen 2a, and a request 6b including this login information is input from the Web browser 2 to the application server 4 via the Web server 3. Is done.
[0010]
Next, a process 4b for performing user authentication of the application server 4 is executed according to the request 6b, and an execution result of the process 4b is output to the Web server 3.
[0011]
Thereby, in the Web server 3, HTML format data 7b is generated based on the execution result of the process 4b and the request 6b received earlier, and this HTML format data 7b is transmitted from the Web server 3 to the Web browser 2, and the screen 2b. Is displayed on the Web browser 2.
[0012]
Next, a database access command is input from the user to the screen 2b, and a request 6c including the database access command is transmitted from the Web browser 2 to the Web server 3, and input to the application server 4 via the Web server 3. The
[0013]
Next, in accordance with this request 6c, the database access process 4c using the user authentication result obtained by the previous process 4b is executed, and the execution result of this process 4c is output to the Web server 3.
[0014]
Thereby, in the Web server 3, the HTML format data 7c is generated based on the execution result of the process 4c and the request 6c received earlier, and the HTML format data 7c is transmitted from the Web server 3 to the Web browser 2, and the screen 2c. Is displayed on the Web browser 2.
[0015]
Next, an access end command is input from the user to the screen 2c, and a request 6d including the access end command is input from the Web browser 2 to the application server 4 via the Web server 3.
[0016]
Then, the application server 4 that has input the request 6d executes database access end processing 4d.
[0017]
In the general Web system 1 described above, communication is performed between the Web browser 2 and the Web server 3 in accordance with HTTP (Hyper Text Transfer Protocol).
[0018]
This HTTP is a stateless protocol and does not maintain a state. In other words, in HTTP, the session between the web browser 2 and the web server 3 is replaced each time each request 6b to 6d is transmitted.
[0019]
For this reason, as shown in FIG. 17, for example, when user authentication is first performed based on login information from the Web browser 2, and then a database is accessed according to this authentication information, user authentication processing 4b and database access processing are performed. A mechanism for preparing the two processes 4c and transferring the intermediate result of the process 4b to the process 4c is required.
[0020]
In the series of operations provided by the Web system 1, the order in which the processes 4b to 4d are called is determined in advance. Here, the processes are performed in the order of the user authentication process 4b, the database access process 4c, and the access end process 4d. Must be executed.
[0021]
[Problems to be solved by the invention]
For example, in the Web system 1 as shown in FIG. 17 as described above, it is not easy to control the transmission order of the requests 6b to 6d from the Web browser 2 on the Web server 3 and application server 4 side.
[0022]
Thereby, in the Web system 1, even if the execution order of the plurality of processes 4b to 4d is defined in advance, the execution order of the processes 4b to 4d cannot be guaranteed and a problem may occur.
[0023]
For example, when the user redisplays the screen previously displayed by the back button of the Web browser 2 and retransmits a request based on this screen, the order of the processes 4b to 4d executed in the application server 4 is defined in advance. It will be different from the order. That is, in the Web system 1 of FIG. 17, when the user pushes the back button of the Web browser 2 after executing the process 4b and the process 4c and the request 6b is transmitted from the screen 2a again, the Web system 1 provides A series of tasks cannot be executed normally.
[0024]
In order to solve the above problems, conventionally, for example, for a series of processes, a decision table is used to enumerate all possible conditions and a method for defining the processes for them is used. Yes.
[0025]
However, the method using this decision table is effective when there are few conditions, but there is a problem that it takes time to modify the process when there are many conditions (Hideyuki Miyoshi, “ "Three-tier client / server system development technique by Web server", Soft Research Center).
[0026]
As another conventional method, there is a method of defining a series of processing flows by holding the name of a program executed immediately before a certain program is executed. In this method, a program checks the name of the program executed immediately before it, and makes a series of processing normal if appropriate in relation to the stored program name. If it is not appropriate, a series of processing is abnormal.
[0027]
However, in this conventional method for retaining the program name, when an application program that requires repetition of the same processing is used in a series of operations, the same program name is used depending on how the Web browser returns using the back button. Is read out, and there is a problem that it is not possible to distinguish whether the processing is appropriate.
[0028]
As a method of solving this problem, Japanese Patent Application No. 10-288329 discloses a method in which a continuous number (for example, generated by a counter) is added to a request transmitted from a Web browser and the continuity of the number is confirmed on the server side. It is disclosed in the publication.
[0029]
A method of adding consecutive numbers to the request will be described by applying to the case of FIG.
[0030]
In this method, the number 1 is stored in the application program 44 in which the process 4b is executed. Also, HTML format data 7b to which the number 1 is added is transmitted from the Web server 3 to the Web browser 2.
[0031]
Next, the screen 2b is displayed on the Web browser 2 based on the content of the HTML format data 7b to which the number 1 is added. When an input is made by the user on this screen 2b, the number 1 added to the HTML format data 7b causing the screen 2b is added to the request 6c to be transmitted and transmitted to the application server 4. The
[0032]
The application server 4 compares the number 1 stored by itself with the number 1 added to the newly received request 6c. If they match, it is determined that the processing order is normal, and the processing 4c Is executed.
[0033]
Then, the number 2 counted up in the application server 4 is stored. In addition, the HTML format data 7c to which the number 2 is added is transmitted from the Web server 3 to the Web browser 2.
[0034]
Next, the screen 2c is displayed on the Web browser 2 based on the contents of the HTML format data 7c to which the number 2 is added. When an input is made by the user on this screen 2c, the number 2 added to the HTML format data 7c causing the screen 2c is added to the outgoing request 6d and transmitted to the application server 4. The
[0035]
The application server 4 compares the number 2 stored by itself with the number 2 added to the newly received request 6d. If they match, it is determined that the processing order is normal, and the processing 4d Is executed.
[0036]
Here, when the back button of the Web browser displaying the screen 2c is pressed by the user and the screen 2c returns to the screen 2b and the request 6c is transmitted, the request 6c is added to the request 6c received by the application server 4. Since the number 1 is smaller than the stored number 2, it is determined that the processing order is abnormal.
[0037]
However, in this method of adding consecutive numbers to a request, it may not be possible to determine the suitability of the processing order when the display screen of the Web browser is composed of a plurality of HTML format data.
[0038]
FIG. 18 is a diagram illustrating an example of a relationship between a display screen of a Web browser configured by a plurality of HTML format data and a serial number added to the HTML format data.
[0039]
In this example, on the display screen of the Web browser 2, the screen 8a is a parent frame, and the screens 8b and 8c are child frames based on the parent frame. When realizing the display state of the Web browser 2, first, the Web server 3 executes transmission processing of HTML format data 9a related to the screen 8a which is the parent frame, and then based on the display content of the parent frame. It is assumed that the transmission processing of the HTML format data 9b relating to the screen 8b which is a child frame is executed, and finally the transmission processing of the HTML format data 9c relating to the screen 8c which is a child frame is executed.
[0040]
In this case, the number 1 is added to the HTML format data 9a, the number 2 is added to the HTML format data 9b, and the number 3 is added to the HTML format data 9c according to the processing order executed by the application server 4. Further, the number 3 is stored in the application server 4 when the display state of the Web browser 2 is realized.
[0041]
When an operation is performed on the screen 8b in the display state of FIG. 18 as described above, a request based on the screen 8b is transmitted from the Web browser 2, and a number 2 is added to this request.
[0042]
Therefore, in the application server 4, although the processing order is normal, the stored number 3 and the number 2 added to the request do not match, so that it is determined to be abnormal.
[0043]
The present invention has been made in view of the above situation, and the processing of the Web system that manages the processing order of the Web browser by detecting the state in which the screen of the Web browser has been switched without notification to the server. It is an object of the present invention to provide a computer-readable storage medium storing a sequence monitoring device and a program.
[0044]
[Means for Solving the Problems]
In order to achieve the above object, the present invention takes the following measures.
[0045]
The first invention is incorporated in a Web system including a Web browser that transmits a request and receives screen data for configuring a display screen, and a server that executes processing according to the request transmitted from the Web browser. This is a device that is set in advance and indicates what screen the next screen displayed on the web browser will change to. The screen information that causes the transition for each transition state to each screen , Deleted from the web browser display screen due to screen transition Represents a frame Screen list and newly added Represents a frame Means for holding state transition information including screen transition information indicating a screen list and transition processing information indicating a processing name that causes the screen transition, and execution of processing executed by the server according to a request transmitted from the Web browser Based on the history information as a result, the display state of the Web browser is recognized, and based on the recognized display state of the Web browser and the state transition information including the screen information, the screen transition information, and the transition processing information. Then, prediction means for obtaining prediction information for predicting the display state of the Web browser by processing executed next by the server, and actually executed by the server next in accordance with the prediction information and a request transmitted from the Web browser. Check the consistency with the display state of the Web browser by processing, and the order of processing executed on the server A processing order monitoring device Web system comprising a determining monitoring means the appropriateness of.
[0046]
In the Web system processing order monitoring apparatus according to the first aspect of the present invention, information candidates relating to the next process to be executed are predicted on the server side, and information relating to the process to be executed next is any of the predicted candidates. It is determined whether or not this is true, and whether or not the processing order is appropriate is determined.
[0047]
In the present invention, as information relating to processing, at least one processing name recognized by this server as processing that causes the display state of the Web browser can be applied. Moreover, the screen data transmitted by the process that causes the display state of the Web browser can be applied. Furthermore, a request that requests a process that causes the display state of the Web browser is also applicable.
[0048]
As described above, in the first aspect of the present invention, whether or not the processing order is appropriate is determined based on whether or not the processing requested to be executed by the server is a processing permitted to be executed.
[0049]
Therefore, even if the display screen of the Web browser is composed of a plurality of screen data, it is possible to determine the suitability of the processing order realized in the Web system, and to improve the reliability of the operation in the Web system. Can do.
[0050]
In the first aspect of the invention, when changing the contents of the process, it is only necessary to rewrite the state transition information related to the changed process, so that the labor required when changing the process can be reduced.
[0051]
The second invention is incorporated in a Web system including a Web browser that transmits a request and receives screen data for configuring a display screen, and a server that executes processing according to the request transmitted from the Web browser. This is a device that is set in advance and indicates what screen the next screen displayed on the web browser will change to. The screen information that causes the transition for each transition state to each screen , Deleted from the display screen of the Web browser by screen transition Represents a frame Screen list and newly added Represents a frame The display state of the Web browser by means for holding state transition information including screen transition information indicating a screen list and transition processing information indicating a processing name that causes the screen transition, and processing executed next on the server Prediction information storage means for storing prediction information, and the display state of the Web browser by processing executed by the server in accordance with a request transmitted from the Web browser, and the recognition result and the prediction stored in the prediction information storage means A monitoring unit that checks whether there is consistency with the information and determines whether the order of processing executed on the server is appropriate, and a request that is sent from the Web browser when the monitoring unit determines that the processing order is appropriate The display state of the Web browser is recognized from the history information that is the execution result of the processing executed on the server according to A prediction that stores new prediction information and stores it in the prediction information storage means based on the recognized display state of the Web browser and the state transition information including the screen information, the screen transition information, and the transition processing information. A processing order monitoring apparatus of a Web system comprising means.
[0052]
In the Web system processing order monitoring apparatus according to the second aspect of the present invention, information related to processing predicted to be executed next by the server is predicted by the prediction means using the state prediction information. Then, it is determined whether or not the information related to the process that is actually executed next on the server matches the information related to the predicted process.
[0053]
The operation in the second invention is similar to the operation of the first invention described above, and the same effect can be obtained.
[0054]
According to a third aspect of the invention, in the processing order monitoring device for the Web system according to the second aspect, when the processing order is determined to be suitable by the monitoring unit, the processing is executed by the server according to the request sent from the Web browser. processing The display state of the Web browser by A Web system processing order monitoring apparatus further comprising an execution history storage means for storing history information.
[0055]
Therefore, in addition to the same effects as those of the second invention, information up to immediately before the processing order becomes inappropriate is ensured, and this information can be used for analysis of the cause of abnormality and recovery to a normal state.
[0056]
According to a fourth aspect of the present invention, in the processing order monitoring apparatus for the Web system of the third aspect, when a request is transmitted from the Web browser, screen state information transmission for transmitting the state information of the screen displayed on the Web browser Means More Monitoring means Is The screen status information transmitted by the screen status information transmitting means is stored in the execution history storage means. History Compare the information to determine the suitability of the order of processing executed on the server Do It is a processing order monitoring apparatus of a Web system.
[0057]
In the fourth aspect of the invention, not only the consistency between the information related to the processing executed by the server and the information predicted previously by the server, but also the current display state of the Web browser and the processing executed previously by the server. The suitability of the processing order is determined in consideration of consistency with information.
[0058]
As a result, in addition to the same effects as the third invention, whether or not the processing order is appropriate is determined even when the same request is sent from the web browser before and after the processing order becomes inappropriate. The
[0059]
The fifth invention is stored in the execution history storage means when the monitoring means determines that the processing order is not suitable in the processing order monitoring apparatus of the Web system of the third invention or the fourth invention. History Recovery processing means to reconstruct the display screen of the Web browser using information In addition It is a processing order monitoring apparatus of a Web system.
[0060]
In the fifth invention, when the processing order is not appropriate, the state of the Web browser is restored to the state immediately before it becomes inappropriate, so that the operability is improved and the operation in the Web system is further improved. The
[0061]
A sixth invention is a Web system comprising a Web browser that transmits a request and receives screen data for configuring a display screen, and a server that executes processing according to the request transmitted from the Web browser Server Shows the screen that is set in advance and each screen displayed on the Web browser changes to the next screen information, the screen information that causes the transition and the screen transition for each transition state to each screen. Is deleted from the display screen of the Web browser Represents a frame Screen list and newly added Represents a frame A function for holding state transition information including screen transition information indicating a screen list and transition processing information indicating a processing name that causes the screen transition, execution result of processing executed by the server according to a request transmitted from the Web browser Based on the state transition information including the recognized display state of the Web browser and the screen information, the screen transition information, and the transition processing information. A prediction function for obtaining prediction information by predicting the display state of the Web browser by processing executed next by the server, and processing executed actually by the server next in accordance with the prediction information and a request transmitted from the Web browser Check whether there is consistency with the display state of the Web browser by, and execute on the server Computer-readable storage medium storing a program for realizing the monitoring function to determine the appropriateness of physical order.
[0062]
The seventh invention is a Web system comprising a Web browser that transmits a request and receives screen data for configuring a display screen, and a server that executes processing according to the request transmitted from the Web browser. Server Shows the screen that is set in advance and each screen displayed on the Web browser changes to the next screen information, the screen information that causes the transition and the screen transition for each transition state to each screen. Is deleted from the display screen of the Web browser Represents a frame Screen list and newly added Represents a frame A function for holding state transition information including screen transition information indicating a screen list and transition processing information indicating a process name that causes the screen transition, and prediction of the display state of the Web browser by a process executed next on the server A prediction information storage function for storing information, a display state of the Web browser by a process executed by the server in accordance with a request transmitted from the Web browser, and the prediction information stored by the recognition result and the prediction information storage function; According to the request sent from the Web browser when it is determined that the processing order is suitable by the monitoring function that checks whether or not the consistency of the processing is performed and determines whether or not the order of the processes executed on the server is appropriate The display state of the Web browser is determined from the history information that is the execution result of the process executed on the server. A prediction information storage function for obtaining new prediction information based on the recognized display state of the Web browser and the state transition information including the screen information, the screen transition information, and the transition processing information. The computer-readable storage medium which memorize | stored the program for implement | achieving the prediction function stored by this.
[0063]
An eighth invention is a computer-readable storage medium storing the program of the seventh invention, wherein a Web system Server In addition, when the monitoring function determines that the processing order is suitable, an execution history storage function for storing the history information of the display state of the Web browser by the processing executed by the server according to the request transmitted from the Web browser Is a computer-readable storage medium further storing a program for realizing the above.
[0064]
A ninth invention is a computer-readable storage medium storing the program of the eighth invention, wherein a Web system Server Further, when a request is transmitted from the Web browser, a program for realizing a screen state information transmission function for transmitting the state information of the screen displayed on the Web browser is further stored. This is a computer-readable storage medium for comparing the state information of the screen transmitted by the information transmission function and the history information stored by the execution history storage function to determine the suitability of the processing sequence executed by the server.
[0065]
A tenth invention is a computer-readable storage medium storing the program of the eighth invention or the ninth invention, and a Web system Server In addition, a program for realizing a recovery processing function for reconstructing a display screen of a Web browser using history information stored by the execution history storage function when the monitoring function determines that the processing order is not suitable Is a computer-readable storage medium for further storing the information.
[0066]
The sixth to tenth inventions are computer-readable storage media storing programs for causing a computer to realize the same functions as the first to fifth inventions.
[0067]
By using the storage medium storing the program as in the sixth to tenth inventions, the above functions can be easily added even to a device or a computer that does not have the above functions.
[0068]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0069]
(First embodiment)
In the present embodiment, processing that can be executed in advance is predicted using the transition information of the screen displayed on the Web browser, and before the server executes the processing according to the request transmitted from the Web browser, restrictions are imposed. A device for detecting violations will be described.
[0070]
FIG. 1 is a block diagram showing the configuration of a processing order monitoring apparatus for a Web system according to the present embodiment. The same parts as those in FIG. Only the different parts will be described in detail here.
[0071]
The Web browser 2 displays a screen 12a according to the contents of the HTML format file 11a transmitted by the process 10a of the application program installed in the Web application server 10.
[0072]
The HTML format data 11a includes the description 13 “/ cgi-bin / 10b”. The content of the description 13 is included in the request 14b as a value of a variable PATH_INFO, and is transmitted from the Web browser 2 displaying the screen 12a. The description 13 “/ cgi-bin / 10b” is a description indicating that the processing 10b of the application program is read. The request 14b is transmitted by a FORM tag described in the HTML format data 11a.
[0073]
The Web application server 10 has the same function as the Web application server 5 described above, but transmits a request from the Web browser 2 received by itself to the processing order monitoring device 15, and the processing order monitoring device 15 The difference is that the response is analyzed and the process according to the received request is executed or the display state is restored.
[0074]
The processing order monitoring device 15 receives a request transmitted from the Web browser 2 via the Web application server 10 and determines whether or not the processing order executed by the Web application server 10 is appropriate. When it is determined that the processing order is appropriate, a processing execution instruction is transmitted to the Web application server 10, and when it is determined that the processing order is not appropriate, recovery processing information is transmitted to the Web application server 10. .
[0075]
The processing order monitoring device 15 includes a request analysis unit 16, an execution monitoring unit 17, a state transition information holding unit 18, a prediction information storage unit 19, an execution history storage unit 20, and a recovery processing unit 21. ing.
[0076]
Hereinafter, each component of the processing order monitoring device 15 will be described in detail.
[0077]
The request analysis unit 16 receives a request transmitted from the web browser 2, extracts an execution parameter that is information necessary for monitoring the processing order from the received request, and extracts the execution parameter. Output to the execution monitoring unit 17. This execution parameter specifically includes the processing name (program name) specified by the PATH_INFO variable value, the state variable, the information set in the cookie and the state information of the screen that sent the request. .
[0078]
Next, the state transition information holding unit 18 will be described.
[0079]
The state transition information holding unit 18 holds state transition information which is information indicating what screen the next screen displayed on the Web browser 2 changes to.
[0080]
FIG. 2 is a diagram showing the contents of the state transition information held in the state transition information holding unit 18.
[0081]
As shown in FIG. 2, the state transition information 22 is screen transition difference information, and is mainly deleted from the screen information (Pre information) that causes the transition and the display screen of the Web browser 2 due to the screen transition. It includes screen transition information (Post information) indicating a screen list and a newly added screen list, and transition processing information (AppLogic information) indicating a processing name that causes the screen transition.
[0082]
The state transition information 22 is determined for each transition state to each screen and is held in the state transition information holding unit 18.
[0083]
FIG. 3 is a conceptual diagram illustrating an example of a state where the screen of the Web browser 2 transitions and an example of each state transition information 22 indicating the screen transition state.
[0084]
In this example, screens X, B, and C are displayed as a result of the operation on screen A. Here, the screen X is a parent frame, and the screens B and C are child frames.
[0085]
The state transition information 22a indicating the transition state from the screen A to the screens X, B, and C includes Pre information: [A] because the screen before the transition is A. Further, since the screen list to be deleted is A and the screen lists to be added are X, B, and C, Post information: [-[A], + [X, B, C]] is included. Furthermore, the process that causes the screen transition is X 0 AppLogic information: [Process X 0 ] Is included.
[0086]
When an operation is performed on the screen C when the screens X, B, and C are displayed, the screen D is displayed instead of the screen C. When the screens X, B, and C are displayed, the state transition information 22b indicating the screen transition state in which the screen D is displayed instead of the screen C is the pre information: [C ] Is included. Further, since the screen list to be deleted is C and the screen list to be added is D, Post information: [− [C], + [D]] is included. Furthermore, the process that causes the screen transition is C 0 AppLogic information: [Processing C 0 ] Is included.
[0087]
Further, when an operation is performed on the screen B when the screens X, B, and C are displayed, the screen E is displayed. The state transition information 22c that is switched from the screens X, B, and C to the screen E by the operation on the screen B includes Pre information: [B] because the screen before the transition is B. Further, since the screen list to be deleted is X, B, and C, and the screen list to be added is E, Post information: [-[X, B, C], + [E]] is included. Furthermore, the process that causes the screen transition is E 0 AppLogic information: [E 0 ] Is included.
[0088]
In addition, when an operation is performed on the screen D when the screens X, B, and D are displayed, the screen E is displayed. The state transition information 22d that is switched from the screens X, B, and D to the screen E by the operation on the screen D includes Pre information: [D] because the screen before the transition is D. Since the screen list to be deleted is X, B, and D and the screen list to be added is E, Post information: [-[X, B, D], + [E]] is included. Furthermore, the process that causes the screen transition is E 0 AppLogic information: [E 0 ] Is included.
[0089]
In addition, when an operation is performed on the screen B when the screens X, B, and D are displayed, the screen E is displayed. The state transition information 22e that is switched from the screens X, B, and D to the screen E by the operation on the screen B includes Pre information: [B] because the screen before the transition is B. Since the screen list to be deleted is X, B, and D and the screen list to be added is E, Post information: [-[X, B, D], + [E]] is included. Furthermore, the process that causes the screen transition is E 0 AppLogic information: [E 0 ] Is included.
[0090]
As described above, the state transition information holding unit 18 holds state transition information related to such a transition state for each screen.
[0091]
Next, the execution history storage unit 20 shown in FIG. 1 will be described.
[0092]
The execution history storage unit 20 is a part that stores history information, which is the execution result of the processing executed in the Web application server 10 when the processing order is determined to be appropriate, in time series (stack format). Further, the execution history storage unit 20 stores history information of a part to be newly displayed, instead of history information of a part that is no longer displayed on the Web browser 2. Here, since it is stored in a stack format, the latter history information is superimposed on the former history information.
[0093]
Therefore, the execution history storage unit 20 stores the latest history information when the processing order is appropriate, and does not store history information when the processing order is not appropriate.
[0094]
Here, the history information is the HTML format data transmitted by the Web application server 10 to configure the display state of the Web browser 2 and the name of the process that caused the generation of the HTML format data. This is information consisting of an execution state indicating whether it is the first stage before execution completion or the second stage after execution completion.
[0095]
FIG. 4 is a diagram showing an example of the relationship between the contents stored in the execution history storage unit 20 and the screen of the Web browser 2. Here, the history information of the first stage is represented by a dotted line, and the history information of the second stage is represented by a solid line.
[0096]
In FIG. 4, a case where the screen A is first displayed on the Web browser 2, the screens X, B, and C are displayed next, and then the screens X, B, and D are displayed is illustrated.
[0097]
When screen A is displayed, processing A in Web application server 10 0 Is completed, process A 0 History information A 1 Is stored in the execution history storage unit 20 as the second stage (storage state 1).
[0098]
Next, when a request is transmitted from the Web browser 2 displaying the screen A, the process X 0 History information about X 1 Is stored in the execution history storage unit 20 as the first stage (storage state 2), and then processing X is performed in the Web application server 10. 0 Is completed, process X 0 History information about X 1 Is stored in the execution history storage unit 20 as the second stage (storage state 3).
[0099]
Next, when a request for transmission processing of the screens B and C that are child frames is transmitted from the Web browser 2 that displays the screen X that is the parent frame, the processing B 0 , C 0 History information B 1 , C 1 Is stored in the execution history storage unit 20 as a first stage (storage state 4). Thereafter, processing B in the Web application server 10 0 , C 0 Is completed, processing B 0 , C 0 History information B 1 , C 1 Is stored in the execution history storage unit 20 as the second stage (storage state 5).
[0100]
When an operation is performed on the screen C, a request for a transmission process for the screen D is transmitted from the Web browser 2, and the process D is performed. 0 History information D 1 Is stored in the execution history storage unit 20 as the first stage (storage state 6). Thereafter, processing D in the Web application server 10 0 Is completed, process D 0 History information D 1 Is stored in the execution history storage unit 20 as the second stage (storage state 7).
[0101]
The prediction information storage unit 19 illustrated in FIG. 1 stores the next display state of the Web browser 2 as prediction information.
[0102]
The execution monitoring unit 17 includes a monitoring unit 17a that determines the suitability of the processing order and a prediction unit 17b that obtains prediction information used for determining the suitability.
[0103]
The monitoring unit 17a checks whether or not the content of the process included in the execution parameter input from the request analysis unit 16 is consistent with the prediction information stored in the prediction information storage unit 19, and determines whether the processing order is appropriate. Determine. Specifically, using the processing contents and history information included in the request, the display state of the Web browser 2 after sending the request is recognized (estimated), and the estimated result is compared with the predicted information. To determine the suitability of the processing order.
[0104]
When it is determined that the processing order is appropriate, a determination result indicating that is notified to the recovery processing unit 21 and the prediction unit 17b. Further, the history information is stored in the execution history storage unit 20.
[0105]
When it is determined that the processing order is not appropriate, the recovery processing unit 21 is notified of a determination result indicating that.
[0106]
When the monitoring unit 17a determines that the processing order is appropriate, the prediction unit 17b performs the following state prediction processing. The state prediction process is a process for predicting the display state of the Web browser 2 configured after the next request is transmitted.
[0107]
FIG. 5 is a diagram illustrating a procedure when the prediction unit 17b obtains prediction information. The screen transition state of the Web browser 2 shown in FIG. 5 is the same as the state described with reference to FIG.
[0108]
Processing A in the Web application server 10 0 Is executed and the screen A is displayed on the Web browser 2, the history information A is stored in the execution history storage unit 20. 1 Is memorized.
[0109]
The prediction unit 17b recognizes the display state of the Web browser 2 from the contents of the history information stored in the execution history storage unit 20. Here, the history information A is stored in the execution history storage unit 20. 1 Is stored, it is recognized that the display state is [A].
[0110]
Further, the prediction unit 17b extracts the state transition information 22a having the same Pre information [A] as the recognized display state [A] from the state transition information 22 stored in the prediction information storage unit 19. .
[0111]
Then, the contents of the post information exclusion screen list [A] included in the extracted state transition information 22a are excluded from the recognized display state contents, and the contents of the post information addition screen list [X, B, C] are excluded. Is added to the content of the recognized display state to obtain the content [X, B, C] of the prediction information.
[0112]
Similarly, in the Web application server 10, the process X 0 , B 0 , C 0 And screens X, B, and C are displayed on the web browser 2, the history information X is stored in the execution history storage unit 20. 1 , B 1 , C 1 Is memorized.
[0113]
The prediction unit 17b recognizes the display state of the Web browser 2 from the contents of the history information stored in the execution history storage unit 20. Here, history information X is stored in the execution history storage unit 20. 1 , B 1 , C 1 Is stored, it is recognized that the display state is [X, B, C].
[0114]
Further, the prediction unit 17b obtains the state transition information having the same Pre information as any of the recognized display states [X, B, C] from the state transition information 22 stored in the prediction information storage unit 19. Extract. Here, state transition information 22b and 22c including Pre information [C] and [B] are extracted.
[0115]
Then, the contents of the post information exclusion screen list [C] included in the extracted state transition information 22b are excluded from the recognized display state contents, and the contents of the post information additional screen list [D] are recognized. In addition to the content of the display state, the content of the expected information is [X, B, D].
[0116]
On the other hand, the contents of the post information exclusion screen list [X, B, D] included in the extracted state transition information 22c are excluded from the recognized display state contents, and the contents of the post information addition screen list [E] are changed. It adds to the content of the recognized display state, and is set as the content [E] of prediction information.
[0117]
Hereinafter, processing X in the Web application server 10 0 , B 0 , D 0 This is the same when the screens X, B, and D are displayed on the Web browser 2, and the display state is displayed on the Web browser 2 from information (here, history information) related to the processing executed on the Web application server 10. The predicted information [E] is obtained from the recognized display state [X, B, D] of the Web browser 2 and the state transition information 22d, 22e.
[0118]
Next, the recovery processing unit 21 shown in FIG. 1 will be described.
[0119]
When the recovery processing unit 21 receives a notification that the processing order is appropriate from the execution monitoring unit 17, the recovery processing unit 21 transmits a processing execution instruction to execute the processing indicated by the request to the Web application server 10. Is executed.
[0120]
On the other hand, when a notification that the processing order is not appropriate is input from the execution monitoring unit 17, the contents of the execution history storage unit 20 are accessed, and the HTML format data included in the history information located in the uppermost stage is read and the recovery process is performed. Information is transmitted to the Web application server 10 to execute a recovery process. Thereby, on the Web browser 2, the Web screen immediately before the processing order becomes inappropriate is reconstructed.
[0121]
Here, when the execution history storage unit 20 accesses the recovery processing unit 21, if there is history information of the first stage at the uppermost stage, the execution of the process of the first stage is terminated and the HTML is entered after the second stage. Read the format data.
[0122]
In this example, the HTML format data included in the uppermost history information is used to reconstruct the screen. Instead, a re-execution instruction for the process name included in the uppermost history information is issued to the Web application server 10. You may send to.
[0123]
Regarding the operation of the processing order monitoring apparatus 15 according to the present embodiment having the above-described configuration, when the processing order is appropriate, when the back button is pressed and the processing order becomes inappropriate, the reload button is pressed. In the following, the case where the recovery process is executed when the processing order becomes inappropriate will be described as an example.
[0124]
First, a case where the processing order is appropriate will be described as a first operation example.
FIG. 6 is a diagram showing the relationship between the screen transition state during operation in an appropriate order and the information in the processing order monitoring apparatus. In FIG. 6, the screen transition state of the Web browser 2 is the same as in FIGS.
[0125]
First, in the Web application server 10, process A 0 Is executed.
Then, HTML format data is transmitted from the web application server 10 to the web browser 2, and the screen A is displayed on the web browser 2.
[0126]
In the processing order monitoring device 15, this processing A 0 2nd stage history information A 1 Is stored in the execution history storage unit 20, and this history information A 1 Based on this, the display state of the Web browser 2 is recognized as [A].
[0127]
Also, prediction information [X, B, C] is obtained from the recognized display state [A] of the Web browser 2 and the state transition information 22 and stored in the prediction information storage unit 19.
[0128]
Next, process X 0 A request including the execution instruction of PATH_INFO as a variable is sent from the Web browser 2 that displays screen A, and processing X 0 Is executed to the Web application server 10 and the processing order monitoring device 15.
[0129]
In the processing order monitoring apparatus 15, the prediction information [X, B, C] stored in the prediction information storage unit 19 is read by the execution monitoring unit 17.
[0130]
Further, the screen A displayed on the web browser 2 is changed to the screens X, B, and C from the screen A and the prediction information [X, B, C] that have been displayed on the web browser 2 until just before. Recognized and currently processing X 0 Since only the request is made, it is determined that the display state transition request is incomplete.
[0131]
Next, process X 0 Is executed by the Web application server 10, HTML format data for the screen X is transmitted from the Web application server 10 to the Web browser 2, and the screen X is displayed.
[0132]
Here, in the HTML format data for the screen X displayed on the Web browser 2, request requests for the screens B and C, which are child frames, are described in this order. Therefore, from the Web browser 2 that displays this screen X, the process B 0 Request and processing C including execution instructions 0 Requests including execution instructions are sequentially transmitted.
[0133]
Process B 0 , C 0 Is executed to the Web application server 10 and the processing order monitoring device 15.
[0134]
The processing order monitoring apparatus 15 recognizes that the screen A displayed on the Web browser 2 is changed to the screens X, B, and C. 0 , B 0 , C 0 Therefore, it is determined that the display state transition request is complete.
[0135]
As a result, processing executed for screen composition in the Web application server 10 is X 0 , B 0 , C 0 It becomes.
[0136]
In the processing order monitoring device 15, the processing X 0 , B 0 , C 0 Process X and the contents of the execution history storage unit 20 0 , B 0 , C 0 The display state [X, B, C] of the Web browser 2 after the request transmission including the execution instruction is recognized.
[0137]
Further, since the recognized display state [X, B, C] of the Web browser 2 matches the prediction information [X, B, C], the processing order is appropriate in the monitoring unit 17a of the execution monitoring unit 17. The processing execution instruction is transmitted from the processing order monitoring device 15 to the Web application server 10.
[0138]
As a result, screens X, B, and C are displayed on the Web browser 2.
Furthermore, processing X 0 , B 0 , C 0 History information X as the execution result of 1 , B 1 , C 1 Is stored in the execution history storage unit 20.
[0139]
Furthermore, since the processing order is appropriate, new prediction information [X, B, D], [E] is obtained from the recognized display state [X, B, C] of the Web browser 2 and the state transition information 22. And stored in the prediction information storage unit 19.
[0140]
Next, process D 0 A request including an execution instruction is sent from the Web browser 2 that displays screens X, B, and C, and processing D 0 Is executed to the Web application server 10 and the processing order monitoring device 15.
[0141]
In the processing order monitoring device 15, the prediction information [X, B, D], [E] stored in the prediction information storage unit 19 is read by the execution monitoring unit 17.
[0142]
Process D included in the request 0 The display state [X, B, D] realized by the Web browser 2 after this request is transmitted is estimated from the execution instruction of the above and the contents of the history information.
[0143]
Since this estimated display state [X, B, D] and one of the read prediction information [X, B, D] match, a processing execution command is transmitted from the processing order monitoring device 15 to the Web application server 10, Process D in Web application server 10 0 Is executed.
[0144]
As a result, screens X, B, and D are displayed on the Web browser 2.
[0145]
In the processing order monitoring device 15, the processing D 0 Is stored in the execution history storage unit 20, and prediction information [E] is obtained from the stored contents of the execution history storage unit 20 and the state transition information 22.
[0146]
Hereinafter, similarly, the display state of the Web browser 2 is recognized by the execution monitoring unit 17 of the processing order monitoring device 15 based on the information related to the processing included in the request from the Web browser 2 and the history information, and the recognition result is the first. The processing is sequentially performed while it is determined whether or not the prediction information matches the prediction information stored in the prediction information storage unit 19.
[0147]
When the recognized display state of the Web browser 2 matches the prediction information, new prediction information is obtained from the recognized display state of the Web browser 2 and the state transition information.
[0148]
Next, the case where the back button is pushed and the processing order becomes inappropriate will be described as a second operation example.
[0149]
FIG. 7 is a diagram showing the relationship between the screen transition state and the information in the processing order monitoring device 15 when the back button is pressed.
[0150]
In FIG. 7, screen transitions and information contents until the back button is pressed are the same as those in FIG.
[0151]
That is, the transition state from screen A to screen X, B, D displayed in FIG. 7 is the same as in FIG. Further, the display state of the Web browser 2 recognized by the processing order monitoring device 15 from the processing contents and history information indicated by the request is the same as that in FIG. 6 until the screen A changes to the screens X, B, and D. It is. Further, the prediction information predicted from the display state of the Web browser 2 recognized by the processing order monitoring device 15 is the same as that in the case of FIG.
[0152]
When the back button is pressed in the Web browser 2 on which the screens X, B, and D are displayed, the screens X, B, and C are displayed on the Web browser 2 again.
[0153]
Here, the process D is again performed based on the screen C. 0 When a request including the execution instruction is sent from the Web browser 2, the processing D 0 Is not the display processing of the screen E as indicated by the prediction information [E] predicted earlier, and therefore the processing order is determined by the execution monitoring unit 17 of the processing order monitoring device 15 to be inappropriate.
[0154]
In this way, a specific example in which a problem occurs in the processing due to the pressing of the back button will be described using a bank remittance process.
[0155]
In this example, the screen C is a screen for displaying the balance of the current account and for the operator to specify the amount to be transferred. Process D 0 Is a process of debiting the specified amount from the account. Furthermore, the screen D is a screen for displaying the withdrawal result and designating a remittance destination account. Furthermore, processing E 0 Is a process of adding the amount withdrawn to the designated remittance account.
[0156]
In this case, each process C 0 , D 0 , E 0 If is executed in a normal flow, the total amount of the remittance source account and the remittance destination account is constant. However, as described above, when the display is changed from the screen X, B, D to the screen X, B, C by the back button, the HTML format data constituting the screen C is already stored in the Web browser 2. Since the cached client is used, the Web application server 10 is not notified that the processing has been returned, and the total amount of the remittance source account and the remittance destination account is not constant.
[0157]
For example, it is assumed that there are a remittance source balance 1000 and a remittance destination balance 1000, and the remittance amount 500 is designated on the screens X, B, and C. In this case, processing D 0 As a result, the remittance source balance becomes 1000−500 = 500, and screens X, B, and D are displayed on the Web browser 2.
[0158]
Here, if the back button is pressed to return to the screens X, B, and C again, and the remittance amount 300 is designated, the remittance source balance has already been changed to 500 in the Web application server 10, so that the remittance source balance is 500−300 = 200, and then the remittance amount 300 is added to the remittance destination balance to 1300. Initially, the total amount of the remittance source balance 1000 and the remittance destination balance 1000 is 2000, but after the processing is completed, the total amount of the remittance source balance 200 and the remittance destination balance 1300 becomes 1500.
[0159]
When the processing order monitoring apparatus 15 according to the present embodiment is applied, the prediction information stored before the back button is pressed is [E], but the next request received from the Web browser 2 is processing D. 0 Therefore, there is no consistency with the prediction information, and an abnormality in the processing order can be detected.
[0160]
That is, when the back button is pressed to return to the screens X, B, and C again and the remittance amount 300 is designated, it is determined that the processing order is not appropriate, and the recovery process is executed.
[0161]
Next, a case where the reload button is pressed and the processing order becomes inappropriate will be described as a third operation example.
[0162]
FIG. 8 is a diagram showing the relationship between the screen transition state and the information in the processing order monitoring device 15 when the reload button is pressed. In FIG. 8, screen transitions and information contents until the back button is pressed are the same as those in FIGS.
[0163]
The reloading by the web browser 2 is a function for re-executing a request corresponding to the screen displayed on the web browser 2.
[0164]
For example, in FIG. 8, when reloading of the entire page of the Web browser 2 displaying the screens X, B, and D is designated, first, processing X 0 A request including the execution instruction is transmitted from the Web browser 2 to the Web application server 10. In the Web application server 10, process X 0 Is re-executed, and the result is transmitted to the Web browser 2 and the screen X is displayed. Since screen X is a parent frame, processing B for displaying the child frame 0 , D 0 As a result, the screens X, B, and D are displayed again on the Web browser 2.
[0165]
Reloading can also be executed in frame units. For example, when the part of the screen D is designated and reloaded in the Web browser 2 on which the screens X, B, and D are displayed, the process D is performed again. 0 A request including the execution instruction is sent.
[0166]
A series of processing order in the Web application server 10 is changed by such reload processing.
[0167]
However, when the processing order monitoring apparatus 15 according to the present embodiment is applied, the screen X is reloaded in the Web browser 2 displaying the screens X, B, and D, and the processing X 0 Even if a request including the execution instruction is sent, the processing X is included in the prediction information stored in the processing order monitoring device 15. 0 Therefore, it is determined that the processing order is not appropriate.
[0168]
Even if the screen D is reloaded in the display state T3 and a request including an execution instruction for the process D is transmitted, since there is no prediction information including the process X, an abnormality in the processing order is detected.
[0169]
Finally, a case where recovery processing is executed as a fourth operation example will be described.
[0170]
FIG. 9 is a diagram showing the relationship between the screen transition state at the time of recovery processing and the contents of the execution history storage unit 20 in the processing order monitoring device 15. The screen transition state until an error occurs when the back button is pressed is shown in FIG. This is the same as in FIG.
[0171]
As described above, the execution history storage unit 20 stores history information that is an execution result when processing is executed in an appropriate order, and the history information is transmitted to the Web browser 2. HTML format data (screen information) is included.
[0172]
As described above, the execution history is stored in two stages. The first stage is when a request is received, and the second stage stores the screen information after the processing is executed and transmission is completed.
[0173]
When the screen A is displayed on the Web browser 2, the history information A including HTML format data for the screen A in the execution history storage unit 20 is displayed. 1 Are stored as the second stage.
[0174]
When the screens X, B, and C are displayed on the Web browser 2, the history information X including HTML format data for the screens X, B, and C in the execution history storage unit 20 is displayed. 1 , B 1 , C 1 Are stored as the second stage.
[0175]
When the screens X, B, and D are displayed on the Web browser 2, the history information D including HTML format data for the screen D in the execution history storage unit 20 1 Is history information C 1 Instead of being stored as the second stage.
[0176]
Here, when the back button is pressed, the screens X, B, and D are switched to the screens X, B, and C, and the process D is performed again. 0 The request including the execution instruction is transmitted, but the processing order monitoring device 15 performs processing E. 0 Since the request is expected, the execution monitoring unit 17 notifies the recovery processing unit 21 that the processing order is not appropriate.
[0177]
When the recovery processing unit 21 receives a notification of the occurrence of an error from the execution monitoring unit 21, the HTML format data included in the history information stored in the uppermost (latest) stage of the execution history storage unit 20 and the display screen of the Web browser 2 are displayed. Of these, only the HTML format data having no consistency is transmitted.
[0178]
Here, since the screen D is different in the display contents before and after the recovery, the HTML format data for the screen D is transmitted from the processing order monitoring device 15 to the Web browser 2 via the Web application server 10. .
[0179]
As a result, the screens X, B, and D before the back button is pressed are displayed again on the Web browser 2, and the abnormality is recovered.
[0180]
Of the contents of each history information, those that are not in the second stage are treated so that this process becomes the second stage, and HTML format data is transmitted when the second stage is reached. .
[0181]
For example, when the stop button is pressed during the screen configuration of the screens X, B, and D, the processing D 0 Is the first stage (before completion of processing), and an error occurs when reloaded by the Web browser 2 in this state.
[0182]
In this case, the contents of the history information storage unit are used as they are for the construction of the screens X and B. 0 Is re-executed to enter the second state, and the HTML format data as the processing result is transmitted.
[0183]
As described above, in the processing order monitoring apparatus 15 according to the present embodiment, the prediction information that predicts the next process that can be executed by the Web application server 10 from the screen transition information displayed on the Web browser 2. A processing order constraint violation is detected from the extracted processing and the prediction information that is actually requested to be executed by the Web application server 10.
[0184]
This makes it possible to detect that the processing order is not appropriate even when a plurality of screens are combined and displayed on the Web browser 2 as in a frame or when the same processing is repeated by reloading. .
[0185]
Therefore, processing related to a series of operations of the Web system can be executed in an appropriate order, and the reliability of the operation of the Web system can be improved.
[0186]
In the processing order monitoring apparatus 15 according to the present embodiment, the execution results of the processes executed in an appropriate order are stored in advance as correction information when the processing order becomes inappropriate. When the processing order becomes inappropriate, it is possible to efficiently and consistently guide the normal operation using this correction information.
[0187]
Therefore, the reliability of the operation of the Web system is improved.
[0188]
(Second Embodiment)
In this embodiment, a processing order monitoring apparatus used in a Web system having a cookie function will be described.
[0189]
In the processing order monitoring apparatus 15 according to the first embodiment described above, the content of information related to processing executed in accordance with the request from the Web browser 2 is compared with the prediction information predicted in advance, and the processing order is monitored. Suitability is determined.
[0190]
However, some screens displayed on the Web browser 2 may not be changed even if the display state of the Web browser 2 changes.
[0191]
For example, in the case of FIG. 5 described above, even if the display state of the Web browser 2 is switched from the screens X, B, and C to the screens X, B, and D, the screen B is not changed. Further, even when the screens X, B, and C are displayed or when the screens X, B, and D are displayed, the processing order monitoring device 15 has the prediction information [E]. Is retained.
[0192]
Therefore, the process E is executed from the Web browser 2 based on the screen B. 0 When the request including the execution instruction is sent, the request is sent from the Web browser 2 that displays the screens X, B, and D according to the normal processing order, or the back button is pressed and the display state is changed to the screen X. , B, D cannot be distinguished from the request sent back to screen X, B, C. Therefore, the back button may be pressed and detection that the processing order is not appropriate may not be made.
[0193]
Therefore, the processing order monitoring apparatus according to the present embodiment recognizes the display state of the Web browser from which the request is transmitted by setting the screen information of the Web browser at the time of request transmission in a cookie and transmitting it to the server. The suitability of the processing order is determined.
[0194]
FIG. 10 is a block diagram showing an outline of a Web system having a cookie function.
[0195]
The cookie is a mechanism for storing information on the Web browser 23 side, and this held information is transmitted to the Web application server 24 side every time a request is transmitted to the Web application server 24.
[0196]
That is, the web browser 23 is provided with a storage device 23a for cookies. For example, predetermined information such as information received from the web application server 24 or information obtained on the web browser 23 side is used for the cookies. It is stored in the storage device 23a. Each time a request is transmitted from the web browser 23 to the web application server 24, predetermined information stored in the storage device 23a is set in a cookie (HTTP_COOKIE) and transmitted to the web application server 24.
[0197]
FIG. 11 is a diagram illustrating an example of HTML format data transmitted from the Web application server 24 to the Web browser 23 in the present embodiment, and illustrates HTML format data 25 for configuring the screen A.
[0198]
In HTML format data 25, processing X is processed in the PATH_INFO variable. 0 There is a description 25a indicating that a request including the execution instruction is transmitted.
[0199]
Further, the HTML format data 25 incorporates processing for collecting screen information of the Web browser 23 and setting it in a cookie in advance. This is defined using a script language such as JavaScript, for example, and corresponds to the description 25b of sendBrowserStatus (this) in FIG. This sendBrowserStatus (this) is a script that is activated when a submit button (Submit) from the Web browser 23 to the Web application server 24 is pressed, and sets the screen A displayed on the Web browser 23 to a cookie. The web application server 24 is notified of the current display state.
[0200]
In the processing order monitoring apparatus according to the present embodiment, the screen information set in the cookie is configured by history information stored in the execution history storage unit as a result of the previous processing executed by the Web application server 24. It is determined whether or not the display state of the Web browser 23 is appropriate. When it is determined that the display state is appropriate, the consistency between the content of the processing instruction included in the request and the prediction information is determined. If there is consistency, it is determined that the processing order is appropriate. If there is no consistency, it is determined that the processing order is not appropriate, and the recovery process is executed.
[0201]
FIG. 12 is a diagram showing the relationship between the screen transition state and the information in the processing order monitoring apparatus when the back button is pressed in this embodiment, and screens X, B, and D are displayed from screen A. The screen state up to this point and the information in the processing order monitoring apparatus are the same as in FIG.
[0202]
Here, it is assumed that when the screens X, B, and D are displayed, the back button is pressed to return to the screens X, B, and C. In the Web browser 23, the screen information [X, B, C] displayed at the time of returning is stored in the storage device 23a.
[0203]
By operating the screen B, the screen information [X, B, C] is set in the cookie, and the process E 0 A request including the execution instruction is transmitted from the Web browser 23.
[0204]
As a result, in the Web application server 24 and the processing order monitoring device, the current screen information [X, B, C] of the Web browser 23 set in the cookie and the next processing designation E included in the received request. 0 Is extracted by the request analysis unit.
[0205]
Then, in the execution monitoring unit, the current screen information [X, B, D] is estimated from the history information stored in the execution history storage unit, and the estimated screen information [X, B, D] and the cookie are stored. The current screen information [X, B, C] that has been set is compared.
[0206]
Here, since the screen information [X, B, D] obtained from the contents of the execution history storage unit does not match the current screen information [X, B, C] set in the cookie, the execution monitoring unit to the recovery processing unit Is notified that the processing order is not appropriate.
[0207]
As described above, in the processing order monitoring apparatus according to the present embodiment, information indicating the display state of the Web browser 23 is set in a cookie and transmitted, so before and after the processing order is abnormal due to the back button. Even if the same screen is displayed, the suitability of the processing order can be determined.
[0208]
Therefore, in addition to the same effects as the processing order monitoring apparatus according to the first embodiment, the processing order related to a series of operations of the Web system can be more appropriately executed, and the operation reliability of the Web system can be improved. Can be improved.
[0209]
In the processing order monitoring apparatus according to each of the embodiments described above, the screen displayed on the Web browser after the process specified in the request is executed is estimated, and the estimated screen and the predicted image are previously predicted. The suitability of the processing order is determined based on the consistency with the prediction information. However, the present invention is not limited to this, and it is determined whether or not there is consistency based on various information related to the processing executed on the Web application server (request for specifying processing execution, image information obtained as a result of processing, processing name, etc.). Can be determined.
[0210]
In addition, the processing order monitoring apparatus according to each of the above embodiments has been described as an example in which the processing order monitoring apparatus is connected to a Web application server composed of a Web server and an application server, but is not limited thereto. You may incorporate in a web application server, a web server, an application server, etc.
[0211]
Furthermore, the functions of the present invention may be realized in a CGI (Common Gateway Interface) of the Web server. Furthermore, a function similar to this processing order monitoring apparatus may be included as one function of the application server connected to the Web server so as to be able to transmit and receive.
[0212]
The functions of the processing order monitoring apparatus described in the above embodiments are, for example, magnetic disks (floppy disks, hard disks, etc.), optical disks (CD-ROMs, DVDs, etc.), semiconductors, etc. as programs that can be executed by a computer. The present invention can be applied by writing to a storage medium such as a memory, or can be transmitted by a communication medium and applied to various apparatuses. A computer that implements the function of the processing order monitoring apparatus reads the program recorded in the storage medium and executes the above-described processing by controlling the operation by the program.
[0213]
【Example】
(Example 1)
Here, an example in which the present invention is applied to a book purchasing system based on the WWW will be specifically described.
[0214]
FIG. 13 is a diagram illustrating an operation example of a book purchasing system to which the present invention is not applied.
[0215]
First, the menu screen 26 is displayed on the Web browser 2, and the user selects to purchase a book. Then, the purchase candidate list screen 27 and the selection list screen 28 are displayed on the Web browser 2.
[0216]
When the user clicks on a book displayed on the purchase candidate list screen 27, the click content is displayed on the selection list screen 281.
[0217]
When the calculation button 28a is pressed by the user, a payment calculation process is executed based on the contents displayed on the selection list screen 281. The payment screen 29 is displayed on the Web browser 2, and the payment is displayed on the payment screen 29. Is displayed.
[0218]
When the user confirms the contents of the settlement screen 29 and presses the OK button 29a, purchase data registration processing is executed in the Web application server, and an acknowledgment screen 30 is displayed.
[0219]
When the user clicks the “here” portion of the acknowledgment screen 30, the menu screen display processing is executed in the Web application server, all the screens are changed, and the menu screen 26 is displayed again.
[0220]
Here, when the back button is pressed in the Web browser 2 on which the acknowledgment screen 30 is displayed, the settlement screen 29 is displayed again. When the OK button 29a of the settlement screen 29 is further pressed, the purchase is made at the Web application server. Data registration processing is executed, and the same book is ordered twice.
[0221]
FIG. 14 is a diagram showing an operation example of the book purchasing system to which the present invention is applied.
[0222]
First, the menu screen 26 is displayed on the Web browser 2, and the purchase of a book is selected by the user. Then, the purchase candidate list screen 27 and the selection list screen 28 are displayed on the Web browser 2.
[0223]
When the user clicks on a book displayed on the purchase candidate list screen 27, the click content is displayed on the selection list screen 281.
[0224]
When the calculation button 28 a is pressed by the user, a payment calculation process is executed based on the contents displayed on the selection list screen 28, and the payment screen 29 is displayed on the Web browser 2, and the payment is displayed on the payment screen 29. Is displayed. Here, in the processing order monitoring apparatus of the present invention, prediction information indicating that the purchase data registration processing is executed next is obtained.
[0225]
When the user confirms the contents of the settlement screen and presses the OK button 29a, the Web application server is requested to register purchase data. Since this purchase data registration process matches the previous prediction information, execution is permitted and an acknowledgment screen is displayed. Here, in the processing order monitoring apparatus of the present invention, prediction information indicating that the menu screen display processing is executed next is obtained.
[0226]
Here, it is assumed that when the back button is pressed in the Web browser 2 on which the acknowledgment screen is displayed, the settlement screen 29 is displayed again, and the OK button 29a of the settlement screen 29 is further pressed.
[0227]
In this case, a registration process of purchase data is requested to the Web application server, but the registration process of the purchase data does not match the prediction information that the menu screen display process is executed. A determination is made that the processing order is not appropriate in the monitoring device.
[0228]
(Example 2)
Here, apart from the first embodiment, a method for detecting an error using a cookie will be specifically described.
[0229]
FIG. 15 is a diagram illustrating an operation example of a book purchasing system to which the present invention is not applied.
[0230]
First, a purchase candidate list screen 27 and a selection list screen 28 are displayed on the Web browser 23.
[0231]
When the user clicks on the national language dictionary displayed on the purchase candidate list screen 27, the click content is displayed on the selection list screen 282.
[0232]
Further, when the user clicks on the mathematical dictionary displayed on the purchase candidate list screen 27, the content of the click is displayed on the selection list screen 283, and a purchase request for the national language dictionary and the mathematical dictionary is displayed.
[0233]
In this display state, when the back button of the Web browser is pressed, the purchase candidate list screen 37 and the selection list screen 282 are displayed again. As a result, a purchase request for the Japanese dictionary is displayed on the selection list screen 282 on the Web browser.
[0234]
Here, it is assumed that the English dictionary displayed on the purchase candidate list screen 27 is newly clicked by the user. Then, since the operation of the Web browser by the back button is not detected by the Web application server, the selection list screen 284 including the mathematical dictionary is displayed and an error occurs.
[0235]
FIG. 16 is a diagram showing an operation example of the book purchasing system to which the present invention is applied.
[0236]
First, a purchase candidate list screen 27 and a selection list screen 28 are displayed on the Web browser 23.
[0237]
When the user clicks on the national language dictionary displayed on the purchase candidate list screen 27, the click content is displayed on the selection list screen 282. At this time, the processing order monitoring apparatus of the present invention stores history information [27, 282] indicating that the screens 27, 282 are displayed on the Web browser.
[0238]
Further, when the user clicks on the mathematical dictionary displayed on the purchase candidate list screen 27, the display state [27, 282] of the Web browser 23 is set in the cookie, and the Web application server and the processing order monitoring apparatus of the present invention are set. Sent to.
[0239]
In the processing order monitoring apparatus of the present invention, since the received display state [27, 282] matches the previously stored history information [27, 282], it is determined that the processing order is appropriate. .
[0240]
As a result, the clicked content is displayed on the selection list screen 283 of the Web browser 23, and a purchase request for the national language dictionary and the mathematical dictionary is displayed. At this time, the processing order monitoring apparatus of the present invention stores history information [27, 283] indicating that the screens 27, 283 are displayed on the Web browser.
[0241]
In this display state, when the back button of the Web browser is pressed, the purchase candidate list screen 27 and the selection list screen 282 are displayed again. As a result, a purchase request for the Japanese dictionary is displayed on the selection list screen 282 on the Web browser.
[0242]
Here, it is assumed that the English dictionary displayed on the purchase candidate list screen 27 is newly clicked by the user. Then, the display state [27, 282] of the Web browser is set in the cookie and transmitted to the Web application server and the processing order monitoring apparatus of the present invention.
[0243]
In the processing order monitoring apparatus of the present invention, since the received display state [27, 282] does not match the previously stored history information [27, 283], it is determined that the processing order is not appropriate, and the recovery process is performed. Executed.
[0244]
【The invention's effect】
As described above in detail, in the present invention, state transition information indicating screen transition information is determined in advance. Further, information related to the process executed by the request from the Web browser is predicted based on the information related to the process executed by the request from the Web browser and the state transition information. Then, it is determined that the processing order is appropriate when the information regarding the processing requested to be executed by the next request from the Web browser actually matches the predicted information.
[0245]
Thereby, even if a plurality of screens are displayed on the Web browser, it is possible to determine whether or not the processing order is appropriate.
[0246]
In the present invention, even if the content of the process is changed, it can be applied only by rewriting the state transition information related to the changed process, so that the labor required when the process is changed can be reduced.
[0247]
Further, according to the present invention, in addition to the consistency between the information related to the processing executed by the server and the information previously predicted by the server, the current display state of the Web browser and the information related to the processing executed previously by the server By determining whether or not the processing order is appropriate in consideration of the consistency of the processing order, the processing order can be monitored at a higher level.
[0248]
Furthermore, in the present invention, by storing the processing information when the processing order is determined to be appropriate, even if the processing order is not appropriate, the state of the Web browser is automatically returned to the state before it becomes inappropriate. Can be recovered.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a processing order monitoring apparatus for a Web system according to a first embodiment of the present invention.
FIG. 2 is a view showing the contents of state transition information held in a state transition information holding unit in the embodiment.
FIG. 3 is a conceptual diagram illustrating an example of a state in which a screen of a Web browser transitions in the embodiment and an example of state transition information indicating the screen transition state
FIG. 4 is a diagram showing an example of the relationship between the storage contents of an execution history storage unit and a Web browser screen in the embodiment.
FIG. 5 is a view showing a procedure when a prediction unit obtains prediction information in the embodiment;
FIG. 6 is a diagram showing a relationship between a screen transition state at the time of operation in an appropriate order and information in the processing order monitoring apparatus in the embodiment.
FIG. 7 is a diagram showing a relationship between a screen transition state at the time of an operation in which the back button is pressed and information in the processing order monitoring apparatus in the embodiment.
FIG. 8 is a diagram showing a relationship between a screen transition state at the time of an operation in which a reload button is pressed and information in the processing order monitoring apparatus in the embodiment.
FIG. 9 is a diagram showing the relationship between the screen transition state and the contents of the execution history storage unit during the recovery process in the embodiment.
FIG. 10 is a block diagram showing an outline of a Web system having a cookie function.
FIG. 11 is a diagram showing an example of HTML format data transmitted from a Web server to a Web browser in the second embodiment of the present invention.
FIG. 12 is a view showing a relationship between a screen transition state at the time of an operation in which the back button is pressed and information in the processing order monitoring apparatus in the embodiment.
FIG. 13 is a diagram showing a first operation example of a book purchasing system to which the present invention is not applied.
FIG. 14 is a diagram showing a first operation example of a book purchasing system to which the present invention is applied.
FIG. 15 is a diagram showing a second operation example of the book purchasing system to which the present invention is not applied.
FIG. 16 is a diagram showing a first operation example of a book purchasing system to which the present invention is applied.
FIG. 17 is a block diagram showing an example of the relationship between a display screen of a Web browser and processing of a Web application server in a general Web system.
FIG. 18 is a diagram showing an example of a relationship between a display screen of a Web browser configured by a plurality of HTML format data and a serial number added to the HTML format data.
[Explanation of symbols]
1 ... Web system
2, 23 ... Web browser
3 ... Web server
4 ... Application server
44 ... Application program
5, 10, 24 ... Web application server
15 ... Processing order monitoring device
16 ... Request analysis part
17 ... execution monitoring unit
17a ... Monitoring unit
17b ... Prediction unit
18: State transition information holding unit
19 ... Prediction information storage unit
20 ... execution history storage
21 ... Recovery processing section
22, 22a-22e ... state transition information

Claims (10)

リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、前記Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムに組み込まれる装置であって、
予め設定されており、前記Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移により前記Webブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持する手段と、
前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識し、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、前記サーバで次に実行される処理による前記Webブラウザの表示状態を予測した予測情報を求める予測手段と、
前記予測情報と前記Webブラウザから発信されたリクエストにしたがって実際に次に前記サーバで実行される処理による前記Webブラウザの表示状態との整合性の有無を調べ、前記サーバで実行される処理の順序の適否を判定する監視手段と
を具備するWebシステムの処理順序監視装置。
An apparatus incorporated in a Web system including a Web browser that transmits a request and receives screen data for configuring a display screen, and a server that executes processing according to the request transmitted from the Web browser;
It is set in advance and indicates what screen the next screen displayed on the Web browser will change to. The screen information that causes the transition and the screen transition for each transition state to each screen State transition including a screen list indicating a frame to be deleted from the display screen of the Web browser, a screen transition information indicating a screen list indicating a newly added frame, and a transition processing information indicating a process name causing the screen transition Means for holding information;
The display state of the Web browser is recognized from the history information that is the execution result of the processing executed by the server according to the request transmitted from the Web browser, and the recognized display state of the Web browser and the screen information Predicting means for obtaining prediction information for predicting the display state of the Web browser by processing executed next on the server, based on the state transition information including the screen transition information and the transition processing information;
The order of processing executed by the server by checking whether or not there is consistency between the prediction information and the display state of the Web browser by the processing actually executed by the server next in accordance with the request transmitted from the Web browser A processing order monitoring apparatus for a Web system, comprising: monitoring means for determining whether or not the device is appropriate.
リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、前記Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムに組み込まれる装置であって、
予め設定されており、前記Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移により前記Webブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持する手段と、
前記サーバで次に実行される処理による前記Webブラウザの表示状態である予測情報を格納する予測情報格納手段と、
前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行される処理による前記Webブラウザの表示状態を認識し、この認識結果と前記予測情報格納手段に格納済みの予測情報との整合性の有無を調べ、前記サーバで実行される処理の順序の適否を判定する監視手段と、
前記監視手段によって処理順序が適していると判定された場合に、前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識し、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、新規の予測情報を求めて前記予測情報格納手段に格納する予測手段と
を具備するWebシステムの処理順序監視装置。
An apparatus incorporated in a Web system including a Web browser that transmits a request and receives screen data for configuring a display screen, and a server that executes processing according to the request transmitted from the Web browser;
It is set in advance and indicates what screen the next screen displayed on the Web browser will change to. The screen information that causes the transition and the screen transition for each transition state to each screen State transition including a screen list indicating a frame to be deleted from the display screen of the Web browser, a screen transition information indicating a screen list indicating a newly added frame, and a transition processing information indicating a process name causing the screen transition Means for holding information;
Prediction information storage means for storing prediction information which is a display state of the Web browser by processing executed next on the server;
Recognizing the display state of the Web browser by processing executed by the server in accordance with a request transmitted from the Web browser, and confirming whether there is consistency between the recognition result and the prediction information stored in the prediction information storage means Monitoring means for examining and determining the suitability of the order of processing executed in the server;
When the monitoring unit determines that the processing order is appropriate, the display state of the Web browser is recognized from the history information that is the execution result of the process executed by the server in accordance with the request transmitted from the Web browser. Then, based on the recognized display state of the Web browser and the state transition information including the screen information, the screen transition information, and the transition processing information, new prediction information is obtained and the prediction information storage means A processing order monitoring apparatus for a Web system, comprising: a predicting unit that stores data in a storage unit.
請求項2記載のWebシステムの処理順序監視装置において、
前記監視手段によって処理順序が適していると判定された場合に、前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行された処理による前記Webブラウザの表示状態の履歴情報を格納する実行履歴格納手段をさらに具備することを特徴とするWebシステムの処理順序監視装置。
The processing order monitoring apparatus for a Web system according to claim 2,
Execution history storage for storing history information of the display state of the Web browser by processing executed by the server in accordance with a request transmitted from the Web browser when the monitoring unit determines that the processing order is suitable A processing order monitoring apparatus for a Web system, further comprising: means.
請求項3記載のWebシステムの処理順序監視装置において、
前記Webブラウザからリクエストが発信される際に、前記Webブラウザに表示されている画面の状態情報を発信する画面状態情報発信手段をさらに具備し、
前記監視手段は、前記画面状態情報発信手段によって発信された画面の状態情報と前記実行履歴格納手段に格納されている履歴情報とを比較して前記サーバで実行される処理の順序の適否を判定する
ことを特徴とするWebシステムの処理順序監視装置。
The processing order monitoring apparatus for a Web system according to claim 3,
When a request is transmitted from the web browser, further comprising screen state information transmitting means for transmitting state information of a screen displayed on the web browser;
The monitoring means determines whether or not the order of processes executed by the server is appropriate by comparing the screen status information transmitted by the screen status information transmitting means with the history information stored in the execution history storage means. A processing order monitoring apparatus for a Web system, characterized in that:
請求項3又は請求項4記載のWebシステムの処理順序監視装置において、
前記監視手段によって処理順序が適していないと判定された場合に、前記実行履歴格納手段に格納されている履歴情報を用いて前記Webブラウザの表示画面を再構築する回復処理手段をさらに具備することを特徴とするWebシステムの処理順序監視装置。
In the processing order monitoring apparatus of the Web system according to claim 3 or 4,
And a recovery processing means for reconstructing the display screen of the Web browser using history information stored in the execution history storage means when the monitoring means determines that the processing order is not suitable. A processing order monitoring apparatus for a Web system characterized by the above.
リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、前記Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムの前記サーバに、
予め設定されており、前記Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移により前記Webブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持させる機能、
前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識させ、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、前記サーバで次に実行される処理による前記Webブラウザの表示状態を予測した予測情報を求めさせる予測機能、
前記予測情報と前記Webブラウザから発信されたリクエストにしたがって実際に次に前記サーバで実行される処理による前記Webブラウザの表示状態との整合性の有無を調べさせ、前記サーバで実行される処理の順序の適否を判定させる監視機能
を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
A Web browser that receives screen data for forming the display screen transmitted the request, to the server of the Web system composed of a server that executes processing in accordance originating request from the Web browser,
It is set in advance and indicates what screen the next screen displayed on the Web browser will change. For each transition state to each screen, the screen information that causes the transition and the screen transition State transition including a screen list indicating a frame to be deleted from the display screen of the Web browser, a screen transition information indicating a screen list indicating a newly added frame, and transition processing information indicating a process name causing the screen transition The ability to retain information,
The display state of the Web browser is recognized from the history information that is the execution result of the processing executed by the server according to the request transmitted from the Web browser, and the recognized display state of the Web browser and the screen information A prediction function for obtaining prediction information for predicting a display state of the Web browser by a process executed next on the server based on the state transition information including the screen transition information and the transition processing information;
According to the request transmitted from the Web browser, the prediction information is checked for the consistency with the display state of the Web browser by the process executed by the server, and the process executed by the server A computer-readable storage medium storing a program for realizing a monitoring function for determining the suitability of an order.
リクエストを発信し表示画面を構成するための画面データを受信するWebブラウザと、前記Webブラウザから発信されたリクエストにしたがって処理を実行するサーバとから構成されるWebシステムの前記サーバに、
予め設定されており、前記Webブラウザに表示される各画面が次にどのような画面に変化するかを示し、各画面への遷移状態毎に、遷移の起因となる画面情報と、画面遷移により前記Webブラウザの表示画面から削除されるフレームを表す画面リスト及び新たに追加されるフレームを表す画面リストを示す画面遷移情報と、この画面遷移を引き起こす処理名を示す遷移処理情報とを含む状態遷移情報を保持させる機能、
前記サーバで次に実行される処理による前記Webブラウザの表示状態である予測情報を格納させる予測情報格納機能、
前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行される処理による前記Webブラウザの表示状態を認識させ、この認識結果と前記予測情報格納機能によって格納済みの予測情報との整合性の有無を調べさせ、前記サーバで実行される処理の順序の適否を判定させる監視機能、
前記監視機能によって処理順序が適していると判定された場合に、前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行された処理の実行結果である履歴情報から前記Webブラウザの表示状態を認識させ、この認識された前記Webブラウザの表示状態、及び前記画面情報と前記画面遷移情報と前記遷移処理情報とを含む前記状態遷移情報に基づいて、新規の予測情報を求めて前記予測情報格納機能によって格納させる予測機能
を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
A Web browser that receives screen data for forming the display screen transmitted the request, to the server of the Web system composed of a server that executes processing in accordance originating request from the Web browser,
It is set in advance and indicates what screen the next screen displayed on the Web browser will change. For each transition state to each screen, the screen information that causes the transition and the screen transition State transition including a screen list indicating a frame to be deleted from the display screen of the Web browser, a screen transition information indicating a screen list indicating a newly added frame, and transition processing information indicating a process name causing the screen transition The ability to retain information,
A prediction information storage function for storing prediction information which is a display state of the Web browser by processing executed next on the server;
The display state of the Web browser by the process executed by the server according to the request transmitted from the Web browser is recognized, and whether or not there is consistency between the recognition result and the prediction information stored by the prediction information storage function A monitoring function for checking and determining whether or not the order of processing executed in the server is appropriate;
When it is determined by the monitoring function that the processing order is suitable, the display state of the Web browser is recognized from the history information that is the execution result of the process executed by the server according to the request transmitted from the Web browser. The prediction information storage function for obtaining new prediction information based on the recognized display state of the Web browser and the state transition information including the screen information, the screen transition information, and the transition processing information. The computer-readable storage medium which memorize | stored the program for implement | achieving the prediction function stored by this.
請求項7記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、
前記Webシステムの前記サーバに、
前記監視機能によって処理順序が適していると判定された場合に、前記Webブラウザから発信されたリクエストにしたがって前記サーバで実行された処理による前記Webブラウザの表示状態の履歴情報を格納させる実行履歴格納機能を実現させるためのプログラムをさらに記憶したコンピュータ読み取り可能な記憶媒体。
A computer-readable storage medium storing the program according to claim 7,
In the server of the Web system,
Execution history storage for storing history information of the display state of the Web browser by processing executed by the server in accordance with a request transmitted from the Web browser when the monitoring function determines that the processing order is suitable A computer-readable storage medium further storing a program for realizing the function.
請求項8記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、
前記Webシステムの前記サーバに、
前記Webブラウザからリクエストが発信される際に、前記Webブラウザに表示されている画面の状態情報を発信させる画面状態情報発信機能を実現させるためのプログラムをさらに記憶し、
前記監視機能は、前記画面状態情報発信機能によって発信された画面の状態情報と前記実行履歴格納機能によって格納されている履歴情報とを比較して前記サーバで実行される処理の順序の適否を判定させる
ことを特徴とするコンピュータ読み取り可能な記憶媒体。
A computer-readable storage medium storing the program according to claim 8.
In the server of the Web system,
When a request is transmitted from the web browser, a program for realizing a screen state information transmission function for transmitting the state information of the screen displayed on the web browser is further stored.
The monitoring function compares the state information of the screen transmitted by the screen state information transmission function with the history information stored by the execution history storage function, and determines whether the order of processes executed by the server is appropriate. A computer-readable storage medium characterized in that
請求項8又は請求項9記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体において、
前記Webシステムの前記サーバに、
前記監視機能によって処理順序が適していないと判定された場合に、前記実行履歴格納機能によって格納されている履歴情報を用いて前記Webブラウザの表示画面を再構築させる回復処理機能を実現させるためのプログラムをさらに記憶するコンピュータ読み取り可能な記憶媒体。
A computer-readable storage medium storing the program according to claim 8 or 9,
In the server of the Web system,
Realizing a recovery processing function for reconstructing the display screen of the Web browser using the history information stored by the execution history storage function when the monitoring function determines that the processing order is not suitable A computer-readable storage medium that further stores a program.
JP33449098A 1998-11-25 1998-11-25 Web system processing order monitoring apparatus and computer-readable storage medium storing program Expired - Fee Related JP3688914B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33449098A JP3688914B2 (en) 1998-11-25 1998-11-25 Web system processing order monitoring apparatus and computer-readable storage medium storing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33449098A JP3688914B2 (en) 1998-11-25 1998-11-25 Web system processing order monitoring apparatus and computer-readable storage medium storing program

Publications (2)

Publication Number Publication Date
JP2000163343A JP2000163343A (en) 2000-06-16
JP3688914B2 true JP3688914B2 (en) 2005-08-31

Family

ID=18277995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33449098A Expired - Fee Related JP3688914B2 (en) 1998-11-25 1998-11-25 Web system processing order monitoring apparatus and computer-readable storage medium storing program

Country Status (1)

Country Link
JP (1) JP3688914B2 (en)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001216262A (en) 2000-02-07 2001-08-10 Fujitsu Ltd Server
JP3856637B2 (en) * 2000-10-12 2006-12-13 日本電信電話株式会社 Processing cooperative execution method and system, and recording medium recording processing cooperative execution program
JP4067816B2 (en) * 2001-11-28 2008-03-26 松下電器産業株式会社 Information processing apparatus and connection control method thereof
JP2003273820A (en) * 2002-03-14 2003-09-26 Toshiba Corp System for providing information on individual, individual information creating apparatus and individual information creating method
JP2003345744A (en) * 2002-05-23 2003-12-05 Nec Corp Web APPLICATION SERVER AND METHOD FOR CONTROLLING JOB PROCESSING
JP3842696B2 (en) * 2002-06-04 2006-11-08 株式会社損害保険ジャパン Screen transition control system, client, web server, screen transition control method, and computer program
JP4009863B2 (en) * 2003-11-28 2007-11-21 日本電気株式会社 Information processing system, server device, information processing method, and program
CA2547931C (en) * 2004-05-25 2011-01-04 Mitsubishi Denki Kabushiki Kaisha Elevator control apparatus
JP2006092116A (en) 2004-09-22 2006-04-06 Canon Inc Web server and control method therefor
JP2007018205A (en) * 2005-07-07 2007-01-25 Hitachi Software Eng Co Ltd Application program execution device, application development support device, screen transitional history display device, and program
JP4878193B2 (en) * 2006-03-29 2012-02-15 富士通株式会社 Determination program, determination method, and determination apparatus
JP5127552B2 (en) * 2008-04-28 2013-01-23 エスケイ コミュニケーションズ Program and data display method using the program
JP2010020640A (en) * 2008-07-11 2010-01-28 Ns Solutions Corp Program, storage medium, and web screen control method
JP5677899B2 (en) * 2011-06-16 2015-02-25 株式会社三菱東京Ufj銀行 Information processing apparatus and information processing method
JP5738448B2 (en) * 2014-03-12 2015-06-24 株式会社三菱東京Ufj銀行 Information processing device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6393468B1 (en) * 1997-01-20 2002-05-21 British Telecommunications Public Limited Company Data access control
JPH11167584A (en) * 1997-09-30 1999-06-22 Hitachi Ltd Page shift method and its execution device and medium recording page shift processing program and data
JP2000112888A (en) * 1998-10-09 2000-04-21 Toshiba Corp Browser operation management device and computer- readable recording medium recording program

Also Published As

Publication number Publication date
JP2000163343A (en) 2000-06-16

Similar Documents

Publication Publication Date Title
JP3688914B2 (en) Web system processing order monitoring apparatus and computer-readable storage medium storing program
CA2732744C (en) Method and system for communication between a client system and a server system
US8504991B2 (en) Cross-browser testing of a web application
US7099939B2 (en) HTTP transaction monitor with sequence replay capacity
US20080189350A1 (en) Devices, systems, and methods for providing data
US11775262B2 (en) Multi-technology visual integrated data management and analytics development and deployment environment
US20150012987A1 (en) Multi-account login method and apparatus
US20090063968A1 (en) Replaying captured network interactions
WO2002029548A2 (en) Http transaction monitor with capacity to replay in debugging session
WO2001069412A2 (en) Monitoring and modifying services provided over a network
US10884911B2 (en) System and method for use in regression testing of electronic document hyperlinks
CN111801652B (en) Recording and recreating interface navigation procedures
US11514532B1 (en) Transaction data transfer management
JP6436705B2 (en) Test execution device, test execution method, and computer program
CN111245917B (en) Katalon-based work order entry device and implementation method thereof
US11836510B2 (en) Snapshot capture of computing device user interfaces
US10289978B2 (en) Method and apparatus for integrating health care payers and provider systems with health care transaction systems using a single HIPAA EDI response generation component
CN115495372A (en) Analog data processing method, device, equipment and medium
JP6436704B2 (en) Test execution device, test execution method, and computer program
JP2000112888A (en) Browser operation management device and computer- readable recording medium recording program
JP6353759B2 (en) Test execution device, test execution method, and computer program
JP2022069319A (en) Maintenance work monitoring device, maintenance work monitoring method, maintenance work monitoring program, and terminal
WO2023211754A1 (en) Snapshot capture of computing device user interfaces
JP2007272747A (en) Client computer with program, method and function for referring to internet service
CN116841853A (en) Test case generation method and device, electronic equipment and readable storage medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040510

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041102

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050511

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: 20050607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050609

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

Free format text: PAYMENT UNTIL: 20090617

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees