JP4041217B2 - サーバ側非同期フォーム管理方法および装置 - Google Patents

サーバ側非同期フォーム管理方法および装置 Download PDF

Info

Publication number
JP4041217B2
JP4041217B2 JP20933198A JP20933198A JP4041217B2 JP 4041217 B2 JP4041217 B2 JP 4041217B2 JP 20933198 A JP20933198 A JP 20933198A JP 20933198 A JP20933198 A JP 20933198A JP 4041217 B2 JP4041217 B2 JP 4041217B2
Authority
JP
Japan
Prior art keywords
request
response
stored
web browser
computer
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 - Lifetime
Application number
JP20933198A
Other languages
English (en)
Other versions
JPH11120108A (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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH11120108A publication Critical patent/JPH11120108A/ja
Application granted granted Critical
Publication of JP4041217B2 publication Critical patent/JP4041217B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Description

【0001】
【発明の属する技術分野】
本発明は、遠隔/モバイル・コンピューティングに関し、具体的には、ウェブ・ブラウザ/ウェブ・サーバ通信モデルを使用した遠隔/モバイル・コンピューティングに関する。
【0002】
【従来の技術】
「情報スーパーハイウェイ」が宣伝され、力説されていることにより、インターネットがマスコミュニケーション媒体としてますます知られ、受け入れるようになった。このように、インターネットが複数のネットワーク間の通信と対話のための実現可能な媒体として広く認識されるようになったため、コンピュータ・ネットワーク間の対話のための、インターネット標準プロトコルに基づいて構築された大規模なユーザ基盤も確立されている。
【0003】
インターネットのパラダイムはクライアント−サーバ関係のパラダイムであり、インターネット・クライアント(ブラウザ)がインターネット・サーバと通信する。インターネットへのアクセスを拡大するために、クライアントとサーバが使用する通信プロトコルと言語が標準化されている。これらのプロトコルには、クライアントとサーバとの間の通信に使用される通信プロトコルであるハイパーテキスト転送プロトコル(HTTP)と、伝送制御プロトコル/インターネット・プロトコル(TCP/IP)が含まれる。TCP/IPのTCP部分は、コンピュータ間またはアプリケーション間の通信のためのトランスポート固有プロトコルである。ハイパーテキスト・マークアップ言語(HTML)と呼ばれる、クライアントとサーバが通信する言語も標準化されている。
【0004】
ワールド・ワイド・ウェブのクライアント/サーバ・アプリケーション環境では、クライアントはユーザ・インタフェースとして機能するウェブ・ブラウザとすることができる。ウェブ・ブラウザは適切なウェブ・サーバにユーザ要求を送り、ウェブ・サーバから返されたHTMLデータの形式設定と表示を行う。また、ウェブ・ブラウザは、HTMLデータを評価して、HTML内に埋め込まれたハイパーリンク・ステートメントがないかどうかを判断する。ハイパーリンク・ステートメントは、後でブラウザによって開始されることになるブラウザ要求を必要とする。ウェブ・サーバはクライアントのためにサーバとして機能し、ウェブ・ブラウザ要求を処理して要求された応答をHTTPデータ・ストリームのHTMLデータ部分として返す。
【0005】
インターネットを使用するシステムの基本通信構造を図1に示す。図1では、ウェブ・ブラウザ10が通信リンク15を介してウェブ・サーバ20と通信する。この通信リンクは、一般には、ローカル・エリア・ネットワーク接続、ワイド・エリア・ネットワーク接続、電話回線を介した接続、またはこれらの組合せである。ウェブ・ブラウザ10は、TCP/IPを使用してウェブ・サーバ20と通信する。インターネット通信の大半では、ウェブ・ブラウザが汎用通信プロトコルHTTPを使用してウェブ・サーバと通信する。HTTPはウェブ・ブラウザとウェブ・サーバとの間のTCP/IPリンクを介してウェブ・ブラウザとウェブ・サーバとの間で伝送される。ウェブ・ブラウザ10とウェブ・サーバ20との間で伝送される実際のデータは、前述のHTTPデータ・オブジェクト(たとえばHTMLデータ)である。ウェブ・サーバ20は、いくつかのウェブ・ブラウザからブラウザ要求を受け取り、それらを適切なサーバに送るプロキシとすることもできる。
【0006】
ウェブ・ブラウザ/ウェブ・サーバのとそれらの共通情報およびトランスポート・プロトコルであるHTMLおよびHTTPの普及の結果、ウェブ技法は情報にネットワーク・アクセスするための汎用インタフェースとして受け入れられるようになっている。さらに、ウェブ・ブラウザとウェブ・サーバとの間の通信のためのプロトコルおよび言語が標準化されているため、ユーザがネットワーク情報にアクセスするためにウェブ・ブラウザとして、Netscape NavigatorTM、NCSA MosaicTM、WebExplorerTM、またはその他のウェブ・ブラウザのいずれを使用しているかを問わず、通信プロトコルおよび言語は同じである。したがって、ウェブ・ブラウザの大規模なインストール済みユーザ基盤は、インターネットの接続可能性およびHTTP定義の共通ゲートウェイ・インタフェース(CGI)を使用したウェブ・アプリケーション・サーバの作成の容易さと相まって、ウェブ技法を大規模クラスのフォーム・ベース応用分野にとってきわめて魅力的な技法にしている。
【0007】
インターネットが普及し、受け入れられるようになると同時に、モバイル・コンピューティングもますます普及するようになった。ラップトップ、ノートブック、パーソナル・ディジタル/通信アシスタンツ(PDA/PCA)およびその他の装置の使用により、無線通信の需要が伸びている。しかし、無線ワイド・エリア・ネットワーク、セルラ通信、およびパケット無線は、ウェブ環境で使用した場合に共通した限界がある。1バイト当たりの通信コストの高さ、遅い応答時間、低帯域幅、信頼性の低さはすべて、ワールド・ワイド・ウェブのステートレス通信プロトコルのために無線技法を使用することを妨げている。また、ウェブ・プロトコルはステートレスであるため、1要求当たりのデータ量と無線接続を介して伝送される通信要求の数は、通信が自立型でない場合に必要な数よりも多くなる。
【0008】
さらに、ウェブ・ブラウズの基礎機構とプロトコルは、従来のネットワーク・モデルを念頭において開発された。これらの機構は、関与するコンピュータが高帯域幅で安価な信頼性の高いリンクを介して接続されているという暗黙の前提に基づいて開発された。しかし、有線LANやWAN環境と異なり、モバイル・リンクは一般に低帯域幅でコストがかかり、信頼性が低い。モバイル接続の中には他のモバイル接続よりもましなものもある。たとえば単純なダイヤルアップ・モデムはパケット無線よりも高速で安価である。しかし、すべてLANよりは著しく遅い。また、モバイル接続は信頼性も低い。信号劣化、妨害物、およびその他の問題による通信切断が珍しくない。したがって、LAN環境を対象としたウェブ・ブラウザなどのアプリケーションは、ネットワーク制約環境ではしばしばきわめてパフォーマンスが低い。
【0009】
さらに、モバイル環境は、切断動作の問題を引き起こす。標準ウェブ・ブラウズ(および多くの既存のネットワーク化アプリケーション)は、切断は比較的まれなエラー事例であることを前提としている。クライアントがサーバから切断されると一般には操作ができない。
【0010】
接続の弱さと切断の可能性によってさらに、移動性の問題、すなわちユーザの接続性の動的性質という第3の局面が生じる。一人のユーザが異なる時点で強く接続されたり(LAN)、弱く接続されたり(セルラまたはその他のモバイル・リンク)、切断されたりする。
【0011】
無線通信の特徴である資源制約的または信頼性の低い通信環境でブラウザを使用した場合、いくつかの要因によって使用可能度の低さとユーザ生産性の低下が生じる。第一に、ブラウザ・プロトコルは同期的である。すなわち、ユーザは要求が完了するまで待ってからでなければ他の要求を出すことができない。低速の無線伝送、インターネットまたはイントラネット・トラフィックの混在のために遅延が長くなると、ユーザは欲求不満になったり生産性が低下したりすることがある。
【0012】
第二に、低速リンクまたは時間コスト・ベースのリンクを介した場合、同期要求/応答方式の当然のバースト性が重大な問題になることがある。有線LANを介した場合、通常はサーバ応答時間が主な問題であるが、無線環境では一般には帯域幅と待ち時間が主要な要因である。(パケット無線ネットワークでの待ち時間は、数秒程度になることがある。)第三に、通常の同期要求/応答モデルは意図的切断または意図しない切断に直面するとまったく機能しない。要求をただちに満たすことができない場合、典型的にはエラー・コードが返され、ユーザは後でその要求を明示的に再試行しなければならない。
【0013】
上述の説明に照らして、変化する通信パフォーマンスおよび信頼性レベルによって特徴づけられるモバイル・コンピューティング環境におけるウェブ・ブラウザ/ウェブ・サーバ動作を改良する必要がある。
【0014】
【発明が解決しようとする課題】
以上の説明に鑑みて、本発明の目的は、接続の弱い環境または切断された環境においてブラウザ通信の同期的性質の影響を少なくすることである。
【0015】
本発明の他の目的は、通信時間、待ち時間、またはその他の通信上の制約によってブラウザ/サーバ通信の応答性が低下する遠隔環境またはモバイル環境におけるブラウザの限界を克服することである。
【0016】
本発明の他の目的は、環境の性質がユーザにとって透過なモバイル環境におけるブラウザ機能を提供することである。
【0017】
本発明の他の目的は、モバイル環境で既存のブラウザを使用することができるように、接続状況をブラウザにとって透過にすることである。
【0018】
【課題を解決するための手段】
本発明の上記およびその他の目的は、第2のコンピュータがアクセスすることができるサーバ・アプリケーションへのウェブ・ブラウザからの要求を第2のコンピュータにおける持続的要求待ち行列に記憶することによって、一時的および断続的に第2のコンピュータに接続される遠隔/モバイル処理システム上で実行されているウェブ・ブラウザとの通信を可能にする方法、システム、およびコンピュータ・プログラム製品によって実現される。クライアント・アプリケーションからの要求に応答して、ウェブ・ブラウザに暫定的応答が送られる。記憶された要求をサーバ・アプリケーションに送り、サーバ・アプリケーションから応答を受信する。受信した応答はその後、遠隔/モバイル処理システム上で実行されているウェブ・ブラウザに送ることができる。
【0019】
要求を第2のコンピュータ(サーバ側)にある要求待ち行列に記憶し、ウェブ・ブラウザに暫定的応答を送ることによって、ウェブ・ブラウザの非同期動作を実現することができる。さらに、要求を通信のサーバ側に記憶することによって、その要求を接続終了後に遠隔/モバイル処理システムによって処理することができる。したがって、本発明は弱い接続性の限界を克服する。さらに、低速環境では、本発明は、ユーザが要求に対する応答を待たずにいくつかの要求をアップロードすることができ、要求がバックグラウンドで処理されている間に作業を続けることができるようにする。
【0020】
本発明の特定の実施形態では、ブラウザから受け取った要求が遅延された処理要求であるかどうかが判断される。要求が遅延された処理要求ではない場合、その要求は記憶されずに直接処理され、ブラウザに応答が送られる。
【0021】
第2のコンピュータにおいて要求が受信され、第2のコンピュータの要求待ち行列に記憶されると、遠隔/モバイル・データ処理システムは、第2のコンピュータから切断することができる。その場合、遠隔/モバイル・データ処理システムは、第2のコンピュータに再接続して記憶された要求に対する応答を受信することになる。特定の実施形態では、記憶された要求のリストをウェブ・ブラウザに供給してユーザに提示することができる。ユーザは、記憶済み要求リスト内の記憶済み要求のうちの選択された1つを要求することができる。次に、記憶済み要求のリストの選択された1つの記憶済み要求に関連づけられた応答をウェブ・ブラウザに送ってユーザに提示することができる。さらに、第2のコンピュータが応答を受信した後で受信応答が入手可能であることをユーザに通知することができる。この応答は、ユーザがその応答を要求した場合にウェブ・ブラウザに供給することができる。
【0022】
要求の送受信に複数の接続を使用することができるため、本発明の他の実施形態はユーザ識別子に関連づけられた持続的要求待ち行列を確立する。その場合、遠隔/モバイル・データ処理装置が第2のコンピュータと再接続すると、遠隔/モバイル・データ処理システムは第2のコンピュータにユーザ識別子を送ることができる。次に、受信したユーザ識別子に関連づけられた持続要求待ち行列からの要求に対する受信応答を、遠隔/モバイル・データ処理システムに送ることができる。したがって、要求待ち行列にユーザ識別子を関連づけることによって、複数のユーザが同じ第2のコンピュータに接続することができ、自分の待ち行列にのみアクセスすることができる。したがって、要求待ち行列や要求待ち行列に関連づけられた応答への無許可のアクセスを防止するようにセキュリティ保護された応答および要求待ち行列が提供される。
【0023】
本発明の他の実施形態では、受信応答を解析して受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断する。受信応答内に要求が埋め込まれている場合、埋め込まれた要求によって指定されたサーバにその埋め込まれた要求を送ることができる。埋め込まれた要求に対する応答は第2のコンピュータで受信して第2のコンピュータで記憶することができる。次に、記憶された応答は持続要求待ち行列内に記憶されている要求に関連づけられる。記憶された受信応答と、埋め込まれた要求に対する記憶された応答は次にウェブ・ブラウザに供給することができる。
【0024】
本発明の他の実施形態では、要求に対する応答が第2のコンピュータに記憶され、ユーザ識別子に関連づけられた持続要求待ち行列内の記憶された要求に関連づけられる。したがって、各持続要求待ち行列がユーザ識別子に関連づけられた複数の持続要求待ち行列を確立することができる。これによって、ウェブ・ブラウザのユーザからの要求がそのユーザのユーザ識別子に関連づけられた持続要求待ち行列に記憶されるようにして複数のウェブ・ブラウザからの要求を複数の持続要求待ち行列に記憶することができる。次にこれらの複数の要求を関連づけられたウェブ・サーバに送り、関連づけられたウェブ・サーバから複数の応答を受信することができる。受信した複数の応答は、要求に対する応答がその要求の送信元のウェブ・ブラウザに送られるようにして複数のウェブ・ブラウザに送ることができる。
【0025】
本発明の他の実施形態では、第2のコンピュータに一時的および断続的に接続される遠隔/モバイル処理システム上で実行されているウェブ・ブラウザが、第2のコンピュータがアクセスすることができるサーバ・アプリケーションに対するウェブ・ブラウザからの要求を、第2のコンピュータにある持続要求待ち行列に記憶することによって通信する。記憶された要求にはクライアント識別情報が関連づけられ、記憶された要求はサーバ・アプリケーションに供給される。サーバ・アプリケーションから応答を受信し、第2のコンピュータ上にあるサーバ側キャッシュに記憶する。次に、記憶された受信応答は記憶されている要求に関連づけられ、記憶された要求に関連づけられたクライアント識別情報に関連づけられたウェブ・ブラウザに供給される。
【0026】
本発明の他の態様は、クライアント識別情報に関連づけられたウェブ・ブラウザのその後の接続中に、記憶されている要求を送る。さらに、記憶されている要求をサーバ・アプリケーションに送る前に要求の修正を受け取ることができる。要求待ち行列に記憶されている要求を修正し、記憶されている要求を修正された要求に置き換えることができる。
【0027】
本発明の他の実施形態では、ブラウザから受け取った要求が遅延された処理要求であるかどうかを判断する。要求が遅延された処理要求である場合、その要求は要求待ち行列に入れられ、それに応じて処理される。
【0028】
本発明の他の実施形態では、サーバからの複数の応答に持続要求待ち行列内の単一の項目を関連づける。この持続要求待ち行列内の単一の項目に関連づけられた複数の応答は、その単一の項目を求める要求に応答して遠隔/モバイル・データ処理システムに供給される。
【0029】
当業者ならさらによくわかるように、本発明は方法、装置/システム、またはコンピュータ・プログラム製品として実施することができる。
【0030】
【発明の実施の形態】
以下に、本発明の好ましい実施形態が図示されている添付図面を参照しながら本発明について詳細に説明する。しかし本発明は、多くの異なる態様で実施可能であり、本明細書に記載の実施形態に限定されるものと解釈してはならない。これらの実施形態は、本開示を詳細で完全なものになり、本発明の範囲が当業者に十分に伝わるように示すものである。全体を通じて同様の番号は同様の要素を指す。当業者ならわかるように、本発明は方法としても装置としても実施可能である。したがって、本発明は完全にハードウェア実施形態、完全にソフトウェア実施形態、またはソフトウェア態様とハードウェア態様を組み合わせた実施形態の形を取ることができる。
【0031】
本明細書では、本発明について、本発明の実施形態または態様を示すフローチャートを参照しながら説明する。フローチャートの各ブロックおよびフローチャートの各ブロックの組合せは、コンピュータ・プログラム命令によって実施可能であることを理解されたい。これらのプログラム命令をプロセッサに送って、プロセッサ上で実行される命令が、フローチャートの1つまたは複数のブロックで指定されている機能を実施する手段を生じさせるように機械を作り出すことができる。コンピュータ・プログラム命令をプロセッサによって実行し、プロセッサによって一連の操作ステップが行われるようにし、プロセッサ上で実行される命令がフローチャートの1つまたは複数のステップに指定されている機能を実施するステップを実現するようにコンピュータ実施プロセスを作り出すことができる。
【0032】
したがって、フローチャートのブロックは、指定されている機能を実行する手段の組合せと、指定されている機能を実行するステップの組合せと、指定されている機能を実行するプログラム命令手段とをサポートする。また、フローチャートの各ブロックおよびフローチャートの各ブロックの組合せは、指定されている機能またはステップを実行する専用ハードウェア・ベース・システムによっても、専用ハードウェアとコンピュータ命令との組合せによっても実施可能であることを理解されたい。
【0033】
図2に、本発明の一実施形態を示す。図2に示すように、ウェブ・ブラウザ10はクライアント側インタセプト・モジュール30と通信する。ウェブ・サーバ20はサーバ側インタセプト・モジュール40と通信する。次に、クライアント側インタセプト・モジュール30は、通信リンク35を介してサーバ側インタセプト・モジュール40と通信する。ウェブ・ブラウザ10とクライアント側インタセプト・モジュール30は、第1のコンピュータ5内に含めることができる。サーバ側インタセプト・モジュール40とウェブ・サーバ20は第2のコンピュータ6内に含めることができる。第1のコンピュータ5と第2のコンピュータ6は外部通信リンク35を介して通信する。第1のコンピュータ5は、遠隔/モバイル・データ処理システムであることが好ましい。本明細書で使用する「遠隔/モバイル」とは「一時的および断続的にリンクされる」ことを意味し、一時的とは「限定された時間のあいだ続くこと」を意味し、断続的とは「間隔をおいて行われたり終わったりすること、連続していないこと、または時折行われること」を意味する。遠隔/モバイル・データ処理システムには、ネットワークなどを介して他のシステムに遠隔アクセスするデータ処理システムも含めることができる。
【0034】
ウェブ・ブラウザ10はハイパーテキスト転送プロトコル(HTTP)およびハイパーテキスト・マークアップ言語(HTML)を使用して、同じくHTTPおよびHTMLを使用するインターネット・ウェブ・サーバ20と通信するインターネット・ウェブ・ブラウザであることが好ましい。動作中、ウェブ・ブラウザ10はHTTPデータ・ストリームを出力し、それがクライアント側インタセプト・モジュール30によってインタセプトされる。このクライアント側インタセプト・モジュール30によるHTTPデータ・ストリームのインタセプトは、TCP/IPループバック機能を使用して行うことができ、クライアント側インタセプト・モジュール30は127.0.0.1のようなネットワーク番号127を有するIPアドレスに常駐する。クライアント側インタセプト・モジュール30は次にHTTPデータ・ストリームをクライアント/サーバ固有のプロトコルに変換または変形し、そのクライアント/サーバ固有データ・ストリームを外部通信リンク35上に送出する。サーバ側インタセプト・モジュール40がそのクライアント/サーバ固有データ・ストリームを受け取り、ウェブ・ブラウザ発信通信に対応する元のHTTPデータ・ストリームを再構築する。この再構築されたHTTPデータ・ストリームは次にウェブ・サーバ20に転送される。ウェブ・サーバ20は、インターネット・ウェブ・サーバの通常の方式でHTTPデータ・ストリームに応答する。当業者ならわかるように、ウェブ・サーバ20はインターネットに複数のブラウザが接続できるようにするプロキシであってもよい。
【0035】
ウェブ・サーバ20が、たとえば特定のURLホーム・ページを求めるブラウザ要求に応答して、ウェブ・ブラウザ10に送信する情報を受け取ると、ウェブ・サーバ20はウェブ・ブラウザ10に送る通信に対応するHTTPデータ・ストリームを出力する。このウェブ・サーバ発信通信は、サーバ側インタセプト・モジュール40によってインタセプトされ、クライアント/サーバ固有データ・ストリームによって変換される。次に、ウェブ・サーバ発信通信に対応するクライアント/サーバ固有データ・ストリームは外部通信リンク35で第2のコンピュータから第1のコンピュータに送信される。このクライアント/サーバ固有データ・ストリームをクライアント側インタセプト・モジュール30が受け取り、サーバ発信通信に対応する元のHTTPデータ・ストリームが再構築され、ウェブ・ブラウザ10に供給される。
【0036】
本発明の特定の実施形態では、外部通信リンク35は無線通信リンクである。この場合、ユーザにとって受容可能なシステム・パフォーマンスを達成するために、通信リンク35で転送しなければならない通信の頻度と情報量の両方について、外部通信リンク35を介した通信量を減らすことが望ましい。したがって、本発明はキャッシュ技法、差分表現技法、およびプロトコル削減技法を使用して、外部通信リンク35を介する必要通信量を最小限にすることが好ましい。これらの技法は、HTTPのステートレス・プロトコルまたは確率的プロトコルを、クライアントおよびサーバ固有の情報を使用するクライアント/サーバ固有プロトコルに変換して通信の量と頻度を減らすことによって実現される。
【0037】
動作中、クライアント側インタセプト30とサーバ側インタセプト40はブラウザとウェブ(プロキシ)サーバの両方にとって透過であり、したがってどのようなウェブ・ブラウザとでも使用することができる。サーバ側インタセプト40とクライアント側インタセプト30は両方とも、グラフィック・オブジェクトおよびHTMLオブジェクトをキャッシュに入れる。ブラウザ要求のURLによって、クライアント側インタセプトのキャッシュ内のオブジェクトが指定されている場合、それがブラウザ応答として即時に返される。このキャッシュ機能は、クライアント指定時間間隔内でキャッシュ整合性を保証する。サーバ側インタセプト・キャッシュには、要求されたウェブ・サーバからの応答が入れられる。クライアント側インタセプトから受け取った要求URLがサーバ側インタセプトでキャッシュに入れられている場合、それが要求に対応する応答として返される。
【0038】
本発明は、「CLIENT/SERVER COMMUNICATION SYSTEM」という名称の共通譲渡米国特許出願第08/601804号(代理人整理番号RA895−0154)に記載されているような仮想ソケット・システムを使用することが好ましく、その開示は参照により完全に記載されているかのように本明細書に組み込まれる。また、本発明は、「TIME COHERENT CACHING SYSTEM」(代理人整理番号RA9−95−086)という名称の共通譲渡米国特許出願第08/601753号および「DIFFERENCING COMMUNICATION SYSTEM」という名称の共通譲渡米国特許出願第08/601903号に記載されているデータ削減技法も使用することが好ましく、その開示は参照により完全に記載されているかのように本明細書に組み込まれる。
【0039】
上記および下記では、本発明について単一のウェブ・ブラウザ・アプリケーションおよび単一のウェブ・サーバ・アプリケーションに関して説明するが、当業者ならわかるように、本発明の利点は単一のウェブ・サーバに付随する複数のウェブ・ブラウザでも得られる。したがって、本発明の方法、装置、およびプログラム製品は複数のブラウザと共に使用することができ、その場合、各ブラウザがクライアント側インタセプト・モジュールと通信し、次にそれらのクライアント側インタセプト・モジュールがウェブ・サーバまたはウェブ・プロキシのサーバ側インタセプト・モジュールと通信することになる。
【0040】
さらに、本明細書では本発明についてクライアント側インタセプト・モジュールとサーバ側インタセプト・モジュールの両方に関して説明するが、当業者ならわかるように、本発明に必要なのはサーバ側インタセプトだけである。したがって、本発明はクライアント側とサーバ側の両方のインタセプト・モジュールを有するシステムに限定されるものと解釈してはならない。
【0041】
本発明は、前の要求がまだ完了していなくてもユーザが継続して要求を行うことができるようにする非同期要求および応答処理機能も備える。非同期要求および応答処理は、ユーザに高水準の柔軟性を与え、パフォーマンス上の利点が得られるように、クライアント側インタセプトとサーバ側インタセプトの両方の間で調整されることが好ましい。クライアント側インタセプトまたはサーバ側インタセプトあるいはその両方によるバックグラウンド処理のために、要求は内部的に記録される。要求が完了すると、その結果の保管と状況の更新が非同期的に行われる。(任意選択により)要求が完了するとユーザに通知され、ユーザは状況ページに切り替えて1つまたは複数の要求の状況を確認することができる。各要求の状況項目によって、要求の状態(未発行、処理中、または完了)が伝えられ、要求が完了した場合は状況項目に応答ページへのリンクが入れられる。
【0042】
本発明は、サーバ・アプリケーションへのアクセスによって遠隔/モバイル・データ処理システムがコンピュータにリンクされていないときに切断状態動作も提供する。ユーザは、同期モードまたは非同期モードで操作することができる。いずれの場合も接続が失われたことが検出された場合、または通信不能な場合(たとえば信号範囲外)、要求を待ち行列に入れて保留にし、後で処理するか、要求をサーバ側インタセプトの待ち行列に入れて切断時間中に処理し、再接続されたときに応答を取り出すことができる。この機能によって、ユーザはオフラインで生産的を維持することができる。以下に、これらの操作について図3および図4と図5ないし図10のフローチャートを参照しながら説明する。
【0043】
図3に、本発明の特定の実施形態を使用する遠隔/モバイル・データ処理システムを示す。図3に示すように、遠隔/モバイル・データ処理システム5は、遠隔/モバイル・データ処理システム5上で実行されるウェブ・ブラウザ10などのアプリケーションを含む。ブラウザ10からの要求はHTTP要求インタセプタ31によってインタセプトされ、要求待ち行列32に入れられる。要求待ち行列32内の要求はHTTP要求待ち行列プロセッサ33によって処理され、要求待ち行列プロセッサ33は、要求で指定されているサーバにアクセスすることができる第2のコンピュータとの接続が確立されるとそれらの要求を行う。これらの要求が処理されると、各要求のサービス・スレッド34が開始され、要求が実行される。要求に対する応答はキャッシュ35に入れられ、要求を生成した要求待ち行列からの要求に関連づけられる。このような関連づけを図3で破線で示す。図3で要求待ち行列からキャッシュまでの実線は、要求項目と要求を作成するために使用されたフォームとの関連づけを表す。このような関連づけによって、要求が生成された後でもユーザによる要求の編集が可能になる。任意選択により、要求と応答の両方を待ち行列内の項目に関連づけ、それによって要求と応答の両方をユーザに提供できるようにすることもできる。
【0044】
要求待ち行列32は、HTTP要求インタセプタ31がブラウザから受け取った要求を状況情報および制御情報と共にリストしたものである。各要求要素には、ブラウザから受け取ったすべての情報(HTTPヘッダおよび本体)が含まれる。これによって、要求を後でネットワークに対して再実行することができる。各要求要素は、要求に付随する状態情報も保持する。これには、要求の処理中に行われた処理の進捗状況の要約と、これらから行う残りの作業のリストが含まれる。
【0045】
要求待ち行列内の要求には特別な処理命令も関連づけられる。たとえば、無線環境では通常、ページに埋め込まれたグラフィックスをダウンロードするのは費用がかかり過ぎる。その要求についてグラフィックスが抑止されている場合、その処理制御情報が要求要素に組み込まれる。要求待ち行列はクライアント・セッション全体を通じて存続する。
【0046】
内部的には、要求は1組の属性から成る。各属性は名前と値との対である。要求が作成されると、その要求にはブラウザ要求を含む属性が与えられる。処理が進むにつれて、その進捗状況やブラウザから返された状況情報などを記述する属性が追加される。進捗状況の表示など、ある種の属性は要求単位である。属性は待ち行列単位の場合もあり、その場合、待ち行列に追加されたすべての要素の処理を制御する。待ち行列単位の属性を使用して、要求の発行元または特性に基づいて異なる方法で要求を扱う複数の待ち行列をサポートする。したがって、本発明によると、複数の要求待ち行列を作成することができ、クライアント側インタセプトが要求を受信すると要求を適切な待ち行列に自動的に記憶したり、ユーザ入力によって要求を手動で記憶したりすることができる。
【0047】
本発明では、同期オンライン処理用に設計されたブラウザなどのアプリケーションを使用したオフライン処理が可能なため、切断状態動作および非同期動作のために新しいユーザ・インタフェースが必要である。したがって、本発明によると、ユーザの要求をクライアント側にあるキャッシュから満たすことができる場合、応答をただちに提供することができ、標準ブラウザ・インタフェースは変更されないまま維持される。しかし、キャッシュ・ミス時には、本発明のオフライン処理に付随する機構およびインタフェースによってブラウザのセマンティクスを拡大することができる。
【0048】
ブラウザは本発明に関しては不変のコードであるため、遠隔/モバイル・データ処理システムが非同期動作していたり、第2のコンピュータから切断されていてユーザの要求をキャッシュから満たすことができない場合、またはクライアント側インタセプトが存在しない場合、代替ページを返すことができる。このページには、何が起こったかを示す説明(「要求は後で処理するために待ち行列に入れられました」)が含まれ、要求された場合にはペンディング状態のすべての要求の現在の状況が表示される。ブラウザに関する限り、この代替ページは要求に対する応答であることに留意されたい。言い換えると、ブラウザは要求/応答機構を維持すると同時に、本発明を使用するインタセプト・モジュールは要求に対する応答の詳細を扱う。さらに、要求に対する応答として通知ページがブラウザに返されるという点で、切断状態の要求と非同期要求の両方に同じ機構を使用することができる。
【0049】
あるいは、中間確認応答を提示するのではなく現行ページに戻るという選択肢も利用可能である。この選択肢は、ブラウザに対してコード204を返すことによって実施することができる。ユーザから見ると、リンクをクリックしてもブラウザは同じページ上のままであるが、本発明によるインタセプト・モジュールはバックグラウンドでその要求を待ち行列に入れる。
【0050】
図4に、図2の第2のコンピュータ6上に常駐することができる本発明によるサーバ側インタセプト・モジュール40の一実施形態を示す。クライアント側インタセプト・モジュール30からの通信、または任意選択によりブラウザ10から直接行われる通信が、着信データ・プロセッサ200によって受信され、要求待ち行列230に選択的に入れられる。サーバ側インタセプト・モジュールはいくつかのクライアント側モジュールまたはブラウザから通信を受け取ることができるため、サーバ側インタセプト・モジュールは非同期処理を使用する各クライアントごとに要求待ち行列を維持することが好ましい。図4には、異なるクライアントに関連づけられた要求待ち行列が、待ち行列230、231、232として図示されている。これらの要求待ち行列は要求待ち行列230と同様にして構成することができ、待ち行列内の要求に異なるクライアント識別情報が関連づけられている点のみが異なる。
【0051】
要求待ち行列230、231、および232内の要求は、HTTP要求待ち行列プロセッサ233によって処理される。HTTP要求待ち行列プロセッサ233は、要求で指定されたサーバ(すなわちプロキシ)またはサーバに直接アクセスすることができる第2のコンピュータとの接続が確立されると要求を実行する。これらの要求が処理されると、各要求についてサービス・スレッド234が開始され、要求が実行される。要求に対する応答がキャッシュ210に入れられ、要求を発生した要求待ち行列からの要求に関連づけられる。このような関連づけを図4に破線で示す。
【0052】
図4で、要求待ち行列内の項目からキャッシュまでの実線は、要求項目と要求を作成するために使用するフォームとの関連づけを表す。このような関連づけによって、ユーザは要求が生成された後でもサーバのみの構成を使用して要求の修正や取消しを行うことができる。任意選択により、要求と応答の両方を待ち行列内の項目に関連づけ、それによって要求と応答の両方をユーザに提供することができる。
【0053】
要求待ち行列230は、着信データ・プロセッサ200がクライアント側インタセプトまたはブラウザから受け取った要求を状況情報および制御情報と共に示すリストである。各要求要素には、ブラウザから受け取った情報(HTTPヘッダおよび本体)がすべて含まれる。これによって、要求を後でネットワークに対して再発行することができる。各要求要素は、要求に関連づけられた状態情報も保持する。これには、要求を処理する際に行った処理の進捗状況の要約と、これから行う残りの作業が含まれる。
【0054】
クライアント側もサーバ側インタセプトに関して前述したのと同じ要求待ち行列項目形式を使用することができる。しかし、要求がサーバ側インタセプト・モジュールに転送されるときに、クライアントがローカルで生成することができる要求IDがその要求に関連づけられる。あるいは、接続を確立するときに、ユーザ識別情報をその接続の存続期間の間だけ確立することもできる。したがって、その接続から受け取ったすべての要求にユーザIDが関連づけられることになる。要求中の切断が可能なため、異なる処理段階中に異なるソケットが関与することがある。要求をサーバ側インタセプトに送信する前に各要求にクライアントID/要求IDの対を付加することによって、結果の配信をソケット接続とは独立して最終的に調整することができる。処理のためにサーバ側インタセプトに送った要求の要求IDをクライアント側にも記録して、要求を後で結果と対にすることができるようにする必要がある。クライアントIDを安全保護にすることによって、他のクライアントの要求はサーバ側インタセプト・モジュールに記憶されるにもかかわらずアクセスできないように維持される。
【0055】
動作中、ユーザが切断する準備が整い、後で取り出すために切断中にサーバにペンディング状態の要求を処理させたい場合、クライアントは切断中に処理するためにサーバ側インタセプトに要求を転送するコマンドを呼び出す。このようなコマンドは、クライアント側API flush()コマンドとすることができる。API flush()コマンドは、待ち行列に入れられた要求を、通信リンクのサーバ側で処理するためにサーバに送る。転送された項目は、名前/値の対を使用して、クライアントの要求待ち行列内でフラッシュされた要求としてマークすることができる。
flush()関数の妥当な書式は少なくとも次の3通りある。
flush() 保留としてマークされていないすべての項目を転送する(デフォルト)
flush(all) 保留項目を含めてすべての項目を転送する
flush(item) 特定の項目を転送する
保留要求(すなわち後で、ユーザの指定した時点で処理するように指定された要求)も、切断中の処理のためにサーバ側に転送することができるが、要求を保留する主な理由は、十分な帯域幅が使用可能になるまで結果の転送を遅らせることである。保留要求の切断時処理は望ましくない場合がある。これは、ユーザが長時間結果を要求することができず、したがって、不要な要求の処理と結果の記憶にサーバ資源が消費されるためである。
【0056】
あるいは、ブラウザ−サーバ側インタセプト構成では、サーバ側インタセプトからは満たされないすべての要求をサーバ側インタセプトで待ち行列化することができる。したがって、断続的接続障害が発生した場合、ブラウザが切断されている間に、サーバ側インタセプトによって要求の処理を続けることができる。このようなシステムは、ブラウザに送られる応答の待ち行列が確立された後は通信リンク上の無駄時間が少なくなるため、ブラウザとサーバ側インタセプトとの間の接続が継続して十分に利用されるという利点もある。
【0057】
本発明では、クライアント側に記憶されている要求に加えられる変更も考慮に入れることができる。サーバ側インタセプトで特定の項目が待ち行列化された場合、クライアント要求待ち行列内のその項目に加えられた変更があればそれをサーバに伝達することができる。たとえば、ユーザがクライアント要求待ち行列からフラッシュされた要求を削除した場合、サーバ側インタセプトにそれを通知し、それによって(必要であれば)処理を停止させ、ペンディング状態の結果を破棄し、サーバ側におけるクライアントの要求待ち行列からその項目を除去することができるようにする必要がある。同様に、フラッシュされた項目の状況が保留状態または非保留状態に変わった場合、サーバ側要求待ち行列にそれを通知して、必要に応じて処理を終了または開始することができるようにする必要がある。このように切断状態で、クライアント側でフラッシュされた項目に対する変化する操作を記録し、それによってサーバ側インタセプト・モジュールと再接続されたらただちにそれらの項目を再発行することができるようにすれば有利である。
【0058】
サーバ側処理の結果として応答があった後は、クライアントにデータを伝達し戻すのはルールベースとすることができる。切断された要求に対する応答を、次に接続したときにクライアントに盲目的に送信するのは望ましくない。クライアントは低帯域リンクよりも優先順位の高い処理を行っている最中である場合があり、ユーザは最初の接続時間が古い要求に対する応答に費やされないことを望むであろう。したがって、1組の設定変更可能なルールと関数を設けてクライアントがデータ転送を最適化しやすくすることができる。
【0059】
そのような1つの関数はGetDigest()関数である。GetDigest()は、当該クライアントについて、要求されたサーバ側待ち行列に累積している情報の簡単な要約を返す。したがって、GetDigest()関数に応答して、URL、タイトル、サイズ、完了時刻、および要求の状況を含む情報を供給することができる。GetDigest()関数呼出しに応答して返される状況によって、完了、ペンディング、保留状態などを示すことができる。したがって、この状況によって、要求の処理中にサーバ側インタセプトがどの程度まで進んだかを示すことができる。クライアントはこの要約を使用して進み方を決定することができる。前述のflush()操作に対応する以下のsync()関数を提供して、保管された応答を取り出すことができる。
sync() すべての非保留項目に対する応答を入手する(デフォルト)
sync(all) 保留項目を含めて、すべての項目に対する応答を入手する
sync(item) 特定の要求に対する応答を入手する
これらの明示的な要求に加えて、ユーザは接続中または再接続処理中に自動同期を設定することができる。
GetPrefs() 当該クライアントの選好の現行リストを返す
SetPrefs(list) 選好の新規リストを定義する
UpdatePrefs(list) 指定した選好のみを更新する
【0060】
選好リストは、データを自動的に転送するときの規則を指定する名前/値の対のシーケンスで構成することができる。属性としては、優先度、サイズ、供給源などを含めることができる。したがって、サーバ側処理に基づく非同期操作をクライアント側の対話で管理することができ、この操作には、ユーザ指示処置の組合せと自動転送を含めることができる。
【0061】
次に、図5、図6、および図7を参照しながらサーバ側インタセプトの動作について説明する。図5には、サーバ側インタセプト・モジュールがクライアント側インタセプト・モジュールから送信を受け取ったときのサーバ側インタセプト・モジュールの動作が示されている。ブロック250に示すように、サーバ側インタセプトはクライアント側インタセプト・モジュールから要求を受け取る。この情報は一般に、標準ブラウザ要求かまたはサーバ側インタセプト自体が扱う要求の、2つの形式をとることができる(たとえば前述のGetDigest()関数またはSetPrefs()関数を参照)。したがって、サーバ側インタセプトは、インタセプトした送信がサーバに対する要求であるかサーバ側インタセプトに対する要求であるかを判断し(ブロック252)、要求がサーバ側インタセプトに対する要求の場合はその要求をそれに応じて処理する(ブロック254)。インタセプト通信のタイプの例は前掲の通りである。
【0062】
インタセプトした送信がサーバ側インタセプト・モジュール自体に対するインタセプト通信ではない場合、サーバ側インタセプト・モジュールは、要求がサーバ側インタセプト・モジュールによる切断状態操作の処理を求める要求であるかどうかを判断する(ブロック256)。要求が切断状態操作を求めるものである場合、要求は他の要求と同様に処理される(ブロック258)。サーバ側インタセプトは、要求がクライアントからの最初の要求であるかどうかも判断し(ブロック264)、最初の要求の場合には、そのユーザのために要求待ち行列を作成する(ブロック266)。これにはクライアント識別情報(クライアントID)が含まれ、それによって、その後の通信を適切な待ち行列に記憶することができるようにし、そのユーザの要求と応答が無許可のユーザに供給されないようにセキュリティをもたせることができる。要求待ち行列の作成後、または待ち行列がすでに存在している場合、要求はクライアントの要求待ち行列に記憶され(ブロック268)、オフラインで処理される。このオフライン処理は後述するクライアント側インタセプトの場合と同じにすることができる。
【0063】
図6に、クライアント側インタセプトが存在せず、サーバ側インタセプトがブラウザと通信する場合(サーバ側のみの場合)のサーバ側インタセプトの動作を示す。図6に示すように、サーバ側インタセプト・モジュールはブラウザから要求を受け取る(ブロック350)。次にサーバ側インタセプトは要求が据置き要求(すなわち要求が切断状態操作である)かどうかを判断する(ブロック356)。あるいは、サーバ側のみの場合、すべての要求を据置き要求として扱い、サーバ側インタセプト・モジュールで待ち行列化することができる。いずれにしても要求が据置き操作の要求でない場合、要求は通常通り処理される(ブロック358)。しかし、要求が切断状態処理の要求である場合、ブラウザが処理を進めるためには対応する応答を必要とする。したがって、サーバ側インタセプトはブラウザに暫定応答を送ることができる(ブロック362)。暫定応答は、要求を受け取ったこととオフラインで処理することを示すページという単純なものにするか、またはすべてのペンディング・オフライン処理要求の完全な状況を示す複雑なものにすることもできる。
【0064】
サーバ側のみの場合、サーバ側インタセプトは、要求がクライアントからの最初の要求であるかどうかも判断し(ブロック364)、最初の要求の場合は、そのユーザのために要求待ち行列を作成する(ブロック366)。これには、クライアント識別情報(クライアントID)が含まれ、それによってその後の通信を適切な待ち行列に記憶することができ、そのユーザの要求と応答が無許可のユーザに供給されないようにセキュリティをもたせることができる。要求待ち行列の作成後、または待ち行列がすでに存在する場合、要求はクライアントの要求待ち行列に記憶され(ブロック368)、オフラインで処理される。オフライン処理は、後述するクライアント側インタセプトの場合と同じにすることができる。
【0065】
図7に、非同期サーバ側処理を使用するクライアントがサーバ側インタセプト・モジュールに接続する場合のサーバ側インタセプト・モジュールの動作を示す。図7では、クライアント側/サーバ側の場合とサーバ側のみの場合の両方の場合のサーバ側インタセプト・モジュールの動作が示されている。しかし、当業者ならわかるように、サーバ側のみの場合では、クライアントに対する情報の提示はウェブ・ブラウザに解釈可能な形式でなけれならないのに対し、クライアント側/サーバ側の場合は、情報は、クライアント側インタセプト・モジュールと通信するブラウザが解釈することができる形式に変換するためにクライアント側インタセプト・モジュールが解釈することができる任意の適切な方式で提供することができる。
【0066】
図7に示すように、クライアントのクライアントIDが確認され(ブロック270)、サーバ側インタセプトはクライアントの待ち行列に関連づけられた管理操作がクライアントによって指定されていないかどうかを判断する(ブロック272)。指定されている場合、管理機能が実行される(ブロック274)。このような管理機能には、前述のように、ユーザ選好の設定や、クライアントが切断されていた間に待ち行列内の要求に加えられた修正を反映するように待ち行列を更新することが含まれる。
【0067】
管理機能の実行に加えて、クライアントIDに関連づけられた待ち行列を調べて待ち行列内に項目が入っていないかどうかを判断する(ブロック276)。待ち行列内に項目が存在する場合、クライアントにプロンプトを送り(ブロック278)、待ち行列に項目があることをクライアントに通知することができる。このプロンプトは複雑でも単純でもよく、ユーザの選好によって指定することができる。ユーザはこのプロンプトに対してユーザが適切だとみなす方式で応答することができ、待ち行列内の項目はそれに従って処理される。たとえば、ユーザは完了したすべての要求をブラウザに送るように要求することができる。あるいは、そのような操作を後の通信や既存の接続中の後の時点まで遅延させることができる。
【0068】
さらに、ユーザ識別情報に関連づけられた応答を互いに関連づけ、単一のユーザ要求に基づいてそれらをクライアント側インセプトまたはブラウザにブロックとして供給できるようにすることもできる。その場合、サーバ側インタセプトは、その情報を構築し、たとえば要求待ち行列内の単一の項目に関連づけ、その単一の項目が複数の応答を表すようにする。次に、その項目が要求された場合、その複数の応答が1つのグループとしてクライアントに送られる。その後、ブラウザを使用してその一連の応答をナビゲートすることができる。したがって、サーバ側インタセプトはブラウザに対して複数の応答を供給する要求待ち行列内の単一の項目を作成することができる。さらに、ユーザはどの応答をブロックとしてグループ化するかを指定することもでき、それによってユーザは応答がウェブ・ブラウザによってどのように受け取られるかを制御することができる。
【0069】
図8に、本発明を使用するクライアント側インタセプトの動作を示す。図8に示すように、クライアント側インタセプト30はブラウザ10からの要求をインタセプトする(ブロック50)。次に、クライアント側インタセプトはその要求に対する応答がキャッシュに入っているかどうかを判断し(ブロック52)、入っている場合はそのキャッシュ内の応答がウェブ・ブラウザに返される(ブロック54)。
【0070】
応答がキャッシュに入れられていない場合、クライアント側インタセプトはデータ処理システムがサーバにアクセスする第2のコンピュータに接続されているかどうかを判断する(ブロック56)。データ処理システムが接続されている場合、要求が据え置きでなければ(ブロック58)、その要求は第2のコンピュータに送られる(ブロック60)。しかし、データ処理システムが接続されていないか、要求処理が据え置かれる場合、要求は要求待ち行列に記憶され、その要求に対する応答として暫定応答がブラウザに送られる(ブロック62)。
【0071】
待ち行列化された要求の処理は、本発明によるインタセプト・モジュール内の他の活動とは独立して実行されるスレッドによって扱われる。待ち行列上の要求は通常、先入れ先出し(FIFO)方式で扱われる。しかし、選択された要求を保留要求としてマークすることができ、すべての新しい要求が保留される(ブロック58)。これによって、ユーザは接続が使用可能な場合であってもこれらの要求に対する処理が後の時点まで据え置かれるように指示することができる。たとえば、要求によっては特定のリンク上で扱うには費用がかかり過ぎるものがある場合があり、したがってユーザはLANやダイヤルアップ接続が使用可能になるまでそれらの処理を据え置く方を選択することになる。保留属性は、クライアントを最初に始動させたときに残っている未処理の待ち行列化された要求があればそれにも適用される。これによって、安価なリンクから潜在的にそれよりはるかに高価な無線リンクに切り替わるときの驚きを回避することができる。
【0072】
図8に示すように、待ち行列化された要求を処理する最初のステップは、要求するサーバにアクセスすることができる第2のコンピュータとの接続を獲得することである(ブロック64)。最初に要求を受け取ると、接続を獲得する試みが行われ、接続が確立されない場合(ブロック66)、待ち行列プロセッサによって、またはその他の活動のために接続が行われるまで、試行を続ける(ブロック70およびブロック64)。指数関数バックオフ手続きを使用して接続試行間の遅延を制御する(ブロック68)。したがって、接続試行間の時間は試行回数が増えるにつれて長くなる。このバックオフ手続きによって、障害が長期にわたる場合にネットワークに負担をかけることなく、通信障害が一時的なときに応答性が得られる。
【0073】
接続が確立されると、ブラウザから元々保管され、要求待ち行列に記憶されていた情報を使用して要求を再構成し、その要求を第2のコンピュータに送る(ブロック72)。この時点で、要求はサーバにとってはブラウザから直接送られてきたかのように見える。無線リンクにおける障害のために要求が失敗した場合(ブロック74)、後で後続の試行が行われる。要求の再試行によって一時的な通信障害が隠蔽される。他のタイプの障害も記録されて後でユーザに返される。
【0074】
図9に、前に待ち行列に入れられていた要求に対する応答を受け取るときの、本発明によるクライアント側インタセプト・モジュールとサーバ側インタセプト・モジュールの動作を示す。図9に示すように、サーバから応答を受け取る(ブロック80)。しかし、現在、ウェブ・ページではグラフィックス、アプレット、およびその他の埋込みがほとんど一般的に使用されている。ユーザがこの情報の表示を求めた場合、返されたページを解析して埋込みを探す(ブロック82)。次に各埋込みを取り出し(ブロック84)、元の応答と共にキャッシュに追加する(ブロック86)。この応答に、適切な要求待ち行列内の要求が関連づけられ、応答と共に返される状況情報がその要求に関連づけられる(ブロック88)。この時点で要求は完了し、それが使用可能であることをユーザに通知することができる(ブロック90)。サーバ側インタセプトの場合、この通知はユーザが再接続されるまで据え置くことができる。
【0075】
本発明は、透過なHTTPプロキシを提供するため、どのようなブラウザと共にでも機能する。バックグラウンド処理の待ち行列要求はブラウザが期待するモデルとは一致せず、したがってブラウザにはHTMLまたはHTTPコードを介した暫定的な応答が返され、それによってブラウザとユーザは処理を続行することができる(図5のブロック262および図8のブロック55を参照)。同様に、HTMLページと埋込みHTML情報を使用して状況を報告し、ブラウザの独立を維持することができる。
【0076】
未処理要求の状況は、幾通りの方法でも報告することができ、これには任意選択の完了ポップアップや、返されるウェブ・ページの最上部に埋め込まれた任意選択の状況バー、待ち行列の状態をまとめたHTMLページ上の報告などが含まれる。
【0077】
ポップアップによって、バックグラウンド・ページ上で見ることができる新たに完了したページがあることをユーザに知らせ、そのページのURLをリストする。このようなポップアップの一つは、新しい情報が最初に入手可能になったとときに生成され、それ以上のメッセージはユーザがそのページを訪れて情報を見るまで抑止される。これによってユーザは高速リンク上で混乱することなく非同期の完了通知を受け取ることができる。
【0078】
ユーザは、返される各ページ内にクライアント側インタセプトの状態を説明する状況バーを埋め込むことを選択することもできる。この状況バーには、完了した要求の数、未処理要求の数、保留要求の数に関する情報が含まれる。また、新しい結果が入手可能になったことを説明するポップアップのテキスト版や、生成された様々な状況ページへのリンクも含まれる。
【0079】
このようなリンクの1つによって、ユーザは要求の状態を要約したページに行くことができる。そのページには、1つの要求について1行ずつ待ち行列が表示される。各要求は、以下のような交通信号灯のモデルなどの可視標識を使用して要求処理の進捗状況を示すグラフィック表現を含む。
・ 赤:要求が送信された
・ 黄:基本ページを受信し、埋込みは未処理
・ 緑:要求完了
グラフィックスは、赤は白抜きの円、黄色は半月、緑は中実の球など、色のほかに明確に区別できる外見を有することもできる。エラーの場合(たとえば要求が送られたが基本ページを取り出すことができなかった場合など)、交通信号記号全体の上にXを配置することもできる。
【0080】
状況グラフィックスに加えて、要求を削除するか保留するかを選択する選択肢も表示することもできる。フォームの場合、ユーザは要求を表示したり再編集したりすることもできる。要求が完了した場合、キャッシュに入れられた結果へのリンクもこのページに含めることができる。
【0081】
バックグラウンド待ち行列およびその他の内部生成ページへのURL方式のアクセスを可能にするために、クライアント側インタセプトのドメイン名(たとえばartour.web.express)もその他のオプションと適切に組み合わせて使用することができる。たとえば、バックグラウンド待ち行列には、http://artour.web.express/HTEP/というURLを使用してアクセスすることができる。標準ブラウザは未知のプロトコルを拒否する可能性があるため、そのような要求について固有プロトコル名を定義するよりもHTTPと予約名の方が好ましい。
【0082】
ユーザに要求処理の進捗状況を報告することもできる。要求は、処理されるにつれて、受け渡しから始まり、処理の開始、初期ページの取り出し、そして最後に完了と、一連の状態を通過して進む。要求がある状態に移行すると、その移行を記述するイベントを内部イベント・マネージャに送ることができる。内部イベント・マネージャは要求の状況を受け取り、状況情報を他の構成要素またはアプリケーションに転送する。他の構成要素は、イベント・マネージャに登録し、イベントの状態およびその他の基準によってふるいにかけられたイベントを受け取ることができる。イベントの処理を使用してクライアント側インタセプトとの動的なインタフェースを生成することができる。このようなイベントの一使用例は、ポップアップ通知である。
【0083】
応答を受け取った後、その応答はユーザが将来オフラインで見ることができるように保管する必要がある。しかし、ブラウザは要求を行って応答を受け取るときに、一般にそれを2通りの方法のうちのいずれかで処理する。応答が比較的静的であると予測される場合、そのページに対する将来の要求を迅速に処理することができるように、その応答はブラウザによってキャッシュに入れられる。しかし、そのページがフォーム要求に対する応答の場合、またはその他の方法で生成された場合(いわゆる「cgi-bin」要求)、ブラウザは応答を表示するだけで、キャッシュには入れない。これは、その応答が一般に1つのcgi-bin要求と次のcgi-bin要求とでは異なるためである。また、ソース・サーバが「キャッシュなし」とマークしたオブジェクトについては、その指示に従うブラウザおよびプロキシはそれらの項目を保管しない。しかし、待ち行列化された要求の処理の一環として取り出された場合には、それを後で表示するために保管しなければならない。
【0084】
これらの通常は一時的なオブジェクトは、ユーザ・データという新しい範疇のキャッシュ情報として保管される(ブロック86)。これらは、ユーザ要求に応答して取り出されたデータであり、その要求の文脈でのみ意味を持つ。通常のウェブ・データとは異なり、ユーザ・データ・オブジェクトには、待ち行列状況ページ上の応答としてのみアクセスすることができる。これらは時間や要求に左右される一時的な応答であるため、他の要求を処理するためには使用されない。ユーザ・データは、キャッシュの管理に使用される通常のコヒーレンシ・アルゴリズムやエージング・アルゴリズムの対象とはならない。ユーザ・データはユーザによって削除されるまで存続し、有効である。
【0085】
ウェブ・ページ設計者は、単純な対話しか必要としないデータ入力用のHTMLフォームを使用することが多い。HTMLフォーム・タグは、ウェブ対話用の電子フォームを作成するための便利な方法である。HTMLフォーム・タグによって、ウェブ・ユーザはリストからの選択、ボックスのチェックのオン/オフ、ラジオ・ボタンからの選択、テキスト・フィールドや広い複数行テキスト領域へのテキストの入力、アクション・ボタンを押すなどの操作を行うことができる。ユーザがアクション・ボタンを押すと、名前/値の対を使用してそのアクションによって指定された入力データがウェブ・サーバに送られる。各名前は入力フィールドを表し、各値はフィールドへのユーザ入力値を表す。さらに、ウェブ・サーバがフォームと共に送る事前設定値を保持する隠れフィールドがある場合もある。これらの隠れ値は可視フィールド内の値と共にサーバに送り戻される。
【0086】
あらゆるHTMLページと同様に、将来の使用のためにHTMLフォームをキャッシュに入れることができる。本発明によると、キャッシュに入れられたHTMLフォームを編集して後で発信したり、異なるユーザ入力値を使用して再発信することができる。たとえば、検索入力フォームを何度も編集して異なる検索要求を送出することができる。同様に、入院フォームなどのイントラネット・データ入力フォームを編集してデータ入力エラーを修正したり、異なる患者の新規データを再発信したりすることができる。ほとんどのフォームは、単純なワンフォーム対話モデルを有するか、または自己完結型隠れフィールドを含み、それによってウェブ・アプリケーションが発信を別々に受け入れることができるため、将来独立して発信するように有意義にキャッシュに入れることができる。
【0087】
モバイル環境では、サーバに接続できないときでも切断フォーム送信によってユーザの生産性を高めることができる。これによって、どのネットワークにも接続せずに複数のデータ入力ページに記入することができる。また、本発明の再編集機能を使用して、ユーザは2、3件のフォームの原稿を作成し、それを最終的にサーバに送る前に見直し、承認、または編集することができる。
【0088】
前述のように、フォームはどのようなHTMLページとしても扱うことができ、図5または図8の操作を行って、記入済みフォームに対応する要求待ち行列内の項目を作成することができる。通常のHTMLページと同様に、ユーザはURLを使用してキャッシュに入っているHTMLフォームを入手する。ユーザはフォームに記入し、それをアクション・ボタンの1つを使用して発信する。フォームが発信されると、名前/値の対が提供元フォームURLと共に記憶され、待ち行列に入れられる。ユーザが同じURLフォームを再び要求し、新しい結果を発信した場合、その新しい発信は前の発信とは別にされる。接続が使用可能になったときに自動的に発信されるように、すべての発信は待ち行列内の別個の項目としてカウントされる。これらの項目は、ユーザが削除するまで記憶されている。
【0089】
図10に、本発明を使用したフォームの再編集プロセスを示す。この再編集は、図8の待ち行列内のフォームを使用する。図10に示すように、待ち行列内の使用可能なフォームのリストがブラウザに供給され(ブロック100)、待ち行列項目を選択するユーザ入力が入手される(ブロック102)。ユーザにHTMLページを提示し、ハイパーリンクを使用してアクセス可能な待ち行列内の項目を表示することができる。
【0090】
ユーザ入力に基づいて、待ち行列化された要求を生成するために使用されたフォームのURLに対応するフォームを、ローカル・キャッシュから入手する(ブロック104)。フォームの提供元を示す、前に挿入されたデータに基づいて基本フォームを取り出すことができる。サーバから空白のフォームを最初に取り出すとき、クライアント側インタセプトはHTMLに隠れ値を挿入してからそのページをブラウザに返す。この隠れ情報には、供給元URLとページ内のフォーム番号とが含まれる。フォームを再編集するために、要求に要求を生成したフォームを関連づけるために要求と共に要求待ち行列に記憶されているフォームのURLに含まれる隠れ値を使用して、空白フォームを取り出す。
【0091】
フォームと待ち行列に入れられた要求を走査して名前/値の対を突き合わせる(ブロック106)。一致が見つかった場合、そのユーザ発信を反映するようにデフォルトの選択値または入力値を変更する(ブロック108)。複数のHTMLフォームから成るウェブ・ページは異なるサブフォームで同じフィールド名を使用している可能性があるため特別な注意を払う必要がある。したがって、サブフォームにはそれを追跡するための固有識別子を割り当てる。次に、元の入力フォームとデータを再構築する。要求に対する応答をすでに受け取っている場合(ブロック110)、任意選択により、発信ボタンをその応答へのリンクに置き換え、それによってユーザが発信の結果を見ることができるようにすることもできる(ブロック112)。応答を受け取っていない場合は、再構築された要求をブラウザに供給してユーザが編集できるようにする(ブロック114)。再発信する場合、既存の待ち行列項目を新しいデータで上書きするか、あるいは任意選択により、ユーザは待ち行列内の新しい項目を供給することを選択することができる。このような機能を使用すれば、ユーザは記入済みのフォームをテンプレートとして使用して、類似データを使用する追加の要求を、わずかな追加入力だけで作成することができる。
【0092】
前述のように、クライアントが要求を修正した場合、その修正は管理機能の一部としてサーバ側インタセプトに供給される。さらに、図10の改訂操作はクライアント側で行うことが好ましいが、これらの手続きは通信リンクのサーバ側でも実施することができる。
【0093】
まとめとして、本発明の構成に関して以下の事項を開示する。
【0094】
(1)第2のコンピュータに一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信する方法であって、
前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するステップと、
クライアント・アプリケーションからの要求に応答して、ウェブ・ブラウザに暫定応答を供給するステップと、
前記記憶された要求を前記サーバ・アプリケーションに供給するステップと、
前記サーバ・アプリケーションから応答を受信するステップと、
前記受信応答を遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給するステップとを含む方法。
(2)前記ウェブ・ブラウザから受信した要求が遅延された処理要求であるかどうかを判断するステップをさらに含み、前記判断ステップによって受信要求が遅延された処理要求であると判断された場合、持続キャッシュに記憶する前記ステップと暫定応答を供給する前記ステップとを行う、上記(1)に記載の方法。
(3)暫定応答を供給する前記ステップの後に、遠隔/モバイル・データ処理システムを前記第2のコンピュータから切断するステップを含み、受信応答を前記ウェブ・ブラウザに供給する前記ステップの前に前記遠隔/モバイル・データ処理システムを前記第2のコンピュータに再接続するステップを含む、上記(1)に記載の方法。
(4)ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給するステップと、
記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信するステップと、
前記ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた応答を前記ウェブ・ブラウザに供給するステップをさらに含む、上記(3)に記載の方法。
(5)前記応答が前記第2のコンピュータによって受信された後に、前記受信応答が入手可能であることを前記ユーザに通知するステップと、
前記ユーザが前記応答を要求した場合にウェブ・ブラウザに前記応答を供給するステップとをさらに含む、上記(3)に記載の方法。
(6)持続要求待ち行列に記憶する前記ステップの前に、ユーザ識別子に関連づけられた持続要求待ち行列を確立するステップを含み、前記遠隔/モバイル・データ処理システムを再接続する前記ステップが、
前記遠隔/モバイル・データ処理システムを前記第2のコンピュータに接続するステップと、
前記遠隔/モバイル・データ処理システムからユーザ識別子を受信するステップとを含み、
前記受信応答を供給する前記ステップが、前記受信ユーザ識別子に関連づけられた前記持続要求待ち行列からの要求に対する前記受信応答を供給するステップを含む、上記(3)に記載の方法。
(7)前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断するステップと、
前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給するステップと、
前記埋め込まれた要求に対する応答を受信するステップと、
前記埋め込まれた要求に対する前記受信応答を第2のコンピュータにおいて記憶するステップと、
前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づけるステップとをさらに含み、
前記受信応答を前記ウェブ・ブラウザに供給する前記ステップが、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給するステップを含む、上記(6)に記載の方法。
(8)前記要求に対する前記応答を前記第2のコンピュータにおいて記憶するステップと、
前記記憶された応答を、前記ユーザ識別子に関連づけられた前記持続要求待ち行列内の前記記憶された要求に関連づけるステップとをさらに含む、上記(6)に記載の方法。
(9)持続要求待ち行列を確立する前記ステップが、各持続要求待ち行列にユーザ識別子が関連づけられた複数の要求待ち行列を確立するステップを含み、
持続要求待ち行列内に記憶する前記ステップが、ウェブ・ブラウザのユーザからの要求が前記ユーザのユーザ識別子に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶するステップを含み、
前記記憶された要求を前記サーバ・アプリケーションに供給する前記ステップが、前記複数の要求を関連づけられたウェブ・サーバに供給するステップを含み、
前記サーバ・アプリケーションから応答を受信する前記ステップが、前記関連づけられたウェブ・サーバから複数の応答を受信するステップを含み、
前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記ステップが、要求に対する応答が前記要求をそこから受信した前記ウェブ・ブラウザに供給されるように受信した前記複数の応答を前記複数のウェブ・ブラウザに供給するステップを含む、上記(8)に記載の方法。
(10)サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づけるステップと、
前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給するステップをさらに含む、上記(1)に記載の方法。
(11)第2のコンピュータに一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信する方法であって、
第2のコンピュータにおける持続要求待ち行列に、第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するステップと、
前記記憶された要求にクライアント識別情報を関連づけるステップと、
前記記憶された要求を前記サーバ・アプリケーションに供給するステップと、
前記サーバ・アプリケーションから応答を受信するステップと、
前記サーバからの前記受信応答を前記第2のコンピュータ上にあるサーバ側キャッシュに記憶するステップと、
前記記憶された受信応答を前記記憶された要求に関連づけるステップと、
前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給するステップとを含む方法。
(12)前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給する前記ステップが、前記記憶された受信応答を、その後の接続中に前記記憶された要求に関連づけられたクライアント識別情報に関連づけられたウェブ・ブラウザに供給するステップを含む、上記(11)に記載の方法。
(13)前記記憶された要求を前記サーバ・アプリケーションに供給する前記ステップの前に、前記要求の修正を受信するステップと、
前記要求待ち行列に記憶された前記要求を改訂し、前記記憶された要求を前記修正された要求に置き換えるステップとをさらに含む、上記(11)に記載の方法。
(14)前記ブラウザから受信した要求が遅延された処理要求であるかどうかを判断するステップを含み、前記判断ステップによって前記受信要求が遅延された処理要求であると判断された場合、持続キャッシュに記憶する前記ステップが行われる、上記(11)に記載の方法。
(15)ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給するステップと、
記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信するステップとをさらに含み、
前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記受信応答を供給する前記ステップが、ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた記憶されている応答を前記ウェブ・ブラウザに供給するステップを含む、上記(11)に記載の方法。
(16)前記応答が前記第2のコンピュータによって受信された後に、前記記憶された受信応答が入手可能であることを前記ユーザに通知するステップをさらに含み、
前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給する前記ステップが、前記ユーザが前記記憶された受信応答を要求した場合、前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給するステップを含む、上記(11)に記載の方法。
(17)前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断するステップと、
前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給するステップと、
前記埋め込まれた要求に対する応答を受信するステップと、
前記埋め込まれた要求に対する前記受信応答を第2のコンピュータ上にある前記キャッシュに記憶するステップと、
前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づけるステップとをさらに含み、
前記受信応答を前記ウェブ・ブラウザに供給する前記ステップが、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給するステップを含む、上記(11)に記載の方法。
(18)持続要求待ち行列内に記憶する前記ステップが、ウェブ・ブラウザのユーザからの要求が前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶するステップを含み、
前記記憶された要求を前記サーバ・アプリケーションに供給する前記ステップが、前記複数の要求を関連づけられたウェブ・サーバに供給するステップを含み、
前記サーバ・アプリケーションから応答を受信する前記ステップが、前記関連づけられたウェブ・サーバから複数の応答を受信するステップを含み、
前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記ステップが、要求に対する応答が前記記憶された要求に関連づけられた前記クライアント識別情報に対応する前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給するステップを含む、上記(11)に記載の方法。
(19)サーバからの複数の要求を前記持続要求待ち行列内の単一の項目に関連づけるステップと、
前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給するステップをさらに含む、上記(11)に記載の方法。
(20)第2のコンピュータに一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するシステムであって、
前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶する手段と、
クライアント・アプリケーションからの要求に応答して、ウェブ・ブラウザに暫定応答を供給する手段と、
前記記憶された要求を前記サーバ・アプリケーションに供給する手段と、
前記サーバ・アプリケーションから応答を受信する手段と、
前記受信応答を遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する手段とを含むシステム。
(21)前記ウェブ・ブラウザから受信した要求が遅延された処理要求であるかどうかを判断する手段をさらに含み、持続キャッシュに記憶する前記手段と暫定応答を供給する前記手段とが前記判断手段に機能可能に関連づけられている、上記(20)に記載のシステム。
(22)前記遠隔/モバイル・データ処理システムを前記第2のコンピュータから切断する手段と、
前記遠隔/モバイル・データ処理システムを前記第2のコンピュータに再接続する手段とをさらに含む、上記(20)に記載のシステム。
(23)ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給する手段と、
記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信する手段と、
ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた応答を前記ウェブ・ブラウザに供給する手段をさらに含む、上記(22)に記載のシステム。
(24)前記応答が前記第2のコンピュータによって受信された後に、前記受信応答が入手可能であることを前記ユーザに通知する手段と、
前記ユーザが前記応答を要求した場合にウェブ・ブラウザに前記応答を供給する手段とをさらに含む、上記(22)に記載のシステム。
(25)ユーザ識別子に関連づけられた持続要求待ち行列を確立する手段をさらに含み、
前記遠隔/モバイル・データ処理システムを再接続する前記手段が、
前記遠隔/モバイル・データ処理システムを前記第2のコンピュータに接続する手段と、
前記遠隔/モバイル・データ処理システムからユーザ識別子を受信する手段とを含み、
前記受信応答を供給する前記手段が、前記受信ユーザ識別子に関連づけられた前記持続要求待ち行列からの前記要求に対する受信応答を供給する手段を含む、上記(22)に記載のシステム。
(26)前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断する手段と、
前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給する手段と、
前記埋め込まれた要求に対する応答を受信する手段と、
前記埋め込まれた要求に対する前記受信応答を第2のコンピュータにおいて記憶する手段と、
前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づける手段とをさらに含み、
前記受信応答を前記ウェブ・ブラウザに供給する前記手段が、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給する手段を含む、上記(25)に記載のシステム。
(27)前記要求に対する前記応答を前記第2のコンピュータにおいて記憶する手段と、
前記記憶された応答を、前記ユーザ識別子に関連づけられた前記持続要求待ち行列内の前記記憶された要求に関連づける手段とをさらに含む、上記(25)に記載のシステム。
(28)持続要求待ち行列を確立する前記手段が、各持続要求待ち行列にユーザ識別子が関連づけられた複数の要求待ち行列を確立する手段を含み、
持続要求待ち行列内に記憶する前記手段が、ウェブ・ブラウザのユーザからの要求が前記ユーザのユーザ識別子に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶する手段を含み、
前記記憶された要求を前記サーバ・アプリケーションに供給する前記手段が、前記複数の要求を関連づけられたウェブ・サーバに供給する手段を含み、
前記サーバ・アプリケーションから応答を受信する前記手段が、前記関連づけられたウェブ・サーバから複数の応答を受信する手段を含み、
前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記手段が、要求に対する応答が前記要求をそこから受信した前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給する手段を含む、上記(27)に記載のシステム。
(29)サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づける手段と、
前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給する手段をさらに含む、上記(20)に記載のシステム。
(30)第2のコンピュータに一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信する方法であって、
第2のコンピュータにおける持続要求待ち行列に、第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶する手段と、
前記記憶された要求にクライアント識別情報を関連づける手段と、
前記記憶された要求を前記サーバ・アプリケーションに供給する手段と、
前記サーバ・アプリケーションから応答を受信する手段と、
前記サーバからの前記受信応答を前記第2のコンピュータ上にあるサーバ側キャッシュに記憶する手段と、
前記記憶された受信応答を前記記憶された要求に関連づける手段と、
前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給する手段とを含むシステム。
(31)前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給する前記手段が、前記記憶された受信応答を、その後の接続中に前記記憶された要求に関連づけられたクライアント識別情報に関連づけられたウェブ・ブラウザに供給する手段を含む、上記(30)に記載のシステム。
(32)持続要求待ち行列内に記憶する前記手段が、ウェブ・ブラウザのユーザからの要求が前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶する手段を含み、
前記記憶された要求を前記サーバ・アプリケーションに供給する前記手段が、前記複数の要求を関連づけられたウェブ・サーバに供給する手段を含み、
前記サーバ・アプリケーションから応答を受信する前記手段が、前記関連づけられたウェブ・サーバから複数の応答を受信する手段を含み、
前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記手段が、要求に対する応答が前記記憶された要求に関連づけられた前記クライアント識別情報に対応する前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給する手段を含む、上記(30)に記載のシステム。
(33)第2のコンピュータに一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するコンピュータ・プログラム製品であって、
前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するコンピュータ可読プログラム・コード手段と、
クライアント・アプリケーションからの要求に応答して、ウェブ・ブラウザに暫定応答を供給するコンピュータ可読プログラム・コード手段と、
前記記憶された要求を前記サーバ・アプリケーションに供給するコンピュータ可読プログラム・コード手段と、
前記サーバ・アプリケーションから応答を受信するコンピュータ可読プログラム・コード手段と、
前記受信応答を遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段とを含むコンピュータ・プログラム製品。
(34)前記ウェブ・ブラウザから受信した要求が遅延された処理要求であるかどうかを判断するコンピュータ可読プログラム・コード手段をさらに含み、持続キャッシュに記憶する前記コンピュータ可読プログラム・コード手段と暫定応答を供給する前記コンピュータ可読プログラム・コード手段とが前記判断コンピュータ可読プログラム・コード手段に機能可能に関連づけられている、上記(33)に記載のコンピュータ・プログラム製品。
(35)前記遠隔/モバイル・データ処理システムを前記第2のコンピュータから切断するコンピュータ可読プログラム・コード手段と、
前記遠隔/モバイル・データ処理システムを前記第2のコンピュータに再接続するコンピュータ可読プログラム・コード手段とをさらに含む、上記(33)に記載のコンピュータ・プログラム製品。
(36)ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段と、
記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信するコンピュータ可読プログラム・コード手段と、
ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた応答を前記ウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段をさらに含む、上記(35)に記載のコンピュータ・プログラム製品。
(37)前記応答が前記第2のコンピュータによって受信された後に、前記受信応答が入手可能であることを前記ユーザに通知するコンピュータ可読プログラム・コード手段と、
前記ユーザが前記応答を要求した場合にウェブ・ブラウザに前記応答を供給するコンピュータ可読プログラム・コード手段とをさらに含む、上記(35)に記載のコンピュータ・プログラム製品。
(38)ユーザ識別子に関連づけられた持続要求待ち行列を確立するコンピュータ可読プログラム・コード手段をさらに含み、
前記遠隔/モバイル・データ処理システムを再接続する前記コンピュータ可読プログラム・コード手段が、
前記遠隔/モバイル・データ処理システムを前記第2のコンピュータに接続するコンピュータ可読プログラム・コード手段と、
前記遠隔/モバイル・データ処理システムからユーザ識別子を受信するコンピュータ可読プログラム・コード手段とを含み、
前記受信応答を供給する前記コンピュータ可読プログラム・コード手段が、前記受信ユーザ識別子に関連づけられた前記持続要求待ち行列からの前記要求に対する受信応答を供給するコンピュータ可読プログラム・コード手段を含む、上記(35)に記載のコンピュータ・プログラム製品。
(39)前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断するコンピュータ可読プログラム・コード手段と、
前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給するコンピュータ可読プログラム・コード手段と、
前記埋め込まれた要求に対する応答を受信するコンピュータ可読プログラム・コード手段と、
前記埋め込まれた要求に対する前記受信応答を第2のコンピュータにおいて記憶するコンピュータ可読プログラム・コード手段と、
前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づけるコンピュータ可読プログラム・コード手段とをさらに含み、
前記受信応答を前記ウェブ・ブラウザに供給する前記コンピュータ可読プログラム・コード手段が、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段を含む、上記(38)に記載のコンピュータ・プログラム製品。
(40)前記要求に対する前記応答を前記第2のコンピュータにおいて記憶するコンピュータ可読プログラム・コード手段と、
前記記憶された応答を、前記ユーザ識別子に関連づけられた前記持続要求待ち行列内の前記記憶された要求に関連づけるコンピュータ可読プログラム・コード手段とをさらに含む、上記(38)に記載のコンピュータ・プログラム製品。
(41)持続要求待ち行列を確立する前記コンピュータ可読プログラム・コード手段が、各持続要求待ち行列にユーザ識別子が関連づけられた複数の要求待ち行列を確立するコンピュータ可読プログラム・コード手段を含み、
持続要求待ち行列内に記憶する前記コンピュータ可読プログラム・コード手段が、ウェブ・ブラウザのユーザからの要求が前記ユーザのユーザ識別子に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶するコンピュータ可読プログラム・コード手段を含み、
前記記憶された要求を前記サーバ・アプリケーションに供給する前記コンピュータ可読プログラム・コード手段が、前記複数の要求を関連づけられたウェブ・サーバに供給するコンピュータ可読プログラム・コード手段を含み、
前記サーバ・アプリケーションから応答を受信する前記コンピュータ可読プログラム・コード手段が、前記関連づけられたウェブ・サーバから複数の応答を受信するコンピュータ可読プログラム・コード手段を含み、
前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記コンピュータ可読プログラム・コード手段が、要求に対する応答が前記要求をそこから受信した前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段を含む、上記(40)に記載のコンピュータ・プログラム製品。
(42)サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づけるコンピュータ可読プログラム・コード手段と、
前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給するコンピュータ可読プログラム・コード手段をさらに含む、上記(33)に記載のコンピュータ・プログラム製品。
(43)第2のコンピュータに一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するコンピュータ・プログラム製品であって、
第2のコンピュータにおける持続要求待ち行列に、第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するコンピュータ可読プログラム・コード手段と、
前記記憶された要求にクライアント識別情報を関連づけるコンピュータ可読プログラム・コード手段と、
前記記憶された要求を前記サーバ・アプリケーションに供給するコンピュータ可読プログラム・コード手段と、
前記サーバ・アプリケーションから応答を受信するコンピュータ可読プログラム・コード手段と、
前記サーバからの前記受信応答を前記第2のコンピュータ上にあるサーバ側キャッシュに記憶するコンピュータ可読プログラム・コード手段と、
前記記憶された受信応答を前記記憶された要求に関連づけるコンピュータ可読プログラム・コード手段と、
前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給するコンピュータ可読プログラム・コード手段とを含むコンピュータ・プログラム製品。
(44)前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給する前記コンピュータ可読プログラム・コード手段が、前記記憶された受信応答を、その後の接続中に前記記憶された要求に関連づけられたクライアント識別情報に関連づけられたウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段を含む、上記(43)に記載のコンピュータ・プログラム製品。
(45)持続要求待ち行列内に記憶する前記コンピュータ可読プログラム・コード手段が、ウェブ・ブラウザのユーザからの要求が前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶するコンピュータ可読プログラム・コード手段を含み、
前記記憶された要求を前記サーバ・アプリケーションに供給する前記コンピュータ可読プログラム・コード手段が、前記複数の要求を関連づけられたウェブ・サーバに供給するコンピュータ可読プログラム・コード手段を含み、
前記サーバ・アプリケーションから応答を受信する前記コンピュータ可読プログラム・コード手段が、前記関連づけられたウェブ・サーバから複数の応答を受信するコンピュータ可読プログラム・コード手段を含み、
前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記コンピュータ可読プログラム・コード手段が、要求に対する応答が前記記憶された要求に関連づけられた前記クライアント識別情報に対応する前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給するコンピュータ可読プログラム・コード手段を含む、上記(43)に記載のコンピュータ・プログラム製品。
【図面の簡単な説明】
【図1】典型的なウェブ・ブラウザ/ウェブ・サーバ・システムを示すブロック図である。
【図2】クライアント・インタセプトおよびサーバ・インタセプトを使用する、本発明の一実施形態によるウェブ・ブラウザ/ウェブ・サーバ・システムを示すブロック図である。
【図3】本発明によるクライアント側インタセプト・モジュールを示すブロック図である。
【図4】本発明によるサーバ側インタセプト・モジュールを示すブロック図である。
【図5】クライアント側インタセプト・モジュールから要求を受信する際の、本発明によるサーバ・インタセプト・モジュールの動作を示すフローチャートである。
【図6】クライアントから要求を受信する際の、本発明によるサーバ・インタセプト・モジュールの動作を示すフローチャートである。
【図7】クライアントに接続する際の、本発明によるサーバ・インタセプト・モジュールの動作を示すフローチャートである。
【図8】本発明の一態様による切断動作または据置き処理動作を示すフローチャートである。
【図9】本発明の一態様による、遠隔/モバイル・データ処理システムにおけるブラウザ要求に対する応答の受信に付随する動作を示すフローチャートである。
【図10】本発明の一態様による、要求の改訂に付随する動作を示すフローチャートである。
【符号の説明】
5 第1のコンピュータ
6 第2のコンピュータ
10 ウェブ・ブラウザ
15 通信リンク
20 ウェブ・サーバ
30 クライアント側インタセプト・モジュール
31 HTTP要求インタセプタ
32 要求待ち行列
33 HTTP要求待ち行列プロセッサ
34 サービス・スレッド
35 通信リンク
40 サーバ側インタセプト・モジュール
200 着信データ・プロセッサ
230 要求待ち行列
233 HTTP要求待ち行列プロセッサ
234 サービス・スレッド

Claims (25)

  1. 第2のコンピュータが、該コンピュータに接続障害または通信障害により一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信する方法であって、
    前記第2のコンピュータが、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求であるかどうかを判断するステップと、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求である場合に、前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するステップと、
    前記記憶された前記ウェブ・ブラウザからの要求に応答して、前記ウェブ・ブラウザに暫定応答を供給するステップと、
    前記記憶された要求にユーザ識別子を関連づけるステップと
    前記記憶された要求を前記サーバ・アプリケーションに供給するステップと、
    前記サーバ・アプリケーションから応答を受信するステップと、
    前記サーバ・アプリケーションからの前記応答を前記第2のコンピュータにおいて記憶するステップと、
    前記記憶された応答を、前記ユーザ識別子に関連づけられた前記記憶された要求に関連づけるステップとを含み、
    前記遠隔/モバイル・データ処理システムが前記第2のコンピュータに再接続された場合に、
    前記第2のコンピュータが、
    前記遠隔/モバイル・データ処理システムからユーザ識別子を受信するステップと、
    前記受信ユーザ識別子に関連づけられた前記持続要求待ち行列からの要求に対する前記受信応答を遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給するステップとを含む方法。
  2. ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給するステップと、
    記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信するステップと、
    前記ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた応答を前記ウェブ・ブラウザに供給するステップをさらに含む、請求項に記載の方法。
  3. 前記応答が前記第2のコンピュータによって受信された後に、前記受信応答が入手可能であることを前記ユーザに通知するステップと、
    前記ユーザが前記応答を要求した場合にウェブ・ブラウザに前記応答を供給するステップとをさらに含む、請求項に記載の方法。
  4. 前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断するステップと、
    前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給するステップと、
    前記埋め込まれた要求に対する応答を受信するステップと、
    前記埋め込まれた要求に対する前記受信応答を第2のコンピュータにおいて記憶するステップと、
    前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づけるステップとをさらに含み、
    前記受信応答を前記ウェブ・ブラウザに供給する前記ステップが、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給するステップを含む、請求項に記載の方法。
  5. サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づけるステップと、
    前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給するステップをさらに含む、請求項1に記載の方法。
  6. 第2のコンピュータが、該コンピュータに接続障害または通信障害により一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信する方法であって、
    前記第2のコンピュータが
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求であるかどうかを判断するステップと、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求である場合に、前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するステップと、
    前記記憶された前記ウェブ・ブラウザからの要求に応答して、前記ウェブ・ブラウザに暫定応答を供給するステップと、
    前記記憶された要求にクライアント識別情報を関連づけるステップと、
    前記記憶された要求を前記サーバ・アプリケーションに供給するステップと、
    前記サーバ・アプリケーションから応答を受信するステップと、
    前記サーバからの前記受信応答を前記第2のコンピュータ上にあるサーバ側キャッシュに記憶するステップとを含み
    前記記憶された受信応答を前記記憶された要求に関連づけるステップと、
    前記応答が前記第2のコンピュータによって受信された後に、前記遠隔/モバイル・データ処理システムが前記第2のコンピュータに再接続された場合に、
    前記第2のコンピュータが、
    前記記憶された受信応答が入手可能であることを前記ユーザに通知するステップと、
    前記ユーザが前記記憶された受信応答を要求した場合に、前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給するステップとを含む方法。
  7. 前記記憶された要求を前記サーバ・アプリケーションに供給する前記ステップの前に、
    前記要求の修正を受信するステップと、
    前記要求待ち行列に記憶された前記要求を改訂し、前記記憶された要求を前記修正された要求に置き換えるステップとをさらに含む、請求項に記載の方法。
  8. ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給するステップと、
    記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信するステップとをさらに含み、
    前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記受信応答を供給する前記ステップが、ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた記憶されている応答を前記ウェブ・ブラウザに供給するステップを含む、請求項に記載の方法。
  9. 前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断するステップと、
    前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給するステップと、
    前記埋め込まれた要求に対する応答を受信するステップと、
    前記埋め込まれた要求に対する前記受信応答を第2のコンピュータ上にある前記キャッシュに記憶するステップと、
    前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づけるステップとをさらに含み、
    前記受信応答を前記ウェブ・ブラウザに供給する前記ステップが、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給するステップを含む、請求項に記載の方法。
  10. 持続要求待ち行列内に記憶する前記ステップが、ウェブ・ブラウザのユーザからの要求が前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶するステップを含み、
    前記記憶された要求を前記サーバ・アプリケーションに供給する前記ステップが、前記複数の要求を関連づけられたウェブ・サーバに供給するステップを含み、
    前記サーバ・アプリケーションから応答を受信する前記ステップが、前記関連づけられたウェブ・サーバから複数の応答を受信するステップを含み、
    前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記ステップが、要求に対する応答が前記記憶された要求に関連づけられた前記クライアント識別情報に対応する前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給するステップを含む、請求項に記載の方法。
  11. サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づけるステップと、
    前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給するステップをさらに含む、請求項に記載の方法。
  12. 第2のコンピュータが、該コンピュータに接続障害または通信障害により一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するシステムであって、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求であるかどうかを判断する手段と、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求である場合に、前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶する手段と、
    前記記憶された前記ウェブ・ブラウザからの要求に応答して、前記ウェブ・ブラウザに暫定応答を供給する手段と、
    前記記憶された要求にユーザ識別子を関連づける手段と、
    前記記憶された要求を前記サーバ・アプリケーションに供給する手段と、
    前記サーバ・アプリケーションから応答を受信する手段と、
    前記サーバ・アプリケーションからの前記応答を前記第2のコンピュータにおいて記憶する手段と、
    前記記憶された応答を、前記ユーザ識別子に関連づけられた前記記憶された要求に関連づける手段とを含み、
    前記遠隔/モバイル・データ処理システムが前記第2のコンピュータに再接続された場合に、
    前記遠隔/モバイル・データ処理システムからユーザ識別子を受信する手段と、
    前記受信ユーザ識別子に関連づけられた前記持続要求待ち行列からの要求に対する前記受信応答を遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する手段とを含むシステム。
  13. ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給する手段と、
    記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信する手段と、
    ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた応答を前記ウェブ・ブラウザに供給する手段をさらに含む、請求項12に記載のシステム。
  14. 前記応答が前記第2のコンピュータによって受信された後に、前記受信応答が入手可能であることを前記ユーザに通知する手段と、
    前記ユーザが前記応答を要求した場合にウェブ・ブラウザに前記応答を供給する手段とをさらに含む、請求項12に記載のシステム。
  15. 前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断する手段と、
    前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給する手段と、
    前記埋め込まれた要求に対する応答を受信する手段と、
    前記埋め込まれた要求に対する前記受信応答を第2のコンピュータにおいて記憶する手段と、
    前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づける手段とをさらに含み、
    前記受信応答を前記ウェブ・ブラウザに供給する前記手段が、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給する手段を含む、請求項12に記載のシステム。
  16. サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づける手段と、
    前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給する手段をさらに含む、請求項12に記載のシステム。
  17. 第2のコンピュータが、該コンピュータに接続障害または通信障害により一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するシステムであって、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求であるかどうかを判断する手段と、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求である場合に、前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶する手段と、
    前記記憶された前記ウェブ・ブラウザからの要求に応答して、前記ウェブ・ブラウザに暫定応答を供給する手段と、
    前記記憶された要求にクライアント識別情報を関連づける手段と、
    前記記憶された要求を前記サーバ・アプリケーションに供給する手段と、
    前記サーバ・アプリケーションから応答を受信する手段と、
    前記サーバからの前記受信応答を前記第2のコンピュータ上にあるサーバ側キャッシュに記憶する手段と、
    前記記憶された受信応答を前記記憶された要求に関連づける手段と、
    前記応答が前記第2のコンピュータによって受信された後に、前記遠隔/モバイル・データ処理システムが前記第2のコンピュータに再接続された場合に、
    前記記憶された受信応答が入手可能であることをユーザに通知する手段と、
    前記ユーザが前記記憶された受信応答を要求した場合に、前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給する手段とを含むシステム。
  18. 持続要求待ち行列内に記憶する前記手段が、ウェブ・ブラウザのユーザからの要求が前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶する手段を含み、
    前記記憶された要求を前記サーバ・アプリケーションに供給する前記手段が、前記複数の要求を関連づけられたウェブ・サーバに供給する手段を含み、
    前記サーバ・アプリケーションから応答を受信する前記手段が、前記関連づけられたウェブ・サーバから複数の応答を受信する手段を含み、
    前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給する前記手段が、要求に対する応答が前記記憶された要求に関連づけられた前記クライアント識別情報に対応する前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給する手段を含む、請求項17に記載のシステム。
  19. 第2のコンピュータが、該コンピュータに接続障害または通信障害により一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    前記第2のコンピュータに、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求であるかどうかを判断するステップと、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求である場合に、前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するステップと、
    前記記憶された前記ウェブ・ブラウザからの要求に応答して、前記ウェブ・ブラウザに暫定応答を供給するステップと、
    前記記憶された要求にユーザ識別子を関連づけるステップと、
    前記記憶された要求を前記サーバ・アプリケーションに供給するステップと、
    前記サーバ・アプリケーションから応答を受信するステップと、
    前記サーバ・アプリケーションからの前記応答を前記第2のコンピュータにおいて記憶するステップと、
    前記記憶された応答を、前記ユーザ識別子に関連づけられた前記記憶された要求に関連づけるステップとを実行させ、
    前記遠隔/モバイル・データ処理システムが前記第2のコンピュータに再接続された場合に、
    前記遠隔/モバイル・データ処理システムからユーザ識別子を受信するステップと、
    前記受信ユーザ識別子に関連づけられた前記持続要求待ち行列からの要求に対する前記受信応答を遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給するステップと
    前記第2のコンピュータに実行させる記録媒体。
  20. ユーザに対して提示するために、記憶されている要求のリストを前記ウェブ・ブラウザに供給するステップと、
    記憶された要求の前記リスト内の記憶されている要求のうちの選択された1つの要求を求める要求を前記ブラウザから受信するステップと、
    ユーザ入力に基づいて、記憶されている要求のリストの中の選択された1つの要求に対する関連づけられた応答を前記ウェブ・ブラウザに供給するステップとをさらに実行させる、請求項19に記載の記録媒体。
  21. 前記応答が前記第2のコンピュータによって受信された後に、前記受信応答が入手可能であることを前記ユーザに通知するステップと、
    前記ユーザが前記応答を要求した場合にウェブ・ブラウザに前記応答を供給するステップとをさらに実行させる、請求項19に記載の記録媒体。
  22. 前記受信応答を解析して前記受信応答内に少なくとも1つの要求が埋め込まれているかどうかを判断するステップと、
    前記受信応答内の前記少なくとも1つの埋め込まれた要求を、前記埋め込まれた要求によって指定されているサーバに供給するステップと、
    前記埋め込まれた要求に対する応答を受信するステップと、
    前記埋め込まれた要求に対する前記受信応答を第2のコンピュータにおいて記憶するステップと、
    前記埋め込まれた要求に対する前記記憶された受信応答に、前記持続要求待ち行列内に記憶されている前記要求を関連づけるステップとをさらに実行させ、
    前記受信応答を前記ウェブ・ブラウザに供給するステップが、前記記憶された受信応答と、前記埋め込まれた要求に対する前記記憶された応答とを前記ウェブ・ブラウザに供給するステップを含む、請求項19に記載の記録媒体。
  23. サーバからの複数の応答を前記持続要求待ち行列内の単一の項目に関連づけるステップと、
    前記持続要求待ち行列内の前記単一の項目に関連づけられた前記複数の応答を前記遠隔/モバイル・データ処理システムに供給するステップをさらに実行させる、請求項19に記載の記録媒体。
  24. 第2のコンピュータが、該コンピュータに接続障害または通信障害により一時的および断続的に接続される遠隔/モバイル・データ処理システム上で実行されているウェブ・ブラウザと通信するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    前記第2のコンピュータに
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求であるかどうかを判断するステップと、
    前記ウェブ・ブラウザから受信した要求が切断状態操作の処理を求める要求である場合に、前記第2のコンピュータにおける持続要求待ち行列に、前記第2のコンピュータにとってアクセス可能なサーバ・アプリケーションに対する前記ウェブ・ブラウザからの要求を記憶するステップと、
    前記記憶された前記ウェブ・ブラウザからの要求に応答して、前記ウェブ・ブラウザに暫定応答を供給するステップと、
    前記記憶された要求にクライアント識別情報を関連づけるステップと、
    前記記憶された要求を前記サーバ・アプリケーションに供給するステップと、
    前記サーバ・アプリケーションから応答を受信するステップと、
    前記サーバからの前記受信応答を前記第2のコンピュータ上にあるサーバ側キャッシュに記憶するステップと、
    前記記憶された受信応答を前記記憶された要求に関連づけるステップとを実行させ、
    前記応答が前記第2のコンピュータによって受信された後に、前記遠隔/モバイル・データ処理システムが前記第2のコンピュータに再接続された場合に、
    前記記憶された受信応答が入手可能であることをユーザに通知するステップと、
    前記ユーザが前記記憶された受信応答を要求した場合に、前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられたウェブ・ブラウザに前記記憶された受信応答を供給するステップと
    前記第2のコンピュータに実行させる記録媒体。
  25. 持続要求待ち行列内に記憶するステップが、ウェブ・ブラウザのユーザからの要求が前記記憶された要求に関連づけられた前記クライアント識別情報に関連づけられた前記持続要求待ち行列のうちの1つの持続要求待ち行列に記憶されるように複数のウェブ・ブラウザからの要求を前記複数の持続要求待ち行列に記憶するステップを含み、
    前記記憶された要求を前記サーバ・アプリケーションに供給するステップが、前記複数の要求を関連づけられたウェブ・サーバに供給するステップを含み、
    前記サーバ・アプリケーションから応答を受信するステップが、前記関連づけられたウェブ・サーバから複数の応答を受信するステップを含み、
    前記受信応答を前記遠隔/モバイル・データ処理システム上で実行されている前記ウェブ・ブラウザに供給するステップが、要求に対する応答が前記記憶された要求に関連づけられた前記クライアント識別情報に対応する前記ウェブ・ブラウザに供給されるように、受信した前記複数の応答を前記複数のウェブ・ブラウザに供給するステップを含む、請求項24に記載の記録媒体。
JP20933198A 1997-08-28 1998-07-24 サーバ側非同期フォーム管理方法および装置 Expired - Lifetime JP4041217B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/919913 1997-08-28
US08/919,913 US6070184A (en) 1997-08-28 1997-08-28 Server-side asynchronous form management

Publications (2)

Publication Number Publication Date
JPH11120108A JPH11120108A (ja) 1999-04-30
JP4041217B2 true JP4041217B2 (ja) 2008-01-30

Family

ID=25442855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20933198A Expired - Lifetime JP4041217B2 (ja) 1997-08-28 1998-07-24 サーバ側非同期フォーム管理方法および装置

Country Status (7)

Country Link
US (1) US6070184A (ja)
JP (1) JP4041217B2 (ja)
KR (1) KR100318781B1 (ja)
CN (1) CN1113504C (ja)
GB (1) GB2330503B (ja)
SG (1) SG77192A1 (ja)
TW (1) TW386197B (ja)

Families Citing this family (200)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7342581B2 (en) 1996-07-18 2008-03-11 Computer Associates Think, Inc. Method and apparatus for displaying 3-D state indicators
US5958012A (en) * 1996-07-18 1999-09-28 Computer Associates International, Inc. Network management system using virtual reality techniques to display and simulate navigation to network components
US7680879B2 (en) * 1996-07-18 2010-03-16 Computer Associates Think, Inc. Method and apparatus for maintaining data integrity across distributed computer systems
US7003587B1 (en) 1996-07-18 2006-02-21 Computer Associates Think, Inc. Method and apparatus for maintaining data integrity across distributed computer systems
US7266526B1 (en) * 1996-11-27 2007-09-04 Diebold, Incorporated Automated banking machine system with multiple browsers
US20030018771A1 (en) * 1997-07-15 2003-01-23 Computer Associates Think, Inc. Method and apparatus for generating and recognizing speech as a user interface element in systems and network management
US7315893B2 (en) * 1997-07-15 2008-01-01 Computer Associates Think, Inc. Method and apparatus for filtering messages based on context
US20030023721A1 (en) * 1997-07-15 2003-01-30 Computer Associates Think, Inc. Method and apparatus for generating context-descriptive messages
US20060193278A1 (en) 1997-10-15 2006-08-31 Wolfgang Theimer Mobile telephone for Internet applications
US6286046B1 (en) * 1997-12-22 2001-09-04 International Business Machines Corporation Method of recording and measuring e-business sessions on the world wide web
JP3561139B2 (ja) * 1998-01-27 2004-09-02 シャープ株式会社 ファイルオブジェクト中継方法、ファイルオブジェクト中継方法のプログラムを記録したコンピュータで読取り可能な記録媒体、およびゲートウェイ計算機
US6735770B1 (en) * 1998-04-27 2004-05-11 Sun Microsystems, Inc. Method and apparatus for high performance access to data in a message store
US20020176009A1 (en) * 1998-05-08 2002-11-28 Johnson Sandra Marie Image processor circuits, systems, and methods
US6412015B1 (en) 1998-06-24 2002-06-25 New Moon Systems, Inc. System and method for virtualizing and controlling input and output of computer programs
US6330561B1 (en) * 1998-06-26 2001-12-11 At&T Corp. Method and apparatus for improving end to end performance of a data network
US6591305B2 (en) * 1998-06-30 2003-07-08 Sun Microsystems, Inc. Method and system for delivering data from a server object to a client object using a non-proprietary data transfer protocol
US6633914B1 (en) * 1998-08-05 2003-10-14 International Business Machines Corporation Systems, methods and computer program products for handling client requests for server application processing using a thread pool
US6704790B1 (en) * 1998-09-16 2004-03-09 Microsoft Corporation Server-side stream switching
US7159005B1 (en) * 1998-10-16 2007-01-02 International Business Machines Corporation Methods, systems and computer program products for restartable multiplexed file transfers
US6453342B1 (en) * 1998-12-03 2002-09-17 International Business Machines Corporation Method and apparatus for selective caching and cleaning of history pages for web browsers
CN1108578C (zh) * 1999-01-28 2003-05-14 国际商业机器公司 为离线客户请求提供响应的方法及装置
US6434596B1 (en) * 1999-01-29 2002-08-13 Sony Corporation Method and system for distributed queues in a multimedia network with proxies
US7080158B1 (en) * 1999-02-09 2006-07-18 Nortel Networks Limited Network caching using resource redirection
IL146180A0 (en) * 1999-04-26 2002-07-25 Computer Ass Think Inc Method and appratus for maintaining data integrity across distributed computer systems
US6510550B1 (en) * 1999-05-12 2003-01-21 Intel Corporation Method and apparatus for providing intermittent connectivity support in a computer application
US6372494B1 (en) * 1999-05-14 2002-04-16 Advanced Tissue Sciences, Inc. Methods of making conditioned cell culture medium compositions
DE60015764T2 (de) 1999-05-28 2005-11-03 Nokia Corp. Benutzerschnittstelle und server für interaktive dienste
US7100195B1 (en) 1999-07-30 2006-08-29 Accenture Llp Managing user information on an e-commerce system
US6766298B1 (en) * 1999-09-03 2004-07-20 Cisco Technology, Inc. Application server configured for dynamically generating web pages for voice enabled web applications
US6553412B1 (en) 1999-09-10 2003-04-22 Avantgo, Inc. System, method, and computer program product for web content aggregation and development, and web content delivery to clients
US7392308B2 (en) * 1999-09-10 2008-06-24 Ianywhere Solutions, Inc. System, method, and computer program product for placement of channels on a mobile device
US20080215672A1 (en) * 1999-09-10 2008-09-04 Sybase 365, Inc. System, Method, and Computer Program Product for a Scalable, Configurable, Client/Server, Cross-Platform Browser for Mobile Devices
US20010047394A1 (en) * 1999-09-10 2001-11-29 Kloba David D. System, method, and computer program product for executing scripts on mobile devices
US8595308B1 (en) 1999-09-10 2013-11-26 Ianywhere Solutions, Inc. System, method, and computer program product for server side processing in a mobile device environment
US20020052781A1 (en) * 1999-09-10 2002-05-02 Avantgo, Inc. Interactive advertisement mechanism on a mobile device
US7987420B1 (en) 1999-09-10 2011-07-26 Ianywhere Solutions, Inc. System, method, and computer program product for a scalable, configurable, client/server, cross-platform browser for mobile devices
US7305475B2 (en) * 1999-10-12 2007-12-04 Webmd Health System and method for enabling a client application to operate offline from a server
US6950881B1 (en) * 1999-11-02 2005-09-27 Mshift, Inc. System for converting wireless communications for a mobile device
JP2001134519A (ja) * 1999-11-05 2001-05-18 Toshiba Corp クライアント・サーバーシステム及び業務支援システム
US6633919B1 (en) * 1999-11-18 2003-10-14 International Business Machines Corporation Method, system and program product for managing the flow of data between senders and receivers of a computing environment
US7143186B2 (en) 2000-02-16 2006-11-28 Bea Systems, Inc. Pluggable hub system for enterprise wide electronic collaboration
US6973498B1 (en) * 2000-03-23 2005-12-06 Microsoft Corporation Local queue creation security
US20020004803A1 (en) * 2000-04-07 2002-01-10 Oleg Serebrennikov Method and apparatus for the dynamic modification of relational information in electronic documents such as HTML pages and the like
US6981028B1 (en) * 2000-04-28 2005-12-27 Obongo, Inc. Method and system of implementing recorded data for automating internet interactions
US8175921B1 (en) 2000-05-30 2012-05-08 Nokia Corporation Location aware product placement and advertising
US8540574B1 (en) 2000-05-30 2013-09-24 Core Wireless Licensing S.A.R.L. Navigation aware news service
US7191394B1 (en) 2000-06-21 2007-03-13 Microsoft Corporation Authoring arbitrary XML documents using DHTML and XSLT
US7000230B1 (en) 2000-06-21 2006-02-14 Microsoft Corporation Network-based software extensions
US6883168B1 (en) 2000-06-21 2005-04-19 Microsoft Corporation Methods, systems, architectures and data structures for delivering software via a network
US7155667B1 (en) 2000-06-21 2006-12-26 Microsoft Corporation User interface for integrated spreadsheets and word processing tables
US6996599B1 (en) * 2000-06-21 2006-02-07 Microsoft Corporation System and method providing multi-tier applications architecture
US7346848B1 (en) 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US6948135B1 (en) 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
GB2364483A (en) * 2000-06-30 2002-01-23 Nokia Oy Ab Accessing more than one item of information from a remote server
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
EP1314110B1 (en) * 2000-08-23 2009-10-07 Gracenote, Inc. Method of enhancing rendering of a content item, client system and server system
TWI244617B (en) * 2000-09-16 2005-12-01 Ibm A client/server-based data processing system for performing transactions between clients and a server and a method of performing the transactions
US7668740B1 (en) 2000-09-22 2010-02-23 Ita Software, Inc. Method, system, and computer program product for interfacing with information sources
US6999992B1 (en) 2000-10-04 2006-02-14 Microsoft Corporation Efficiently sending event notifications over a computer network
US7330876B1 (en) * 2000-10-13 2008-02-12 Aol Llc, A Delaware Limited Liability Company Method and system of automating internet interactions
US7076275B1 (en) * 2000-10-13 2006-07-11 Palmsource, Inc. Method and system for single-step enablement of telephony functionality for a portable computer system
US20020147809A1 (en) * 2000-10-17 2002-10-10 Anders Vinberg Method and apparatus for selectively displaying layered network diagrams
US20020103974A1 (en) * 2000-11-29 2002-08-01 Giacomini Peter Joseph Method and apparatus for economical cache population
CA2430099A1 (en) * 2000-12-20 2002-06-27 International Business Machines Corporation Method and system for remote software distribution and installation
US20020083145A1 (en) * 2000-12-22 2002-06-27 Nortel Networks Limited Method and system for online/offline services
JP4307747B2 (ja) * 2001-01-25 2009-08-05 インターナショナル・ビジネス・マシーンズ・コーポレーション 接続受付システム、受付サーバ、クライアント端末、接続受付管理方法、記憶媒体、コンピュータプログラム
US7734725B2 (en) * 2001-03-30 2010-06-08 International Business Machines Corporation Method and apparatus for server side queuing to control page presentation on web enabled device
US6895005B1 (en) 2001-04-23 2005-05-17 Sprint Spectrum L.P. Business logic server for facilitating the transmission of a data download to a mobile wireless unit
US7203756B2 (en) * 2001-04-27 2007-04-10 International Business Machines Corporation Mechanism to cache references to Java RMI remote objects implementing the unreferenced interface
US7194551B1 (en) * 2001-04-30 2007-03-20 Sprint Spectrum L.P. System and method for downloading data to a mobile wireless unit using over-the-air parameter administration services
US6985746B2 (en) 2001-04-30 2006-01-10 Ipr Licensing, Inc. Wireless communication system having mobility-based content delivery
US8095597B2 (en) 2001-05-01 2012-01-10 Aol Inc. Method and system of automating data capture from electronic correspondence
JP4508471B2 (ja) * 2001-05-25 2010-07-21 キヤノン株式会社 プリントシステム及び情報処理装置
US7272232B1 (en) * 2001-05-30 2007-09-18 Palmsource, Inc. System and method for prioritizing and balancing simultaneous audio outputs in a handheld device
US7437710B2 (en) * 2001-07-02 2008-10-14 Bea Systems, Inc. Annotation based development platform for stateful web services
US6918107B2 (en) * 2001-07-02 2005-07-12 Bea Systems, Inc. Programming language extensions for processing data representation language objects and related applications
US7356803B2 (en) * 2001-07-02 2008-04-08 Bea Systems, Inc. Annotation based development platform for asynchronous web services
US6754884B1 (en) 2001-07-02 2004-06-22 Bea Systems, Inc. Programming language extensions for processing XML objects and related applications
US8112529B2 (en) 2001-08-20 2012-02-07 Masterobjects, Inc. System and method for asynchronous client server session communication
US7962565B2 (en) * 2001-09-29 2011-06-14 Siebel Systems, Inc. Method, apparatus and system for a mobile web client
WO2003032125A2 (en) * 2001-10-11 2003-04-17 Visualsciences, Llc System, method, and computer program product for processing and visualization of information
US7552222B2 (en) * 2001-10-18 2009-06-23 Bea Systems, Inc. Single system user identity
US20030097345A1 (en) * 2001-10-18 2003-05-22 Mitch Upton System and method for invoking business functionality for a workflow
US6859810B2 (en) * 2001-12-10 2005-02-22 Bea Systems, Inc. Declarative specification and engine for non-isomorphic data mapping
US20030145048A1 (en) * 2002-01-18 2003-07-31 Bea Systems, Inc. System and method for HTTP request preprocessing for servlets and application servers
AU2002322356B2 (en) * 2002-02-22 2007-12-13 Oracle International Corporation Web service development platform for asynchronous web services
US7516447B2 (en) 2002-02-22 2009-04-07 Bea Systems, Inc. Methods and apparatus for building, customizing and using software abstractions of external entities
US7526519B2 (en) * 2002-05-01 2009-04-28 Bea Systems, Inc. High availability application view deployment
US8135772B2 (en) 2002-05-01 2012-03-13 Oracle International Corporation Single servlets for B2B message routing
US20040078440A1 (en) * 2002-05-01 2004-04-22 Tim Potter High availability event topic
US7424717B2 (en) * 2002-05-01 2008-09-09 Bea Systems, Inc. Systems and methods for business process plug-in development
US7155438B2 (en) * 2002-05-01 2006-12-26 Bea Systems, Inc. High availability for event forwarding
US7257645B2 (en) * 2002-05-01 2007-08-14 Bea Systems, Inc. System and method for storing large messages
US7350184B2 (en) 2002-05-02 2008-03-25 Bea Systems, Inc. System and method for enterprise application interactions
US7627631B2 (en) * 2002-05-02 2009-12-01 Bea Systems, Inc. Systems and methods for collaborative business plug-ins
US7676538B2 (en) 2002-05-02 2010-03-09 Bea Systems, Inc. Systems and methods for application view transactions
US7484224B2 (en) 2002-05-02 2009-01-27 Bae Systems, Inc. Adapter deployment without recycle
US7222148B2 (en) * 2002-05-02 2007-05-22 Bea Systems, Inc. System and method for providing highly available processing of asynchronous service requests
US7493628B2 (en) * 2002-05-02 2009-02-17 Bea Systems, Inc. Shared common connection factory
US8117328B2 (en) 2002-06-25 2012-02-14 Microsoft Corporation System and method for automatically recovering from failed network connections in streaming media scenarios
US6988099B2 (en) * 2002-06-27 2006-01-17 Bea Systems, Inc. Systems and methods for maintaining transactional persistence
US8245128B1 (en) * 2002-07-17 2012-08-14 Oracle International Corporation Intelligent client agent for a hybrid online/offline application
US8010706B1 (en) * 2002-08-05 2011-08-30 Purple Communications, Inc. Method of and system for enabling offline applications
US7418702B2 (en) * 2002-08-06 2008-08-26 Sheng (Ted) Tai Tsao Concurrent web based multi-task support for control management system
US11336754B1 (en) * 2002-08-06 2022-05-17 Sheng Tai Tsao Method and system for concurrent web based multitasking support
CN100411380C (zh) * 2002-08-19 2008-08-13 万达信息股份有限公司 一种网络数据交换中同步与异步间的转换方法
US7650591B2 (en) 2003-01-24 2010-01-19 Bea Systems, Inc. Marshaling and un-marshaling data types in XML and Java
US20040153440A1 (en) * 2003-01-30 2004-08-05 Assaf Halevy Unified management of queries in a multi-platform distributed environment
US7752599B2 (en) 2003-02-25 2010-07-06 Bea Systems Inc. Systems and methods extending an existing programming language with constructs
US7293038B2 (en) * 2003-02-25 2007-11-06 Bea Systems, Inc. Systems and methods for client-side filtering of subscribed messages
US7584474B2 (en) * 2003-02-25 2009-09-01 Bea Systems, Inc. Systems and methods for transaction chaining
US20050022164A1 (en) * 2003-02-25 2005-01-27 Bea Systems, Inc. Systems and methods utilizing a workflow definition language
US7774697B2 (en) * 2003-02-25 2010-08-10 Bea Systems, Inc. System and method for structuring distributed applications
US7299454B2 (en) * 2003-02-26 2007-11-20 Bea Systems, Inc. Method for multi-language debugging
US8032860B2 (en) * 2003-02-26 2011-10-04 Oracle International Corporation Methods for type-independent source code editing
US7707564B2 (en) 2003-02-26 2010-04-27 Bea Systems, Inc. Systems and methods for creating network-based software services using source code annotations
US20050108682A1 (en) * 2003-02-26 2005-05-19 Bea Systems, Inc. Systems for type-independent source code editing
US7539985B2 (en) * 2003-02-26 2009-05-26 Bea Systems, Inc. Systems and methods for dynamic component versioning
US20040230955A1 (en) * 2003-02-26 2004-11-18 Bea Systems, Inc. System for multi-language debugging
US7076772B2 (en) * 2003-02-26 2006-07-11 Bea Systems, Inc. System and method for multi-language extensible compiler framework
US7650276B2 (en) 2003-02-26 2010-01-19 Bea Systems, Inc. System and method for dynamic data binding in distributed applications
US7636722B2 (en) * 2003-02-28 2009-12-22 Bea Systems, Inc. System and method for describing application extensions in XML
US20040225995A1 (en) * 2003-02-28 2004-11-11 Kyle Marvin Reusable software controls
US7444620B2 (en) 2003-02-28 2008-10-28 Bea Systems, Inc. Systems and methods for a common runtime container framework
US20050044173A1 (en) * 2003-02-28 2005-02-24 Olander Daryl B. System and method for implementing business processes in a portal
US7650592B2 (en) 2003-03-01 2010-01-19 Bea Systems, Inc. Systems and methods for multi-view debugging environment
US7370066B1 (en) 2003-03-24 2008-05-06 Microsoft Corporation System and method for offline editing of data files
US7415672B1 (en) 2003-03-24 2008-08-19 Microsoft Corporation System and method for designing electronic forms
US7275216B2 (en) 2003-03-24 2007-09-25 Microsoft Corporation System and method for designing electronic forms and hierarchical schemas
US7913159B2 (en) 2003-03-28 2011-03-22 Microsoft Corporation System and method for real-time validation of structured data files
US6908058B2 (en) * 2003-03-28 2005-06-21 Suncast Corporation Hose reel cart with elevated crank handle
US7296017B2 (en) 2003-03-28 2007-11-13 Microsoft Corporation Validation of XML data files
US7281029B2 (en) * 2003-05-13 2007-10-09 Aol Llc, A Delaware Limited Liability Company Method and system of capturing data for automating internet interactions
JPWO2004102396A1 (ja) 2003-05-14 2006-07-13 富士通株式会社 遅延ストレージ装置および遅延処理方法
JP2004348666A (ja) * 2003-05-26 2004-12-09 Seiko Epson Corp クライアント・サーバシステム、サーバ、および情報処理システム
US20040267962A1 (en) * 2003-06-24 2004-12-30 Nokia Corporation Method and system in wireless data communication network for transferring content to terminal equipment and corresponding terminal equipment, server and browser devices
US7532571B1 (en) * 2003-06-27 2009-05-12 Microsoft Corporation Providing online connectivity across a range of electronic communications systems
US7349968B2 (en) * 2003-07-31 2008-03-25 International Business Machines Corporation Method, system and program product for asynchronously processing requests
US7406660B1 (en) 2003-08-01 2008-07-29 Microsoft Corporation Mapping between structured data and a visual surface
US7334187B1 (en) 2003-08-06 2008-02-19 Microsoft Corporation Electronic form aggregation
US7185238B2 (en) * 2003-09-30 2007-02-27 Sap Ag Data loss prevention
US7873353B2 (en) * 2003-09-30 2011-01-18 Ianywhere Solutions, Inc. Method and system for accessing applications and data, and for tracking of key indicators on mobile handheld devices
FR2863127A1 (fr) * 2003-12-02 2005-06-03 Canon Kk Procedes et dispositifs pour la delivrance asynchrone de donnees numeriques
US8819072B1 (en) 2004-02-02 2014-08-26 Microsoft Corporation Promoting data from structured data files
JP4144882B2 (ja) 2004-05-14 2008-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション 情報処理装置、情報システム、プロキシ処理方法、及びプログラムと記録媒体
US7774620B1 (en) 2004-05-27 2010-08-10 Microsoft Corporation Executing applications at appropriate trust levels
US20060010173A1 (en) * 2004-06-30 2006-01-12 Kilday Roger W Methods and systems for client-side, on-disk caching
EP1612992B1 (en) * 2004-07-02 2010-06-30 Alcatel Lucent Method to provide multicast data transmission in a discontinuous network
US7617501B2 (en) 2004-07-09 2009-11-10 Quest Software, Inc. Apparatus, system, and method for managing policies on a computer having a foreign operating system
US20060015622A1 (en) * 2004-07-14 2006-01-19 International Business Machines Corporation Enabling asynchronous transaction interactions on Web browsers
US20070027991A1 (en) * 2005-07-14 2007-02-01 Mistletoe Technologies, Inc. TCP isolation with semantic processor TCP state machine
US8135803B2 (en) * 2004-08-23 2012-03-13 Ianywhere Solutions, Inc. Method, system, and computer program product for offline advertisement servicing and cycling
JP2006085365A (ja) * 2004-09-15 2006-03-30 Ricoh Co Ltd プロキシ装置、サービス利用装置、プロキシプログラム、サービス利用プログラム、記録媒体及び非同期オペレーション提供方法
US20060064470A1 (en) * 2004-09-23 2006-03-23 Sargent Antony J Method, system, and computer program product for improved synchronization efficiency for mobile devices, including database hashing and caching of web access errors
US20060075336A1 (en) * 2004-09-29 2006-04-06 International Business Machines Corporation Method, system and program product for providing content over a network
US7692636B2 (en) 2004-09-30 2010-04-06 Microsoft Corporation Systems and methods for handwriting to a screen
US20060074933A1 (en) * 2004-09-30 2006-04-06 Microsoft Corporation Workflow interaction
US8487879B2 (en) 2004-10-29 2013-07-16 Microsoft Corporation Systems and methods for interacting with a computer through handwriting to a screen
US7363742B2 (en) * 2004-11-12 2008-04-29 Taser International, Inc. Systems and methods for electronic weaponry having audio and/or video recording capability
US7712022B2 (en) * 2004-11-15 2010-05-04 Microsoft Corporation Mutually exclusive options in electronic forms
US7721190B2 (en) 2004-11-16 2010-05-18 Microsoft Corporation Methods and systems for server side form processing
US7509353B2 (en) * 2004-11-16 2009-03-24 Microsoft Corporation Methods and systems for exchanging and rendering forms
US8458467B2 (en) * 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
US7577749B1 (en) 2004-12-03 2009-08-18 Ux Ltd. Emulation of persistent HTTP connections between network devices
US7937651B2 (en) 2005-01-14 2011-05-03 Microsoft Corporation Structural editing operations for network forms
WO2006089385A1 (en) * 2005-02-22 2006-08-31 Nextair Corporation Wireless communication device use of application server applications
US7725834B2 (en) 2005-03-04 2010-05-25 Microsoft Corporation Designer-created aspect for an electronic form template
US8010515B2 (en) * 2005-04-15 2011-08-30 Microsoft Corporation Query to an electronic form
US8200975B2 (en) 2005-06-29 2012-06-12 Microsoft Corporation Digital signatures for network forms
US7676806B2 (en) * 2005-09-27 2010-03-09 Microsoft Corporation Deployment, maintenance and configuration of complex hardware and software systems
CN1941771B (zh) * 2005-09-27 2011-09-07 国际商业机器公司 用于面向服务的体系结构应用的Web服务信息管理方法和系统
US7596720B2 (en) * 2005-09-27 2009-09-29 Microsoft Corporation Application health checks
US7603669B2 (en) * 2005-09-27 2009-10-13 Microsoft Corporation Upgrade and downgrade of data resource components
US8001459B2 (en) 2005-12-05 2011-08-16 Microsoft Corporation Enabling electronic documents for limited-capability computing devices
US7904949B2 (en) 2005-12-19 2011-03-08 Quest Software, Inc. Apparatus, systems and methods to provide authentication services to a legacy application
US8087075B2 (en) 2006-02-13 2011-12-27 Quest Software, Inc. Disconnected credential validation using pre-fetched service tickets
JP2007272742A (ja) * 2006-03-31 2007-10-18 Ntt Docomo Inc 通信端末及び通信方法
US8429712B2 (en) 2006-06-08 2013-04-23 Quest Software, Inc. Centralized user authentication system apparatus and method
JP2008084015A (ja) * 2006-09-27 2008-04-10 Casio Comput Co Ltd ウェブページ閲覧プログラム及び入力フォーム編集装置
US7895332B2 (en) 2006-10-30 2011-02-22 Quest Software, Inc. Identity migration system apparatus and method
US8086710B2 (en) 2006-10-30 2011-12-27 Quest Software, Inc. Identity migration apparatus and method
US8200764B2 (en) * 2006-12-19 2012-06-12 International Business Machines Corporation System and method for achieving highly scalable real-time collaboration applications using HTTP
US8055761B2 (en) * 2007-01-31 2011-11-08 International Business Machines Corporation Method and apparatus for providing transparent network connectivity
KR100888478B1 (ko) * 2007-03-08 2009-03-12 삼성전자주식회사 액션 처리 방법, 피제어 장치의 제어 방법, 피제어 장치 및제어 포인트
CN101296176B (zh) * 2007-04-25 2010-12-22 阿里巴巴集团控股有限公司 一种基于群集的数据处理方法和装置
US20090003387A1 (en) * 2007-06-27 2009-01-01 Microsoft Corporation Synchronization Between Connection Manager and Extension Components
US20090228545A1 (en) * 2008-03-07 2009-09-10 Mendez Jose A Online mobile applications capable of dealing with occasional disconnects
US9122519B1 (en) * 2008-03-12 2015-09-01 Lockheed Martin Corporation Governor for elimination of repetitive requests
CN101296236B (zh) * 2008-06-12 2011-06-08 北京中星微电子有限公司 多用户实时访问多媒体数据的方法、系统及数据客户端
US8949344B2 (en) * 2008-09-15 2015-02-03 Microsoft Corporation Asynchronous queued messaging for web applications
US8255984B1 (en) 2009-07-01 2012-08-28 Quest Software, Inc. Single sign-on system for shared resource environments
US20110078233A1 (en) * 2009-09-30 2011-03-31 International Business Machines Corporation Apparatus, system, and method for improved performance of real time applications in intermittent connection environments
US8595752B1 (en) * 2011-06-13 2013-11-26 Google Inc. Hybrid application message passing
JP5814284B2 (ja) * 2013-03-22 2015-11-17 ヤフー株式会社 端末装置、表示方法、表示制御プログラム及びサーバ装置
JP6245005B2 (ja) * 2014-03-13 2017-12-13 富士通株式会社 ウェブページ表示システム及びウェブページ表示プログラム
JP6629157B2 (ja) 2016-09-06 2020-01-15 株式会社東芝 システム
US10620996B2 (en) * 2017-04-26 2020-04-14 Servicenow, Inc. Batching asynchronous web requests
CN110912958A (zh) * 2018-09-18 2020-03-24 中国移动通信集团重庆有限公司 Http连接的处理方法、装置、设备和介质
CN111061938A (zh) * 2019-12-17 2020-04-24 深圳前海环融联易信息科技服务有限公司 解决多次触发网络请求的防抖动函数方法、装置、计算机设备及存储介质
CN111565219A (zh) * 2020-04-16 2020-08-21 浙江工业大学 一种模拟真实排队的网络连接池协议的实现方法

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4438511A (en) * 1980-11-10 1984-03-20 Telebit Corporation Packetized ensemble modem
US5021949A (en) * 1988-02-29 1991-06-04 International Business Machines Corporation Method and apparatus for linking an SNA host to a remote SNA host over a packet switched communications network
US4893307A (en) * 1988-02-29 1990-01-09 International Business Machines Corporation Method and apparatus for linking SNA terminals to an SNA host over a packet switched communications network
US5473772A (en) * 1991-04-02 1995-12-05 International Business Machines Corporation Automatic update of static and dynamic files at a remote network node in response to calls issued by or for application programs
US5193162A (en) * 1989-11-06 1993-03-09 Unisys Corporation Cache memory with data compaction for use in the audit trail of a data processing system having record locking capabilities
US5220501A (en) * 1989-12-08 1993-06-15 Online Resources, Ltd. Method and system for remote delivery of retail banking services
JP2511591B2 (ja) * 1990-10-29 1996-06-26 インターナショナル・ビジネス・マシーンズ・コーポレイション 無線光通信システムの動作方法および光通信システム
US5241625A (en) * 1990-11-27 1993-08-31 Farallon Computing, Inc. Screen image sharing among heterogeneous computers
US5611038A (en) * 1991-04-17 1997-03-11 Shaw; Venson M. Audio/video transceiver provided with a device for reconfiguration of incompatibly received or transmitted video and audio information
US5481721A (en) * 1991-07-17 1996-01-02 Next Computer, Inc. Method for providing automatic and dynamic translation of object oriented programming language-based message passing into operation system message passing using proxy objects
US5224098A (en) * 1991-07-17 1993-06-29 International Business Machines Corporation Compensation for mismatched transport protocols in a data communications network
DE4131133B4 (de) * 1991-09-19 2005-09-08 Robert Bosch Gmbh Verfahren und Vorrichtung zum Austausch von Daten in Datenverarbeitungsanlagen
US5442633A (en) * 1992-07-08 1995-08-15 International Business Machines Corporation Shortcut network layer routing for mobile hosts
US5737536A (en) * 1993-02-19 1998-04-07 Borland International, Inc. System and methods for optimized access in a multi-user environment
US5511208A (en) * 1993-03-23 1996-04-23 International Business Machines Corporation Locating resources in computer networks having cache server nodes
JPH06324928A (ja) * 1993-05-14 1994-11-25 Mitsubishi Electric Corp ログ生成装置とファイルの異なるバージョンの調停のための装置及び異なる場所にあるコンピュータファイルの異なるバージョンを調停するための装置
US5446736A (en) * 1993-10-07 1995-08-29 Ast Research, Inc. Method and apparatus for connecting a node to a wireless network using a standard protocol
US5412654A (en) * 1994-01-10 1995-05-02 International Business Machines Corporation Highly dynamic destination-sequenced destination vector routing for mobile computers
US5446888A (en) * 1994-01-14 1995-08-29 Pyne; Charles F. Remote file transfer method and apparatus
US5574906A (en) * 1994-10-24 1996-11-12 International Business Machines Corporation System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing
US5572528A (en) * 1995-03-20 1996-11-05 Novell, Inc. Mobile networking method and apparatus
US5581558A (en) * 1995-03-29 1996-12-03 Lucent Technologies Inc. Apparatus for bridging non-compatible network architectures
US5701451A (en) * 1995-06-07 1997-12-23 International Business Machines Corporation Method for fulfilling requests of a web browser
US5829023A (en) * 1995-07-17 1998-10-27 Cirrus Logic, Inc. Method and apparatus for encoding history of file access to support automatic file caching on portable and desktop computers
US5850517A (en) * 1995-08-31 1998-12-15 Oracle Corporation Communication link for client-server having agent which sends plurality of requests independent of client and receives information from the server independent of the server
US5737619A (en) * 1995-10-19 1998-04-07 Judson; David Hugh World wide web browsing with content delivery over an idle connection and interstitial content display
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
US5878213A (en) * 1996-02-15 1999-03-02 International Business Machines Corporation Methods, systems and computer program products for the synchronization of time coherent caching system
US5859971A (en) * 1996-02-15 1999-01-12 International Business Machines Corp. Differencing client/server communication system for use with CGI forms
US5867661A (en) * 1996-02-15 1999-02-02 International Business Machines Corporation Method and apparatus of using virtual sockets for reducing data transmitted over a wireless communication link between a client web browser and a host web server using a standard TCP protocol
US5754774A (en) * 1996-02-15 1998-05-19 International Business Machine Corp. Client/server communication system
US5673322A (en) * 1996-03-22 1997-09-30 Bell Communications Research, Inc. System and method for providing protocol translation and filtering to access the world wide web from wireless or low-bandwidth networks
JPH09270794A (ja) * 1996-03-29 1997-10-14 Mitsubishi Electric Corp ネットワーク管理装置
US5764910A (en) * 1996-04-02 1998-06-09 National Semiconductor Corporation Method and apparatus for encoding and using network resource locators
US5928323A (en) * 1996-05-30 1999-07-27 Sun Microsystems, Inc. Apparatus and method for dynamically generating information with server-side software objects
US5857201A (en) * 1996-06-18 1999-01-05 Wright Strategies, Inc. Enterprise connectivity to handheld devices
US5870558A (en) * 1996-06-25 1999-02-09 Mciworldcom, Inc. Intranet graphical user interface for SONET network management
US5774660A (en) * 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network

Also Published As

Publication number Publication date
GB9817016D0 (en) 1998-09-30
CN1113504C (zh) 2003-07-02
KR19990023318A (ko) 1999-03-25
US6070184A (en) 2000-05-30
TW386197B (en) 2000-04-01
GB2330503B (en) 2002-05-29
JPH11120108A (ja) 1999-04-30
CN1210409A (zh) 1999-03-10
SG77192A1 (en) 2000-12-19
GB2330503A (en) 1999-04-21
KR100318781B1 (ko) 2002-02-19

Similar Documents

Publication Publication Date Title
JP4041217B2 (ja) サーバ側非同期フォーム管理方法および装置
JP4233638B2 (ja) 第2のコンピュータに一時的かつ断続的に接続される第1のコンピュータで実行されているウェブ・ブラウザと第2のコンピュータ内のウェブ・サーバ間で通信する方法、並びにそのシステム及びコンピュータ可読プログラムを記録したコンピュータ可読記録媒体
US8219692B2 (en) Method and apparatus for storing and restoring state information of remote user interface
AU781898B2 (en) Method for acquiring content information, and software product, collaboration system and collaboration server for acquiring content information
CA2272897C (en) Performance optimizations for computer networks using http
US6151606A (en) System and method for using a workspace data manager to access, manipulate and synchronize network data
JP3506179B2 (ja) 時間コヒーレント・キャッシュ・システム
US6108655A (en) Method and apparatus for transmitting images and other objects over a computer network system
EP1109371B1 (en) System and method for dynamically limiting information sent to a handheld device
US6385642B1 (en) Internet web server cache storage and session management system
Chang et al. Web browsing in a wireless environment: Disconnected and asynchronous operation in artour web express
US9094369B2 (en) Method and apparatus for storing and restoring state information of remote user interface
JPH11514117A (ja) オーバヘッドの少ないtcp通信システム
JPH11500895A (ja) クライアント/サーバ通信システム
US20050108299A1 (en) Real-time Web sharing system
US8291032B2 (en) Email system
US20020083130A1 (en) Method and system for referring to data over network
JP3682914B2 (ja) データ通信システムおよびこれに用いるデータ処理装置、ブラウザを利用した接続維持方法、記録媒体
US20050198331A1 (en) Seamless system and recording medium, and computer system process continuing method
JP2002157219A (ja) 既存オンラインアプリケーションのインターネット端末対応方法及びシステム並びにサーバ装置と記録媒体
US20020099718A1 (en) Communication terminal
JP2003058439A (ja) 一方向リクエスト・レスポンス型通信における擬似非同期双方向通信システム、通信方法、サーバ装置、クライアント装置およびクライアントプログラム
JP2001142813A (ja) 非接続型プロトコル基盤のウェブサービス上で接続型プロトコル基盤のサービスを支援するためのシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031205

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040106

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20040305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071016

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20071106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071109

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

Free format text: PAYMENT UNTIL: 20101116

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20101116

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111116

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20111116

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121116

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20121116

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131116

Year of fee payment: 6

EXPY Cancellation because of completion of term