JP5531362B2 - Webページ供給システム、Webページ供給方法、及び制御プログラム - Google Patents

Webページ供給システム、Webページ供給方法、及び制御プログラム Download PDF

Info

Publication number
JP5531362B2
JP5531362B2 JP2010133719A JP2010133719A JP5531362B2 JP 5531362 B2 JP5531362 B2 JP 5531362B2 JP 2010133719 A JP2010133719 A JP 2010133719A JP 2010133719 A JP2010133719 A JP 2010133719A JP 5531362 B2 JP5531362 B2 JP 5531362B2
Authority
JP
Japan
Prior art keywords
web page
client device
additional information
information
web
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
JP2010133719A
Other languages
English (en)
Other versions
JP2011258099A (ja
JP2011258099A5 (ja
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2010133719A priority Critical patent/JP5531362B2/ja
Priority to US13/701,964 priority patent/US20130080518A1/en
Priority to PCT/JP2010/064584 priority patent/WO2011155081A1/ja
Publication of JP2011258099A publication Critical patent/JP2011258099A/ja
Publication of JP2011258099A5 publication Critical patent/JP2011258099A5/ja
Application granted granted Critical
Publication of JP5531362B2 publication Critical patent/JP5531362B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、サーバ装置がWebページをクライアント装置に送信することによってWebページを供給するシステムに関し、特に、Webページにクライアント装置で実行される追加情報を挿入してWebページを送信するシステムに関する。
近年では、ソフトウェアの販売形態が、CD−ROM等によるパッケージによる販売から、ネットワークを経由したサービスによる販売(Saas: Software as a Service)へ徐々に移行している。
Webの機能を用いたWebアプリケーションとしてプログラムが提供されるに従って、複数のアプリケーションを組み合わせるマッシュアップによってWebアプリケーションの機能を拡張又は変更されることが、より重要視される。
このマッシュアップには、サーバ装置に記憶された複数のWebアプリケーションの連携によるWebアプリケーションの機能拡張の他に、クライアント装置におけるプログラムの動作によるWebアプリケーションの機能拡張がある。
特に、クライアント装置でのプログラムのインストール操作を省略するため、JavaScript(登録商標)等のスクリプト言語によって記述された小規模なプログラム(以下、単純にスクリプトという)をサーバ装置がクライアント装置に送信することによる機能拡張方法が開発されている。
今日、こうしたスクリプトは様々なWebアプリケーションによって利用されており、マッシュアップによって新たなスクリプトがWebアプリケーションに追加されると、スクリプト同士が干渉し、予期しない不具合が発生することがあった。
そこで、Webアプリケーションに追加される各スクリプトの一部又は全部それぞれに対応する動作可否情報を用いて、クライアント装置が各スクリプトを動作させるか否かを制御する技術が知られている(例えば、特許文献1参照)。
特開2009−223555号公報
特許文献1には、クライアント装置からサーバ装置へのWebアクセスによって、クライアント装置がWebページをロードするタイミングにのみ、スクリプトを動作させるか否かを制御することが記載されている。
これは、クライアント装置にスクリプトがロードされた後に、当該スクリプトの動作可否情報が更新された場合に、当該ロードされたスクリプトの動作は更新されないため、動作可否情報の更新に対するスクリプトの動作の更新が即時性に欠けるものであった。
これによって、特許文献1に記載された発明では、動作可否情報の更新に対するスクリプトの動作の更新が即時性に欠けるため、Webアプリケーションのエラーが発生した場合の対処について遅延が発生する。このため、Webアプリケーションのユーザの時間的及び金銭的な損失を引き起こす。
本発明は、上記課題を鑑みてなされたものであって、スクリプトの動作可否情報の更新に対して即時性の高いスクリプトの動作の更新を可能とするWebページ供給システムを提供することを目的とする。
本発明の代表的な一例を示せば、Webページをクライアント装置へ送信することによって、前記Webページを供給するWebサーバと、前記Webサーバを管理する管理サーバと、を備えるWebページ供給システムであって、前記Webサーバは、前記クライアント装置から要求されたWebページに追加情報を挿入するか否かを示す制御情報を記憶し、前記クライアント装置から要求されたWebページを当該クライアント装置に送信することによって、前記Webページを供給するWebページ供給部と、前記クライアント装置から要求されたWebページに前記追加情報を挿入する追加情報挿入部と、前記追加情報挿入部を制御する制御部と、を備え、前記管理サーバは、前記Webサーバに記憶される制御情報を編集する管理部を備え、前記制御部は、前記制御情報を参照し、前記Webページを要求した前記クライアント装置に送信するWebページに前記追加情報を挿入するか否かを判定し、前記Webページに前記追加情報を挿入しないと判定された場合に、前記Webページに前記追加情報を挿入しないように前記追加情報挿入部を制御し、前記クライアント装置は、前記Webサーバから送信された前記Webページを表示するWebページ閲覧部と、前記Webサーバから送信された前記追加情報を解釈して、前記追加情報に基づく処理を実行する追加情報解釈部と、を備え、前記追加情報を前記Webページに挿入しないことを、前記制御情報が示すように変更された場合に、前記Webサーバは、前記変更された制御情報で前記追加情報を挿入しないことを示すように変更されたWebページをリロードさせるリロード指令を前記クライアント装置に送信し、前記クライアント装置は、前記リロード指令を受信した場合に、前記追加情報解釈部によって解釈された前記追加情報に基づいて、前記Webページ閲覧部によって表示された前記Webページをリロードし、前記クライアント装置は、前記追加情報解釈部によって解釈された前記追加情報に基づいて、前記Webページ閲覧部によって表示された前記Webページにおけるユーザの操作履歴を示す操作履歴情報を所定のタイミングで前記Webサーバへ送信し、前記操作履歴情報は、前記ユーザによる操作があったWebページの識別子、当該Webページにおける操作の対象となったフォーム要素の識別子、及び前記ユーザによる操作内容の識別子を含み、前記ユーザによる操作内容は、前記ユーザによるクリック操作、及びキーダウン操作の少なくとも一つを含むことを特徴とする。
本発明によれば、追加情報の動作可否情報の更新に対して即時性の高い追加情報の動作の更新を可能とするWebページ供給システムを提供できる
本発明の第1の実施形態のWebページ供給システムの構成の説明図である。 本発明の第1の実施形態のWebページ供給処理のシーケンス図である。 本発明の第1の実施形態の制御情報記憶領域の説明図である。 本発明の第2の実施形態の制御情報記憶領域の説明図である。 本発明の第2の実施形態のWebページ供給処理のシーケンス図である。 本発明の第2の実施形態のリロード許可インタフェースの説明図である。 本発明の第3の実施形態のWebページ供給処理のシーケンス図である。 本発明の第4の実施形態のWebページ供給システムの構成の説明図である。 本発明の第4の実施形態のログ格納領域の説明図である。 本発明の第4の実施形態のWebページ供給処理のシーケンス図である。
以下、本発明の第1〜第4の実施形態を図1〜図10を用いて説明する。
(第1の実施形態)
まず、本発明の第1の実施形態を図1〜図3を用いて説明する。
図1は、本発明の第1の実施形態のWebページ供給システム1の構成の説明図である。
Webページ供給システム1は、Webページ24をクライアント装置4に送信することによってWebページ24を供給するサーバ装置2、サーバ装置2を管理する管理装置3、及びWebページ24を閲覧又は利用するクライアント装置4を備える。サーバ装置2、管理装置3、及びクライアント装置4は、ネットワーク106によって通信可能に接続される。ネットワーク106は、所定のプロトコルによってデータの送受信を実現するものであり、例えば、LAN(Local Area Network)及びWAN(Wide Area Network)等である。
まず、サーバ装置2の詳細について説明する。
サーバ装置2は、各種プログラム及び各種情報を記憶するメモリ装置100、メモリ装置100に記憶されたプログラムを実行し、メモリ装置100及びネットワークインタフェース104を制御するプロセッサ102、並びに、ネットワーク106を介してサーバ装置2を管理装置3及びクライアント装置4と通信可能に接続するネットワークインタフェースを備える。
メモリ装置100は、プロセッサ102が高速にアクセスする必要があるプログラム及び情報を記憶する主記憶装置(例えば、DRAM等)、及び、プログラム及び情報を不揮発に記憶する副記憶装置(例えば、HDD、SSD及びEEPROM等)によって構成される。
メモリ装置100の記憶領域は、プログラムを記憶する領域であるプログラム領域100P、プログラム以外の情報を記憶する領域である記憶領域100Rを含む。しかし、これらの記憶領域100P、100Rは、メモリ装置100の記憶領域の区分又はパーティション等によって形成しなければならないものではない。
プログラム領域100Pには、制御プログラム10、スクリプト挿入プログラム12、及びWebサーバプログラム14が記憶される。
制御プログラム10は、クライアント装置4へ送信するWebページ24への動作変更スクリプト22(追加情報)の挿入を制御する。スクリプト挿入プログラム12は、クライアント装置4によって送信されたWebページ閲覧要求に対応するWebページ24を当該クライアント装置4へ送信する。なお、Webページ24には、動作変更スクリプト22が挿入される場合がある。
Webサーバプログラム14は、サーバ装置2がクライアント装置4によって送信されたWebページ閲覧要求に対応するWebページ24を送信する。
記憶領域100Rには、動作変更スクリプト22及びWebページ24が記憶される。また、記憶領域100Rは、制御情報記憶領域20を含む。
制御情報記憶領域20には、制御プログラム10がスクリプト挿入プログラム12を制御するために使用される許可範囲情報200(図3参照)が記憶される。許可範囲情報200には、クライアント装置4からのWebページ閲覧要求に対して動作変更スクリプト22を挿入するか否かを決定するための情報が登録されている。
動作変更スクリプト22は、複数のWebサービスを組み合わせるマッシュアップによって、Webアプリケーションの機能を拡張するためのスクリプトであり、スクリプト挿入プログラム12によってWebページ24に挿入される。
Webページ24は、クライアント装置4からのWebページ閲覧要求に対応してサーバ装置2から送信されるものである。
ここで、制御プログラム10、スクリプト挿入プログラム12、及びWebサーバプログラム14について詳細に説明する。
管理プログラム16は、管理者から許可範囲情報200を更新するための入力を受け付けた場合に、受け付けた許可範囲情報200の更新についての入力内容を制御プログラム10に通知する。入力内容が通知された制御プログラム10は、入力内容に基づいて許可範囲情報200を更新する。
また、スクリプト挿入プログラム12は、クライアント装置4からのWebページ閲覧要求に対応して送信されるWebページ24に動作変更スクリプト22を挿入するか否かを制御プログラム10に問い合わせる。制御プログラム10は、スクリプト挿入プログラム12からの問い合わせがあった場合に、制御情報を参照して、Webページ閲覧要求を送信したクライアント装置4に送信されるWebページ24に動作変更スクリプト22を挿入するか否かを決定して、決定結果をスクリプト挿入プログラム12に通知する。
スクリプト挿入プログラム12は、Webサーバプログラム14がWebページ24を送信する処理に割り込み、動作変更スクリプト22をWebページ24に挿入する。
Webサーバプログラム14は、クライアント装置4からのWebページ閲覧要求に対応するWebページ24をクライアント装置4に送信する。また、Webサーバプログラム14は、Webページ閲覧要求を受信しなくとも、自身が生成したWebページ24をクライアント装置4に送信してもよい。
ネットワークインタフェース104は、サーバ装置2と他の装置との間の情報の送受信を、ネットワーク106に適合するプロトコルに変換する。ネットワークインタフェース104は、当該ネットワークインタフェース104自体を一意に識別するためのMACアドレス、ネットワーク106内でサーバ装置2を一意に識別するためのネットワークアドレス(例えば、IPアドレス)、又は、サーバ装置2と他の装置との通信セッションを一意に識別するためのセッションIDを管理する。
次に、管理装置3の詳細について説明する。
管理装置3は、サーバ装置2と同じく、メモリ装置100、プロセッサ102、及びネットワークインタフェース104を備える。
メモリ装置100には、サーバ装置2を管理するための管理プログラム16が記憶される。
管理プログラム16は、サーバ装置2の制御プログラム10と通信し、サーバ装置2に記憶された許可範囲情報200を編集する。
なお、サーバ装置2及び管理装置3が専用のインタフェースを搭載すれば、サーバ装置2と管理装置3とは、ネットワーク106を介して通信しなくてもよく、サーバ装置2と管理装置3とが直接接続されることによって通信できる。
また、サーバ装置2のメモリ装置100に管理プログラム16が記憶されれば、サーバ装置2及び管理装置3は同一の機器に実装されてもよい。さらに、クライアント装置4のメモリ装置100に管理プログラム16が記憶されれば、クライアント装置4及び管理装置3は同一の機器に実装されてもよい。
なお、図1では、サーバ装置2と管理装置3との間の通信は、ネットワーク106を介して行われる
次にクライアント装置4の詳細について説明する。
クライアント装置4は、サーバ装置2及び管理装置3と同じく、メモリ装置100、プロセッサ102、及びネットワークインタフェース104を備える。
メモリ装置100には、Webページ閲覧プログラム27及びスクリプト実行プログラム28が記憶される。
Webページ閲覧プログラム27は、サーバ装置2によって送信されたWebページ24を表示する。スクリプト実行プログラム28は、Webページ24に挿入された動作変更スクリプト22を解釈して、動作変更スクリプト22によって指定された処理を実行する。
なお、Webページ閲覧プログラム27及びスクリプト実行プログラム28は、一般的に、Webブラウザ18に含まれる。このため、本実施形態では、Webページ閲覧プログラム27及びスクリプト実行プログラム28を合わせてWebブラウザ18として説明する。
図1の各装置2〜4は、PCによって構成される。PCは通常入力装置(例えば、キーボード及びマウス等)及び出力装置(例えば、ディスプレイ等)を備えるが、本実施形態においてはサーバ装置2及び管理装置3が入力装置及び出力装置を備えなくてもよいので、説明を省略している。
図2は、本発明の第1の実施形態のWebページ供給システム1におけるWebページ供給処理のシーケンス図である。
図2では、上から下に向かって時刻の進度が示され、横の矢印は各プログラム間の通信が示される。矢印の両端のうち矢頭のある一端は情報の送信先を示し、矢頭のない他端は情報の送信元を示す。
まず、Webページ24が提供されるまでのシーケンスについて説明する。
まず、クライアント装置4のWebブラウザ18は、Webページ閲覧要求をサーバ装置2のWebサーバプログラム14へ送信する(S180)。
Webページ閲覧要求は、クライアント装置4のユーザが提供を所望するWebページ24を指示する要求であり、付加情報としてWebブラウザ18の種類を示す情報、Webブラウザ18のバージョン情報、及び送信元のクライアント装置4を特定可能な情報(送信元情報)等を含む。この送信元情報は、例えば、クライアント装置4とサーバ装置2との間の通信のセッションID、クライアント装置4のIPアドレス、及びクライアント装置4(ネットワークインタフェース104)のMACアドレス等である。
スクリプト挿入プログラム12は、クライアント装置4によって送信されたWebページ閲覧要求を受信した場合に、受信したWebページ閲覧要求から送信元情報を抽出し、抽出した送信元情報によって特定されるクライアント装置4に送信されるWebページ24に動作変更スクリプト22を挿入するか否かを制御プログラム10に問い合わせる(S120)。
制御プログラム10は、送信元情報及び許可範囲情報200(図3参照)に基づいて、Webページ24に動作変更スクリプト22をスクリプト挿入プログラム12に挿入させるか否かを決定するクライアント承認処理を実行する(S100)。
ここで、許可範囲情報200の詳細について図3を用いて説明する。図3は、本発明の第1の実施形態の制御情報記憶領域20の説明図である。
許可範囲情報200は、動作モード202、判定要素204、及び判定値206を含む。判定要素204及び判定値206を合わせて判定情報207という。
動作モード202には、判定情報207と一致するクライアント装置4又はセッションに対して送信するWebページ24への動作変更スクリプト22の挿入を許可するか否かを示す情報が登録される。動作モード202にONが登録されている場合には、Webページ24への動作変更スクリプト22の挿入を許可することを示し、動作モード202にOFFが登録されている場合には、Webページ24への動作変更スクリプト22の挿入を禁止することを示す。
判定要素204には、判定値206に登録された値がどの送信元情報であるかを示す情報が登録される。つまり、判定要素204は、制御プログラム10から通知された許可範囲情報200の入力内容のうち、どの値をクライアント装置4又はセッションの識別に利用するかを決定するためのものである。
判定要素204には、送信元情報に含まれるセッションID、IPアドレス、及びMACアドレスが登録され得る。また、判定要素204には、送信元情報がいずれの判定情報207にも一致しない場合に利用されるデフォルトが登録される。
判定値206には、制御プログラム10から通知された許可範囲情報200の入力内容のうち、判定要素204に登録された要素の具体的な値が登録される。なお、判定値206に登録される値は、正規表現等を用いて複数の値を示すようにしてもよい。
図2に戻り、S100のクライアント承認処理について説明する。
制御プログラム10は、送信元情報が許可範囲情報200の判定情報207のデフォルト以外のいずれかに一致するか否かを判定する。
送信元情報が許可範囲情報200の判定情報207のデフォルト以外のいずれにも一致しない場合には、判定要素204にデフォルトが登録されたエントリの動作モード202に登録された情報「ON」に基づいて、制御プログラム10は、Webページ24に動作変更スクリプト22を挿入すると決定する。
一方、送信元情報が許可範囲情報200の判定情報207のデフォルト以外のいずれかに一致する場合には、制御プログラム10は、許可範囲情報200の一致するエントリの動作モード202に登録された情報に従って、Webページ24への動作変更スクリプト22の挿入を禁止すると決定する。
S100のクライアント承認処理では、送信元情報がいずれにも一致しない場合、又は、送信元情報に一致するエントリの動作モード202に「ON」が登録されている場合に、制御プログラム10は、Webページ24へ動作変更スクリプト22を挿入すると決定する。
制御プログラム10は、S100で実行されるクライアント承認処理における決定結果(動作ON)をスクリプト挿入プログラム12に送信する(S102)。
スクリプト挿入プログラム12は、S102で送信された決定結果を受信した場合に、Webページ閲覧要求をWebサーバプログラム14に送信する(S122)。
Webサーバプログラム14は、Webページ閲覧要求を受信した場合に、記憶領域100Rに記憶されているWebページ24のうち、受信したWebページ閲覧要求に対応するWebページ24を選択し、選択したWebページ24をスクリプト挿入プログラム12に送信する(S140)。
スクリプト挿入プログラム12は、Webページ24を受信した場合に、S102で受信した決定結果が動作ONであるため、受信したWebページ24に動作変更スクリプト22を挿入するスクリプト挿入処理を実行する(S124)。
そして、スクリプト挿入プログラム12は、S124で動作変更スクリプト22が挿入されたWebページ24を、Webページ閲覧要求を送信したクライアント装置4へ送信する(S126)。
クライアント装置4がS126で送信されたWebページ24を受信した場合に、Webブラウザ18のスクリプト実行プログラム28が、受信したWebページ24に挿入された動作変更スクリプト22を起動する。そして、起動された動作変更スクリプト22によって、Webページ24における動作が変更される(S220)。
なお、動作変更スクリプト22がWebページ24に作用し、Webページ24の動作を変更している期間である動作変更期間30を、図2では点線矩形として示している。
以上のように、クライアント装置4は、Webページ閲覧要求をサーバ装置2に送信することによって、サーバ装置2からWebページ閲覧要求に対応するWebページ24が送信されるので、Webページ閲覧要求に対応するWebページ24を閲覧又は利用できる。なお、サーバ装置2は、動作変更スクリプト22の挿入が禁止されるWebページ閲覧要求に対しては、Webページ24に動作変更スクリプト22をWebページ24に挿入しないでWebページ24のみをクライアント装置4に送信するため、クライアント装置4が動作変更スクリプト22を実行することに起因するエラー等がクライアント装置4で発生することを防止できる。
次に、許可範囲情報200が変更されて、クライアント装置4が実行していた動作変更スクリプト22の実行が禁止された場合の処理について説明する。
まず、管理装置3の管理プログラム16は、管理者から入力された許可範囲情報200の入力内容を制御プログラム10に送信する(S160)。
制御プログラム10は、S160で送信された許可範囲情報200の入力内容を受信すると、受信した制御情報の入力内容に基づいて、許可範囲情報200を更新する制御情報登録処理を実行する(S104)。
S104で実行される制御情報登録処理で、許可範囲情報200に登録されたエントリのうち動作モード202がONからOFFに変更されるエントリがある場合、つまり、動作変更スクリプト22の実行が禁止されることになるクライアント装置4又はセッションが存在する場合には、制御プログラム10は、当該クライアント装置4に対して、Webブラウザ18のWebページ閲覧プログラム27によって閲覧可能にされたWebページ24をリロードするリロード指令を送信する(S106)。
そして、S106で送信されたリロード指令をクライアント装置4が受信した場合に、当該クライアント装置4で実行中の動作変更スクリプト22は、Webブラウザ18に対してリロードコマンドを発行する(S222)。
Webブラウザ18は、S222で発行されたリロードコマンドを受け付けた場合に、読み込み中のWebページ24を解放し、Webページ閲覧要求をサーバ装置2へ送信する(S180)。
なお、S222で動作変更スクリプト22によってリロードコマンドが発行されると、スクリプト実行プログラム28は、当該動作変更スクリプト22を解放するため、この時点で動作変更期間30が終了する。
サーバ装置2がS180で送信されたWebページ閲覧要求を受信した場合に、スクリプト挿入プログラム12は、前述したように、Webページ24に動作変更スクリプト22を挿入するか否かを制御プログラム10に問い合わせる(S120)。
そして、制御プログラム10が実行するクライアント承認処理(S100)では、当該クライアント装置4又は当該セッションにおいて動作変更スクリプト22の実行が禁止されている、つまり、動作モード202にはOFFが登録されているので、Webページ24への動作変更スクリプト22の挿入を禁止すると決定する(動作OFF)。次に、制御プログラム10は、S100で実行されるクライアント承認処理の決定結果(動作OFF)をスクリプト挿入プログラム12へ送信する(S102)。
次に、スクリプト挿入プログラム12は、S122でWebページ閲覧要求をWebサーバプログラム14に送信する。そして、Webサーバプログラム14は、S140で、Webページ閲覧要求に対応するWebページ24をスクリプト挿入プログラム12に送信する。
スクリプト挿入プログラム12は、Webページ24を受信した場合に、S102で受信した決定結果が動作OFFであるため、S124では、受信したWebページ24に動作変更スクリプト22を挿入せずに(S124)、Webページ24を送信する(S126)。
そして、S126で送信されたWebページ24をクライアント装置4が受信した場合に、Webブラウザ18は、受信したWebページ24を表示してユーザに閲覧可能な状態にする。この場合に、クライアント装置4が受信したWebページ24には動作変更スクリプト22が挿入されてないので、クライアント装置4が実行していた動作変更スクリプト22を排除することができる。
以上のように、許可範囲情報200が変更された場合に、動作変更スクリプト22の実行が禁止されるクライアント装置4が存在する場合には、サーバ装置2は、当該クライアント装置4にリロード指令を即座に送信し、リロード指令を受信したクライアント装置4は動作変更スクリプト22が挿入されているWebページをリロードし、Webページ閲覧要求を送信する。そして、クライアント装置4は、当該Webページ閲覧要求に対応して、動作変更スクリプト22が挿入されないWebページをサーバ装置2から受信するので、動作変更スクリプト22の実行が禁止されてから即座にクライアント装置4から動作変更スクリプト22を排除することができる。
(第2の実施形態)
第1の実施形態では、クライアント装置4で動作変更スクリプト22の実行が禁止されるように許可範囲情報200が変更された場合に、サーバ装置2はクライアント装置4に即座にリロード指令を送信し、クライアント装置4から実行が禁止された動作変更スクリプト22を排除するものである。
しかしながら、クライアント装置4においては、リロード指令を受信したタイミングでいつでもWebページ24をリロードしてよいわけではない。例えば、クライアント装置4がWebページ24をリロードすることによって、サーバ装置2からWebページ24が多重に送信されてしまうエラー、及び、クライアント装置4がWebページ24をリロードすることによって、サーバ装置2とクライアント装置4との間のログインセッションが切れてしまい、クライアント装置4がリロード前のWebページが復元できないエラー等が発生する。
このため、第2の実施形態では、クライアント装置4で表示されているWebページ24又はユーザの状態がリロード可能状態である場合に、クライアント装置4がWebページ24をリロードする。
以下に、第2の実施形態を図4〜図6を用いて説明する。
本実施形態のサーバ装置2の制御情報記憶領域20には、許可範囲情報200に加えて、Webページ24の状態がリロード可能状態であるか否かを確認するためのリロード許可情報208が記憶されている。
図4は、本発明の第2の実施形態の制御情報記憶領域20の説明図である。
制御情報記憶領域20には、図3で説明した許可範囲情報200、及びリロード許可情報208が記憶される。
リロード許可情報208は、動作モード202、ページID212、フォーム要素214、及び判定値216を含む。ページID212、フォーム要素214、及び判定値216を合わせてページ状態情報217という。
動作モード202には、ページ状態情報217によって特定されるWebページ24の状態でリロードを許可するか否かを示す情報が登録される。動作モード202にONが登録されている場合には、Webページ24のリロードを許可することを示し、動作モード202にOFFが登録されている場合には、Webページ24のリロードを禁止することを示す。
ページID212には、クライアント装置4のWebブラウザ18によって閲覧可能にされている所定のWebページ24の識別子が登録される。ページID212に登録されるWebページ24の識別子は、例えば、Webページ24のファイル名、URI、及びサーバ装置2が独自に定義したWebページ24の識別記号であってもよい。
フォーム要素214には、Webページ24中のユーザによって変更可能なフォーム要素の識別子が登録される。フォーム要素214に登録されるWebページ24のフォーム要素の識別子は、各フォーム要素が有する識別子、及び、Webページ24を構成するノードの木構造におけるノード位置を示すアドレス等であってもよい。
また、Webページ24中のすべてのフォーム要素を指定する場合には、フォーム要素214には「ANY_Form」が登録されてもよい。さらに、Webページ24中の複数のフォーム要素を指定する場合には、フォーム要素214には正規表現等によって示された識別子が登録されてもよい。
判定値216に登録された情報は、ページID212、及びフォーム要素214から決定されるフォーム要素に入力された値を示す情報である。判定値216に登録された情報は、特定の値を指定するものであってもよいし、正規表現等を用いて様々な値を指定するものであってもよい。
図5は、本発明の第2の実施形態のWebページ供給システム1におけるWebページ供給処理のシーケンス図である。なお、図5の処理のうち図2に示す第1の実施形態のWebページ供給処理と同じ処理は同じ番号を付与し、説明を省略する。
まず、管理装置3の管理プログラム16は、管理者から入力されたリロード許可情報208の入力内容を含むリロード許可情報をサーバ装置2の制御プログラム10に送信する(S162)。
制御プログラム10は、S162で送信されたリロード許可情報を受信すると、受信したリロード許可情報に基づいて、リロード許可情報208を更新する。そして、制御プログラム10は、クライアント装置4へ送信される動作変更スクリプト22に更新後のリロード許可情報208が含まれて送信されるために、動作変更スクリプト22のリロードに関するロジックを変更する(S105)。
クライアント装置4のWebブラウザ18がWebページ閲覧要求をサーバ装置2へ送信してから、スクリプト挿入プログラム12がWebページ24をクライアント装置4へ送信するまでの処理(S180、S120、S100、S102−ON、S122、S140、S124、及びS126)は、図2に示すWebページ供給処理と同じであるので説明を省略する。
なお、S126において、スクリプト挿入プログラム12から送信されるWebページ24に挿入される動作変更スクリプト22には、リロード許可情報208が含まれる。
また、管理プログラム16が制御情報記憶領域20の管理者による入力内容をサーバ装置2へ送信してから、制御プログラム10がリロード指令をクライアント装置4へ送信するまでの処理(S160、S104、及びS106)は、図2に示すWebページ供給処理と同じであるので説明を省略する。
S106で送信されたリロード指令をクライアント装置4が受信した場合に、当該クライアント装置4で実行中の動作変更スクリプト22は、即座にリロードコマンドを発行せず、Webページ閲覧プログラム27によって閲覧可能にされているWebページ24の状態がリロード可能状態であるか否か確認する(S224)。
具体的には、動作変更スクリプト22は、当該動作変更スクリプト22に含まれるリロード許可情報208のページID212に登録されたWebページの識別子が、Webページ閲覧プログラム27によって閲覧可能にされているWebページ24の識別子と一致するエントリを選択する。そして、動作変更スクリプト22は、Webページ閲覧プログラム27によって閲覧可能にされているWebページ24に含まれるフォーム要素のうち、選択したエントリのフォーム要素214に登録された識別子によって特定されるフォーム要素(該当フォーム要素)に入力された値と、判定値216に登録された値とが一致するエントリがあるか否かを判定する。
そして、該当フォーム要素に入力された値と判定値216に登録された値とが一致するエントリがあると判定された場合には、動作変更スクリプト22は、当該エントリの動作モード202に登録された情報を取得する。そして、動作変更スクリプト22は、取得した動作モード202に登録された情報がすべてONである場合、つまり、取得した動作モード202に一つもOFFが登録されていない場合には、Webページ閲覧プログラム27によって閲覧可能にされているWebページ24をリロードしてもよいと判定して、リロードコマンドをWebブラウザ18に対してリロードコマンドを発行する(S222)。
なお、取得した動作モード202に一つでもOFFが登録されていれば、動作変更スクリプト22は、Webページ閲覧プログラム27によって閲覧可能にされているWebページ24のリロードを禁止し、例えば、ユーザからの入力によってWebページ24の状態が変更されるたびに(S182)、Webページ24の状態がリロード可能状態であるか否かを確認する(S224)。
一方、該当フォーム要素に入力された値と判定値216に登録された値とが一致するエントリがないと判定された場合には、リロード許可情報208のページ状態情報217がデフォルトであるエントリの動作モード202に登録された情報(ON)を取得するので、Webページ閲覧プログラム27によって閲覧可能にされているWebページ24をリロードしてもよいと判定して、リロードコマンドをWebブラウザ18に対してリロードコマンドを発行する(S222)。
図5では、一回目の状態確認ではWebページ24の状態がリロード可能状態でないと判定される。回目のWebページ24の状態が変更された後でも、Webページ24の状態がリロード可能状態でないと判定される。そして、回目のWebページ24の状態が変更された後に、Webページ24の状態がリロード可能状態であると判定し、リロードコマンドを発行する(S222)。
なお、S224でWebページ24の状態がリロード可能状態であると判定された場合であっても、動作変更スクリプト22は、ユーザによるWebページ24のリロードの許可を示す入力を受け付けるためのリロード許可インタフェース60(図6参照)をクライアント装置4に備わる図示しない表示装置に表示し(S226)、ユーザによるWebページ24のリロードの許可を示す入力を受け付けるまで、Webページ24のリロードを待機してもよい。
図6は、本発明の第2の実施形態のリロード許可インタフェース60の説明図である。
リロード許可インタフェース60は、Webブラウザ18によって表示されているWebページ24の上のレイヤにダイアログウィンドウとして表示される。
リロード許可インタフェース60は、Webページ24のリロードを許可するか否かをユーザに報知するメッセージ部61、ユーザによるリロード許可の入力を受け付けるOKボタン62、及びユーザによるリロード不許可の入力を受け付けるNGボタン63を含む。
以上によって、許可範囲情報200が変更された場合に、動作変更スクリプト22の実行が禁止されるクライアント装置4が存在する場合には、サーバ装置2は、当該クライアント装置4にリロード指令を即座に送信するが、クライアント装置4では、Webページ24の状態が利用可能状態となるまでWebページ24をリロードしないので、サーバ装置2からWebページ24が多重に送信されてしまうエラーが発生することを防止できる。さらに、クライアント装置4がWebページ24をリロードすることによって、サーバ装置2とクライアント装置4との間のログインセッションが切れてしまい、クライアント装置4がリロード前のWebページが復元できないエラー等が発生することを防止できる。
(第3の実施形態)
第2の実施形態では、クライアント装置4がリロード指令を受信した場合であっても、Webブラウザ18によって閲覧されているWebページ24の状態がリロード可能状態でなければ、Webページ24をリロードしない。
しかしながら、リロード可能状態をリロード許可情報208に定義できないWebページ24が存在するため、ユーザが明示的にWebページ24のリロードを拒否するシステムが求められる。
そこで、第3の実施形態では、動作変更スクリプト22がWebブラウザ18に対して、Webページ24のリロードを許可するか否かのユーザによる入力を受け付けるインタフェースを提供し、ユーザがWebページ24のリロードを許可しない場合には、サーバ装置2は、管理プログラム16による許可範囲情報200の変更を禁止する。このため、サーバ装置2が許可範囲情報200の変更時に送信するリロード指令をユーザがWebページ24のリロードを許可しない場合に受信しないので、予めユーザがWebページ24のリロードを許可していなければ、クライアント装置4はリロード指令を受信することはない。これによって、リロード可能状態をリロード許可情報208に定義できないWebページ24が存在しても、Webページ24のリロードをユーザが所望する期間禁止できる。
図7は、本発明の第3の実施形態のWebページ供給システム1におけるWebページ供給処理のシーケンス図である。
管理装置3の管理プログラム16がリロード許可情報をサーバ装置2の制御プログラム10に送信してから、スクリプト挿入プログラム12がWebページ24をクライアント装置4へ送信するまでの処理(S162、S105、S180、S120、S100、S102−ON、S122、S140、S124、及びS126)は、図5に示すWebページ供給処理と同じであるので説明を省略する。
動作変更スクリプト22は、Webブラウザ18によってロードされたWebページ24の動作を変更し(S220)、図示しないリロードコントロールインタフェースをクライアント装置4に備わる図示しない表示装置に表示することによって、リロードコントロールインタフェースを提供する(S221)。
リロードコントロールインタフェースは、Webページ24のリロードを許可するか否かの入力を受け付けるためのインタフェースである。なお、Webページ24にHTMLが用いられていれば、Aタグを用いてリロードコントロールインタフェースのリンクがWebページ24に挿入されることによって、リロードコントロールインタフェースを表現してもよいし、Webページ24を構成するフォーム要素に含まれるbuttonによって表現されてもよい。
リロードコントロールインタフェースを介してユーザがWebページ24のリロードを許可しない旨を入力した場合には、Webブラウザ18は、Webページ24のリロードを許可しない旨を通知するための一時停止情報をサーバ装置2の制御プログラム10に送信する(S181)。
制御プログラム10は、一時停止情報を受信した場合には、許可範囲情報200を更新しない旨を示す情報を制御情報記憶領域20に記憶する(S104)。
ここで、管理装置3の管理プログラム16は、管理者から入力された許可範囲情報200の入力内容を制御プログラム10に送信するものとする(S160)。
制御プログラム10は、許可範囲情報200の入力内容を受信しても、許可範囲情報200を更新しない旨を示す情報が制御情報記憶領域20に記憶されているため、許可範囲情報200を更新し、動作変更スクリプト22の実行が禁止されるクライアント装置4又はセッションに対してリロード指令を送信することが一時的に禁止されていることを示す一時拒否通知を管理プログラム16に送信する(S142)。
そして、リロードコントロールインタフェースを介してユーザがWebページ24のリロードを許可する旨を入力した場合には、Webブラウザ18は、Webページ24のリロードを許可する旨を通知するための再開情報を制御プログラム10に送信する(S183)。
サーバ装置2は、再開情報を受信した場合には、S104で制御情報記憶領域20に記憶された許可範囲情報200を更新しない旨を示す情報を削除し、許可範囲情報200の更新が可能になったことを示す再開通知を管理プログラム16に送信する(S144)。
そして、制御プログラム10は、許可範囲情報200の更新しない期間に受信した許可範囲情報200の入力内容に基づいて、許可範囲情報200を更新し(S104)、動作変更スクリプト22の実行が禁止されることになるクライアント装置4にリロード指令を送信する(S106)。
なお、制御プログラム10がリロード指令を送信してからスクリプト挿入プログラム12がWebページ24を送信するまでの処理は(S106、S222、S180、S120、S100、S102−OFF、S122、S140、S126)、図2に示すWebページ供給処理と同じであるので説明を省略する。
以上によって、ユーザがWebページ24のリロードを禁止する間、許可範囲情報200が更新されないので、リロード指令がクライアント装置4に送信されることはないので、リロード可能状態をリロード許可情報208に定義できないWebページ24が存在しても、ユーザが所望する期間Webページ24のリロードを禁止できる。
(第4の実施形態)
第1〜第3の実施形態では、サーバ装置2の制御プログラム10がリロード指令をクライアント装置4で実行されている動作変更スクリプト22に能動的に送信する。
サーバ装置2がリロード指令をクライアント装置4へ送信するためには、サーバ装置2は、サーバ装置2に接続されているすべてのクライアント装置4とサーバ装置2との間のセッションを把握しなければならない。しかしながら、クライアント装置4がサーバ装置2に多数接続される大規模なシステムである場合には、サーバ装置2に接続されているすべてのクライアント装置4とサーバ装置2との間のセッションを把握することはサーバ装置2にとって負荷が高くなる。
そこで、本実施形態では、クライアント装置4が周期的にサーバ装置2に情報を送信することによって、サーバ装置2が、クライアント装置4から受信した情報に基づいてリロード指令を当該クライアント装置4へ送信する。
第4の実施形態を図8〜図10を用いて説明する。
図8は、本発明の第4の実施形態のWebページ供給システム1の構成の説明図である。
管理装置3及びクライアント装置4は、図1に示す管理装置3及びクライアント装置4と同じ構成であるので、説明を省略する。
サーバ装置2は、図1に示すサーバ装置2と同じくメモリ装置100、プロセッサ102、及びネットワークインタフェース104を備えるが、メモリ装置100が記憶する情報が図1に示すサーバ装置2と異なる。
具体的には、メモリ装置100のプログラム領域100Pには、制御プログラム10、スクリプト挿入プログラム12、及びWebサーバプログラム14の他に、ログ受信プログラム19が記憶される。メモリ装置100の記憶領域100Rには、制御情報記憶領域20及びWebページ24の他に、ログ格納領域26が記憶される。また、メモリ装置100の記憶領域100Rには、動作変更スクリプト22の代わりに操作ログ獲得スクリプト23が記憶される。
操作ログ獲得スクリプト23は、動作変更スクリプト22と同じく、クライアント装置4のWebブラウザ18によって表示されたWebページ24の動作を変更するものであるが、当該Webページにおけるユーザの操作ログを獲得して、獲得した操作ログを操作ログ情報260(図9参照)としてサーバ装置2へ送信する。
ログ受信プログラム19は、操作ログ獲得スクリプト23によって操作ログ情報260をログ格納領域26に格納する。
図9は、本発明の第4の実施形態のログ格納領域26の説明図である。
ログ格納領域26には、操作時刻262、セッションID264、ページID266、Web要素268及び操作270を一レコードとする操作ログ情報260が格納される。
操作時刻262には当該操作が発生した時刻情報が登録される。本実施形態の操作時刻262に登録される時刻情報は、年月日及び時刻であるが、時刻情報はこれに限らず、ある時刻からのオフセットであってもよいし、必要があればミリ秒、又はマイクロ秒までをも時刻情報としてもよい。
セッションID264には、操作がなされたWebブラウザ18を実行するクライアント装置4とサーバ装置2との間で保持しているセッションの識別子が登録される。
ページID266には、操作がなされたWebページ24の識別子が登録される。
Web要素268には、当該Webページ24において、操作の対象となったフォーム要素の識別子が登録される。
操作270には、操作内容の識別子が登録される。操作内容には、例えば、クリック及びキーダウン等のユーザによる操作、テキストフォームに記述された文字列、及びWebページ24が閉じられた等のグローバルな操作が含まれる。
図10は、本発明の第4の実施形態のWebページ供給システム1におけるWebページ供給処理のシーケンス図である。
クライアント装置4のWebブラウザ18がWebページ閲覧要求をサーバ装置2へ送信してから、操作ログ獲得スクリプト23が挿入されたWebページ24をスクリプト挿入プログラム12がクライアント装置4へ送信するまでの処理(S180、S120、S100、S102−ON、S122、S140、S124、及びS126)は、図2に示すWebページ供給処理と同じであるので説明を省略する。
操作ログ獲得スクリプト23は、Webブラウザ18のスクリプト実行プログラム28によって起動され、Webブラウザ18におけるユーザの操作の監視を開始する(S220)。
操作ログ獲得スクリプト23は、Webブラウザ18におけるユーザの操作を示す操作ログ情報260をサーバ装置2のログ受信プログラム19へ所定のタイミングで繰り返し送信する(S224)。
操作ログ情報260は、時刻情報、セッションID、WebページID、フォーム要素、及び操作内容を含む。
操作ログ情報260が送信されるタイミングは、例えば、前回操作ログ情報260が前回送信されてから所定時間が経過したタイミングであってもよいし、操作ログ情報260がクライアント装置4に所定量蓄積されたタイミングであってもよいし、ユーザの周期的な所定操作が検出されたタイミングであってもよいし。定期的に発生する典型的操作の検知等の方法で決定すればよい。
ログ受信プログラム19は、操作ログ情報260を受信した場合に、受信した操作ログ情報260をログ格納領域26に記憶する(S190)。
そして、ログ受信プログラム19は、操作ログ獲得スクリプト23に操作ログの検出を継続させるか否か、つまり、クライアント装置4における操作ログ獲得スクリプト23の実行が禁止されていないかを制御プログラム10に問い合わせる(S120)。この問い合わせ要求には、受信した操作ログ情報260に含まれるセッションID又はセッションIDに基づいて導出されるネットワークアドレス等のクライアント装置4の特定情報が含まれる。
制御プログラム10は、S120の問い合わせがあると、S120の問い合わせに含まれるクライアント装置4の特定情報、及び制御情報記憶領域20に記憶された許可範囲情報200を参照し、操作ログ獲得スクリプト23に操作ログの検出を継続させるか否かを判定する(S100)。
S100における判定処理では、制御プログラム10は、図3に示す許可範囲情報200に登録されたエントリの判定情報207が特定情報と一致するエントリの動作モード202にONが登録されている場合に、操作ログ獲得スクリプト23に操作ログの検出を継続させると判定し、当該エントリの動作モード202にOFFが登録されている場合に、操作ログ獲得スクリプト23に操作ログの検出を継続させないと判定する。
この場合のS100では、操作ログ獲得スクリプト23に操作ログの検出を継続させると判定されたものとする。
そして、制御プログラム10は、S100の判定結果(動作ON)をログ受信プログラム19に送信する(S102−ON)。
ログ受信プログラム19は、S100の判定結果(動作ON)を受信すると、操作ログ獲得スクリプト23に操作ログの検出を継続させることを示す動作継続信号を、S224で操作ログ獲得スクリプト23が送信した操作ログ情報260に対するレスポンスとして、操作ログ獲得スクリプト23へ送信する(S191)。
ここで、管理装置3の管理プログラム16は、管理者から入力された許可範囲情報200の入力内容を制御プログラム10に送信し(S160)、制御プログラム10は、受信した許可範囲情報200の入力内容に基づいて、許可範囲情報200を更新する(S104)。
ここで、S104で更新された許可範囲情報200では、S180でWeb閲覧要求を送信したクライアント装置4の操作ログ獲得スクリプト23の操作ログの取得が禁止されるが、制御プログラム10は、リロード指令を送信しない。
また、操作ログ獲得スクリプト23は、2回目の操作ログ情報260をログ受信プログラム19へ送信する(S224)。
ログ受信プログラム19は、操作ログ情報260を受信すると、受信した操作ログ情報260をログ格納領域26に記憶し(S190)、操作ログ獲得スクリプト23に操作ログの検出を継続させるか否かを制御プログラム10に問い合わせる(S120)。
制御プログラム10は、許可範囲情報200を参照して、操作ログ獲得スクリプト23に操作ログの検出を禁止すると判定する(S100)。
そして、制御プログラム10は、S100の判定結果(動作OFF)をログ受信プログラム19に送信し(S102−OFF)、操作ログ獲得スクリプト23を禁止したクライアント装置4の特定情報(例えば、セッションID、及びIPアドレス等)を記憶する(S108)。
ログ受信プログラム19は、判定結果を受信すると、操作ログ獲得スクリプト23に操作ログの検出が禁止されたので、当該クライアント装置4へリロード指令を、S224で操作ログ獲得スクリプト23が送信した操作ログ情報260に対するレスポンスとして、操作ログ獲得スクリプト23へ送信する(S106)。
そして、S106で送信されたリロード指令をクライアント装置4が受信した場合に、当該クライアント装置4で実行中の操作ログ獲得スクリプト23は、Webブラウザ18に対してリロードコマンドを発行する(S222)。
Webブラウザ18は、S222で発行されたリロードコマンドを受け付けた場合に、読み込み中のWebページ24を解放し、Webページ閲覧要求をサーバ装置2へ送信する(S180)。
サーバ装置2がS180で送信されたWebページ閲覧要求を受信した場合に、スクリプト挿入プログラム12は、Webページ24に動作変更スクリプト22を挿入するか否か、及びWebページ24を復元するか否かを制御プログラム10に問い合わせる(S120)。
制御プログラム10は、許可範囲情報200では当該クライアント装置4における操作ログ獲得スクリプト23の実行が禁止されているので、Webページ24への操作ログ獲得スクリプト23の挿入を禁止すると決定し、また、Webページ閲覧要求を送信したクライアント装置4の特定情報がS108で記憶されているか否かを判定する。ここでは、当該特定情報が記憶されているので、Webページ24におけるユーザによる操作を復元して、復元されたWebページ24を送信すると決定する。そして、制御プログラム10は、この決定結果をスクリプト挿入プログラム12へ送信する(S110)。なお、当該特定情報が記憶されていない場合には、Webページ24におけるユーザによる操作を復元せずに、Webページ24を送信すると決定する。
次に、スクリプト挿入プログラム12は、受信したWebページ閲覧要求をWebサーバプログラム14に送信する(S122)。そして、Webサーバプログラム14は、Webページ閲覧要求に対応するWebページ24をスクリプト挿入プログラム12に送信する(S140)。
スクリプト挿入プログラム12は、Webページ24を受信した場合に、Webページ24におけるユーザによる操作を復元するために、当該Webページ24における操作ログ情報260を取得するために、操作ログ情報取得要求をログ受信プログラム19へ送信する(S128)。この操作ログ情報取得要求には、Webページ24のページID、及びWebページ閲覧要求を送信したクライアント装置4とサーバ装置2との間のセッションIDが含まれる。
ログ受信プログラム19は、操作ログ情報取得要求を受信すると、ログ格納領域26に格納された操作ログ情報260のうち、セッションID264及びページID266が受信した操作ログ情報取得要求に含まれるセッションID及びページIDと一致する操作ログ情報260をスクリプト挿入プログラム12へ送信する(S192)。
スクリプト挿入プログラム12は、操作ログ情報260を受信すると、受信した操作ログ情報260のWeb要素268及び操作270に基づいて、Webページ24におけるユーザによる操作を復元し、ユーザによる操作が復元されたWebページ24Aをクライアント装置4のWebブラウザ18に送信する(S126)。
以上によって、サーバ装置2は、クライアント装置4との間にセッションを常に維持する必要がなくなり、サーバ装置2の負荷が軽減できる。また、Webブラウザ18がWebページをリロードしても、Webページ24におけるユーザによる操作が復元されたWebページ24AがWebブラウザ18に送信されるので、Webページ24を閲覧しているユーザがWebページ24のリロード後に再度同じ入力をしなければならない事態を回避できる。
1 Webページ供給システム
2 サーバ装置
3 管理装置
4 クライアント装置
6 ネットワーク
10 制御プログラム
12 スクリプト挿入プログラム
14 Webサーバプログラム
16 管理プログラム
18 Webブラウザ
19 ログ受信プログラム
20 制御情報記憶領域
22 動作変更スクリプト
23 操作ログ獲得スクリプト
24 Webページ
26 ログ格納領域
27 Webページ閲覧プログラム
28 スクリプト実行プログラム
100 メモリ装置
102 プロセッサ
104 ネットワークインタフェース
106 ネットワーク
200 許可範囲情報
208 リロード許可情報
260 操作ログ情報

Claims (13)

  1. Webページをクライアント装置へ送信することによって、前記Webページを供給するWebサーバと、
    前記Webサーバを管理する管理サーバと、を備えるWebページ供給システムであって、
    前記Webサーバは、
    前記クライアント装置から要求されたWebページに追加情報を挿入するか否かを示す制御情報を記憶し、
    前記クライアント装置から要求されたWebページを当該クライアント装置に送信することによって、前記Webページを供給するWebページ供給部と、
    前記クライアント装置から要求されたWebページに前記追加情報を挿入する追加情報挿入部と、
    前記追加情報挿入部を制御する制御部と、を備え、
    前記管理サーバは、前記Webサーバに記憶される制御情報を編集する管理部を備え、
    前記制御部は、
    前記制御情報を参照し、前記Webページを要求した前記クライアント装置に送信するWebページに前記追加情報を挿入するか否かを判定し、
    前記Webページに前記追加情報を挿入しないと判定された場合に、前記Webページに前記追加情報を挿入しないように前記追加情報挿入部を制御し、
    前記クライアント装置は、
    前記Webサーバから送信された前記Webページを表示するWebページ閲覧部と、
    前記Webサーバから送信された前記追加情報を解釈して、前記追加情報に基づく処理を実行する追加情報解釈部と、を備え、
    前記追加情報を前記Webページに挿入しないことを、前記制御情報が示すように変更された場合に、前記Webサーバは、前記変更された制御情報で前記追加情報を挿入しないことを示すように変更されたWebページをリロードさせるリロード指令を前記クライアント装置に送信し、
    前記クライアント装置は、前記リロード指令を受信した場合に、前記追加情報解釈部によって解釈された前記追加情報に基づいて、前記Webページ閲覧部によって表示された前記Webページをリロードし、
    前記クライアント装置は、前記追加情報解釈部によって解釈された前記追加情報に基づいて、前記Webページ閲覧部によって表示された前記Webページにおけるユーザの操作履歴を示す操作履歴情報を所定のタイミングで前記Webサーバへ送信し、
    前記操作履歴情報は、前記ユーザによる操作があったWebページの識別子、当該Webページにおける操作の対象となったフォーム要素の識別子、及び前記ユーザによる操作内容の識別子を含み、
    前記ユーザによる操作内容は、前記ユーザによるクリック操作、及びキーダウン操作の少なくとも一つを含むことを特徴とするWebページ供給システム。
  2. 前記Webサーバは、前記クライアント装置から送信された操作履歴情報を受信した場合に、自身の状態を更新することを特徴とする請求項1に記載のWebページ供給システム。
  3. 前記Webサーバは、前記クライアント装置から送信された操作履歴情報を受信した場合に、前記受信した所定の情報に対する返答となる返答情報を前記クライアント装置へ送信することを特徴とする請求項1に記載のWebページ供給システム。
  4. 前記Webサーバは、前記クライアント装置から送信された前記操作履歴情報を記憶することを特徴とする請求項1に記載のWebページ供給システム。
  5. 前記Webページ供給部は、
    前記クライアント装置でWebページがリロードされる場合に、前記操作履歴情報に基づいて、前記リロードの対象となるWebページにおけるリロード前のユーザの操作履歴を復元したWebページを作成し、
    前記作成されたWebページを前記クライアント装置へ送信することを特徴とする請求項1に記載のWebページ供給システム。
  6. 前記Webサーバ及び前記管理サーバは同一の計算機上に実装されることを特徴とする請求項1に記載のWebページ供給システム。
  7. Webページをクライアント装置へ送信することによって、前記Webページを供給するWebサーバと、前記Webサーバを管理する管理サーバと、を備え、前記Webサーバと前記クライアント装置とがネットワークによって接続されたWebページ供給システムにおけるWebページ供給方法において、
    前記Webサーバは、前記クライアント装置から要求されたWebページに追加情報を挿入するか否かを示す制御情報を記憶し、
    前記Webページ供給方法は、
    前記Webサーバが、前記クライアント装置から要求されたWebページを当該クライアント装置に送信することによって、前記Webページを供給するWebページ供給ステップと、
    前記Webサーバが、前記クライアント装置から要求された前記Webページに前記追加情報を挿入する追加情報挿入ステップと、
    前記管理サーバが、前記Webサーバに記憶される制御情報を編集する管理ステップと、
    前記クライアント装置が、前記Webサーバから送信された前記Webページを表示するWebページ閲覧ステップと、
    前記クライアント装置が、前記Webサーバから送信された前記追加情報を解釈して、前記追加情報に基づく処理を実行する追加情報解釈ステップと、
    前記追加情報を前記Webページに挿入しないことを、前記制御情報が示すように変更された場合に、前記Webサーバが、前記変更された制御情報が前記追加情報を挿入しないことを示すように変更されたWebページをリロードさせるリロード指令を当該クライアント装置に送信するリロード指令送信ステップと、
    前記クライアント装置が、前記リロード指令を受信した場合に、前記追加情報解釈ステップで解釈された前記追加情報に基づいて、前記Webページ閲覧ステップで表示された前記Webページをリロードし、前記リロードが完了したWebページの要求を前記Webサーバへ送信するステップと、
    前記クライアント装置が、前記追加情報解釈ステップで解釈された前記追加情報に基づいて、前記Webページ閲覧ステップで表示された前記Webページにおけるユーザの操作履歴を示す操作履歴情報を前記所定の情報として、前記所定のタイミングで前記Webサーバへ送信する情報送信ステップと、を含み、
    前記追加情報挿入ステップは、
    前記クライアント装置からの要求を受信した場合に、前記制御情報を参照し、前記要求の送信元の前記クライアント装置に送信するWebページに前記追加情報を挿入するか否かを判定するステップと、
    前記Webページに前記追加情報を挿入しないと判定された場合に、前記Webページに前記追加情報を挿入しないステップと、を含み、
    前記操作履歴情報は、前記ユーザによる操作があったWebページの識別子、当該Webページにおける操作の対象となったフォーム要素の識別子、及び前記ユーザによる操作内容の識別子を含み、
    前記ユーザによる操作内容は、前記ユーザによるクリック操作、及びキーダウン操作の少なくとも一つを含むことを特徴とするWebページ供給方法。
  8. 前記Webサーバが、前記クライアント装置から送信された前記操作履歴情報を受信した場合に、自身の状態を更新する状態更新ステップを含むことを特徴とする請求項7に記載のWebページ供給方法。
  9. 前記Webサーバが、前記クライアント装置から送信された前記操作履歴情報を受信した場合に、前記受信した操作履歴情報に対する返答となる返答情報を前記クライアント装置へ送信することを特徴とする請求項7に記載のWebページ供給方法。
  10. 前記Webサーバが、前記クライアント装置によって送信された前記操作履歴情報を記憶する操作履歴情報記憶ステップを含むことを特徴とする請求項7に記載のWebページ供給方法。
  11. 前記Webページ供給ステップは、
    前記クライアント装置でWebページのリロードがされる場合に、前記操作履歴情報に基づいて、前記リロードが完了したWebページにおけるリロード前のユーザの操作履歴を復元したWebページを作成するステップと、
    前記作成されたWebページを前記クライアント装置へ送信するステップと、含むことを特徴とする請求項7に記載のWebページ供給方法。
  12. 前記Webサーバ及び前記管理サーバは同一の計算機上に実装されることを特徴とする請求項7に記載のWebページ供給方法。
  13. Webページをクライアント装置へ送信することによって、前記Webページを供給するWebサーバと、
    前記Webサーバを管理する管理サーバと、を備え、
    前記Webサーバと前記クライアント装置とがネットワークによって接続されたWebページ供給システムにおいて、前記Webページに追加情報を挿入するか否かを前記Webサーバに判定させる制御プログラムであって、
    前記Webサーバは、
    前記クライアント装置から要求された前記Webページに追加情報を挿入するか否かを示す制御情報を記憶し、
    前記クライアント装置から要求された前記Webページを供給するWebページ供給部と、
    前記クライアント装置から要求されたWebページに前記追加情報を挿入する追加情報挿入部と、を備え、
    前記制御プログラムは、前記追加情報挿入部を前記Webサーバに制御させ、
    前記管理サーバは、前記Webサーバに記憶される制御情報を編集する管理部を備え、
    前記制御プログラムは、
    前記Webサーバが前記クライアント装置からの要求を受信した場合に、前記制御情報を参照し、前記要求の送信元の前記クライアント装置に送信するWebページに前記追加情報を挿入するか否かを前記Webサーバに判定させる手順と、
    前記Webページに前記追加情報を挿入しないと判定された場合に、前記追加情報挿入部を前記Webページに前記追加情報を挿入しないように前記Webサーバに制御させる手順と、を含み、
    前記クライアント装置は、
    前記Webサーバから送信された前記Webページを表示するWebページ閲覧部と、
    前記Webサーバから送信された前記追加情報を解釈して、前記追加情報に基づく処理を実行する追加情報解釈部と、を備え、
    前記追加情報を前記Webページに挿入しないことを、前記制御情報が示すように変更された場合に、前記Webサーバは、前記変更された制御情報で前記追加情報を挿入しないことを示すように変更されたWebページをリロードさせるリロード指令を前記クライアント装置に送信し、
    前記クライアント装置は、前記リロード指令を受信した場合に、前記追加情報解釈部によって解釈された前記追加情報に基づいて、前記Webページ閲覧部によって表示された前記Webページをリロードし、
    前記クライアント装置は、前記追加情報解釈部によって解釈された前記追加情報に基づいて、前記Webページ閲覧部によって表示された前記Webページにおけるユーザの操作履歴を示す操作履歴情報を所定のタイミングで前記Webサーバへ送信し、
    前記操作履歴情報は、前記ユーザによる操作があったWebページの識別子、当該Webページにおける操作の対象となったフォーム要素の識別子、及び前記ユーザによる操作内容の識別子を含み、
    前記ユーザによる操作内容は、前記ユーザによるクリック操作、及びキーダウン操作の少なくとも一つを含むことを特徴とする制御プログラム。
JP2010133719A 2010-06-11 2010-06-11 Webページ供給システム、Webページ供給方法、及び制御プログラム Expired - Fee Related JP5531362B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010133719A JP5531362B2 (ja) 2010-06-11 2010-06-11 Webページ供給システム、Webページ供給方法、及び制御プログラム
US13/701,964 US20130080518A1 (en) 2010-06-11 2010-08-27 Web page supplying system, web page supplying method, and recording medium with control program stored therein
PCT/JP2010/064584 WO2011155081A1 (ja) 2010-06-11 2010-08-27 Webページ供給システム、Webページ供給方法、及び制御プログラムを格納した記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010133719A JP5531362B2 (ja) 2010-06-11 2010-06-11 Webページ供給システム、Webページ供給方法、及び制御プログラム

Publications (3)

Publication Number Publication Date
JP2011258099A JP2011258099A (ja) 2011-12-22
JP2011258099A5 JP2011258099A5 (ja) 2013-04-11
JP5531362B2 true JP5531362B2 (ja) 2014-06-25

Family

ID=45097708

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010133719A Expired - Fee Related JP5531362B2 (ja) 2010-06-11 2010-06-11 Webページ供給システム、Webページ供給方法、及び制御プログラム

Country Status (3)

Country Link
US (1) US20130080518A1 (ja)
JP (1) JP5531362B2 (ja)
WO (1) WO2011155081A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5325177B2 (ja) 2010-08-09 2013-10-23 株式会社日立製作所 ウェブアプリケーションの操作記録方法およびシステム
JP5525410B2 (ja) * 2010-10-14 2014-06-18 株式会社日立製作所 操作ログ格納システム、装置、およびプログラム
US9934204B2 (en) * 2012-11-30 2018-04-03 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Conditionally reload workarea user interfaces using a flag indicator to balance performance and stability of web applications
US9483571B2 (en) 2013-03-04 2016-11-01 International Business Machines Corporation Persisting the state of visual control elements in uniform resource locator (URL)-generated web pages
JP6291961B2 (ja) * 2014-03-28 2018-03-14 富士通株式会社 情報処理システム、情報処理端末、コンテンツ管理装置、及び情報処理方法
JP6468293B2 (ja) * 2015-01-22 2019-02-13 富士通株式会社 アプリケーション機能拡張方法、アプリケーション機能拡張プログラム、及びアプリケーション機能拡張装置
US10581989B2 (en) * 2015-07-30 2020-03-03 Nasdaq, Inc. Application logging framework
JP2019086851A (ja) * 2017-11-01 2019-06-06 シャープ株式会社 情報処理装置および情報処理システム
CN112099998A (zh) * 2020-09-24 2020-12-18 百度在线网络技术(北京)有限公司 小程序加载失败的处理方法、装置、电子设备和存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7010605B1 (en) * 2000-08-29 2006-03-07 Microsoft Corporation Method and apparatus for encoding and storing session data
US20020129159A1 (en) * 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
WO2003096669A2 (en) * 2002-05-10 2003-11-20 Reisman Richard R Method and apparatus for browsing using multiple coordinated device
JP2004192346A (ja) * 2002-12-11 2004-07-08 Seiko Epson Corp メモリ管理装置、プロキシサーバ、ブラウザ端末、メモリ管理プログラム、サーバ用プログラム、端末用プログラム及び監視プログラム、並びにメモリ管理方法
US8706551B2 (en) * 2003-09-04 2014-04-22 Google Inc. Systems and methods for determining user actions
WO2008074133A1 (en) * 2006-12-21 2008-06-26 Sxip Identity Corp. System and method for simplified login using an identity manager
US7584294B2 (en) * 2007-03-12 2009-09-01 Citrix Systems, Inc. Systems and methods for prefetching objects for caching using QOS
US20080249798A1 (en) * 2007-04-04 2008-10-09 Atul Tulshibagwale Method and System of Ranking Web Content
JP4847397B2 (ja) * 2007-06-05 2011-12-28 株式会社日立ソリューションズ 逐次保存型Webアプリケーションシステム
CN101946467A (zh) * 2008-02-22 2011-01-12 朗讯科技公司 日历事件提醒系统及日历事件通知方法
JP5088269B2 (ja) * 2008-08-19 2012-12-05 富士通株式会社 画面情報管理方法
US20100180330A1 (en) * 2009-01-09 2010-07-15 Microsoft Corporation Securing Communications for Web Mashups
US8543608B2 (en) * 2009-09-10 2013-09-24 Oracle International Corporation Handling of expired web pages

Also Published As

Publication number Publication date
US20130080518A1 (en) 2013-03-28
JP2011258099A (ja) 2011-12-22
WO2011155081A1 (ja) 2011-12-15

Similar Documents

Publication Publication Date Title
JP5531362B2 (ja) Webページ供給システム、Webページ供給方法、及び制御プログラム
KR101433981B1 (ko) 웹 기반 애플리케이션의 오프라인 실행
US8438625B2 (en) Management apparatus, control method, and storage medium
JP3967806B2 (ja) リソースの位置を指名するためのコンピュータ化された方法及びリソース指名機構
US7853644B2 (en) Client-server system
US20110246651A1 (en) Recording and Serializing Events
JP2006023830A (ja) 出力終了通知方式、出力制御装置、制御プログラム及び記憶媒体
US20050111856A1 (en) Imaging device information management system
WO2007108904A2 (en) System and method for editing online documents
JP2009217314A (ja) 情報処理装置、サーバ、データ処理方法、記憶媒体、プログラム
US20120060079A1 (en) Discovering alternative user experiences for websites
US20140214782A1 (en) Distributed Storage Object Delete
JP2008251009A (ja) エンドユーザのコンピュータでターゲット装置のドライバをインストールするための方法及び周辺装置
US8997076B1 (en) Auto-updating an application without requiring repeated user authorization
US8332494B2 (en) Device management system, servers, method for managing device, and computer readable medium
US8452194B2 (en) System, image processing apparatus, image forming apparatus, and method thereof
JP6274758B2 (ja) ネットワーク機器管理装置、ネットワーク機器管理方法、およびネットワーク機器管理方法を実行するプログラム
JPH11212891A (ja) プリンタおよびネットワークシステム
US10740085B2 (en) Webserver interface for deployment management tool
US7860987B2 (en) Apparatus for providing service in response to user request and method therefor
JP4728017B2 (ja) 統合セキュリティ監査装置、統合セキュリティ監査方法及び統合セキュリティ監査プログラム
JP2002366325A (ja) 分散環境における動的作成装置の表示方法
US20040249908A1 (en) Vending network resources
JP2002334058A (ja) メインフレームのアプリケーション実行方法、アプリケーション実行システム、プログラム
US20080222157A1 (en) Information providing method and information providing system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130227

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140404

R150 Certificate of patent or registration of utility model

Ref document number: 5531362

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees