JPH10133892A - サーブレットを処理する方法及び装置 - Google Patents

サーブレットを処理する方法及び装置

Info

Publication number
JPH10133892A
JPH10133892A JP9140794A JP14079497A JPH10133892A JP H10133892 A JPH10133892 A JP H10133892A JP 9140794 A JP9140794 A JP 9140794A JP 14079497 A JP14079497 A JP 14079497A JP H10133892 A JPH10133892 A JP H10133892A
Authority
JP
Japan
Prior art keywords
servlet
request
computer
client
server
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.)
Granted
Application number
JP9140794A
Other languages
English (en)
Other versions
JP4005667B2 (ja
Inventor
James A Gosling
エイ ゴスリング ジェームズ
Pavani Diwanji
ディワンジ パヴァーニ
David W Connelly
ダブリュー コネリー ディヴィッド
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH10133892A publication Critical patent/JPH10133892A/ja
Application granted granted Critical
Publication of JP4005667B2 publication Critical patent/JP4005667B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 クライアント・コンピュータ要求に応じて情
報を動的に生成し、かつ動的情報を生成すると同時に処
理始動費用を低減できるウェブ・サーバ環境を提供す
る。 【解決手段】 クライアント−サーバ・ネットワークの
ローカル・サーバ・コンピュータを動作する方法及び装
置は、クライアント−サーバ・ネットワークのクライア
ント・コンピュータから要求を受け取るための技術を含
む。決定は、要求が、クライアント−サーバ・ネットワ
ークのサーブレット・オブジェクトから動的に生成され
た情報を必要とするかどうかについてなされる。そうで
あれば、要求に対応している特定のサーブレット・オブ
ジェクトは、クライアント−サーバ・ネットワークの遠
隔サーバ・コンピュータからアップロードされうる。次
いで、特定のサーブレット・オブジェクトは、要求に対
応している動的に生成された情報を取得すべく実行され
る。

Description

【発明の詳細な説明】
【0001】この出願は、1996年 5月30日に出願された
“Method and System for Facilitating Servlets ”と
いう発明の名称の米国特許出願第08/657,712号の継続出
願である1996年11月25日に出願されたMethod and Syste
m for Facilitating Servlets ”という発明の名称の米
国特許出願第08/756,325号の一部継続出願である。この
特許文書(明細書)の開示の一部は、著作権保護の対象
になる材料を含む。著作権所有者は、特許及び商標局特
許ファイルまたは記録に表されるような、特許開示のあ
らゆるものによるファクシミリ複製に異議はないが、そ
れ以外に関しては、著作権の権利を保持する。
【0002】
【産業上の利用分野】この発明は、一般に、クライアン
ト−サーバ・コンピュータ環境において情報を交換する
ことに関する。より特定的には、この発明は、サーバ・
コンピュータでの情報要求に応答する改良技術に関す
る。
【0003】
【従来の技術】クライアント−サーバ・コンピュータ・
ネットワークは、よく知られている。クライアント−サ
ーバ・コンピュータ・ネットワークの最も顕著な例は、
コンピュータのワールド・ワイド・ウェブ(World Wide
Web)である。クライアント−サーバ・コンピュータ・ネ
ットワークでは、サーバ・コンピュータは、クライアン
ト・コンピュータから情報に対する要求を受け取る。サ
ーバ・コンピュータで動作しているウェブ・サーバ・ソ
フトウェアは、一般的に、永久記憶デバイスに記憶され
たファイルから要求された情報を検索しかつ情報を要求
したクライアント・コンピュータへネットワーク上でフ
ァイルを伝送する。ウェブ・サーバ・ソフトウェアは、
一般的に、オブジェクト指向型プログラミング言語を用
いて書かれない。それゆえに、それは、新しい機能を供
給すべく容易に拡張されない。今日のソフトウェア市場
の動的特質を考えると、製品の柔軟性及び拡張性の欠如
は、製品の市場性を非常に妨げることが可能である。
【0004】
【発明が解決しようとする課題】現行ウェブ・サーバ・
ソフトウェアは、クライアント・コンピュータからの要
求に応じて動的にファイルを生成することができる。一
般的に、ウェブ・サーバは、要求を受け取り次いでファ
イルを動的に生成するためにコモン・ゲートウェイ・イ
ンターフェイス(Common Gateway Interface(CGI)) 処理
をフォークする(分岐する)。一度ファイルが生成され
たならば、ウェブ・サーバ・ソフトウェアは、ファイル
をクライアント・コンピュータへ戻すように伝送する。
残念ながら、動的情報が生成されることが必要である毎
に処理をフォークすることは、計算的に高価である。上
記の観点から、クライアント・コンピュータ要求に応じ
て情報を動的に生成するが、動的情報を生成すると同時
に処理始動(process start-up)費用を招かない、ウェブ
・サーバを供給することが非常に望ましい。更に、柔軟
性及び拡張性であるオブジェクト指向型ウェブ・サーバ
環境を供給することが非常に望ましい。
【0005】本発明の目的は、上記従来技術における問
題点に鑑み、クライアント・コンピュータ要求に応じて
情報を動的に生成し、かつ動的情報を生成すると同時に
処理始動費用を低減できるウェブ・サーバ環境を提供す
ることである。
【0006】
【課題を解決するための手段】本発明の上記目的は、プ
ログラムの制御下でローカル・サーバ・コンピュータに
よって実行され、ローカル・サーバ・コンピュータがプ
ログラムを記憶するためのメモリを含み、ローカル・サ
ーバ・コンピュータがクライアント−サーバ・ネットワ
ークの一部を形成する、方法であって、クライアント−
サーバ・ネットワークのクライアント・コンピュータか
ら要求を受け取り;要求がクライアント−サーバ・ネッ
トワークのサーブレット・オブジェクトから動的に生成
された情報を必要とすることを決定し;要求に対応して
いる特定のサーブレット・オブジェクトをクライアント
−サーバ・ネットワークの遠隔サーバ・コンピュータか
らアップロードし;かつ要求に対応している動的に生成
された情報を取得すべく特定のサーブレット・オブジェ
クトを実行する段階を具備する方法によって達成され
る。
【0007】本発明の方法では、特定のサーブレット・
オブジェクトからローカル・サーバ・コンピュータで動
作しているウェブ・サーバへ動的に生成された情報を渡
す段階を更に具備し、渡す段階は、アプリケーション・
プログラム・インターフェイスで容易にされるようにし
て構成してもよい。本発明の方法では、アプリケーショ
ン・プログラミング・インターフェイスは、次のオペレ
ーション:サーブレット・オブジェクトを初期化するこ
と、サーブレット・オブジェクトを実行すること、及び
サーブレット・オブジェクトを破壊すること、の少なく
とも一つを実行するための技術を特定するように構成し
てもよい。本発明の方法では、特定のサーブレット・オ
ブジェクト及びアプリケーション・プログラム・インタ
ーフェイスは、JAVAプログラミング言語のオブジェ
クト・バイトコードとして特定されるように構成しても
よい。
【0008】本発明の方法では、ウェブ・サーバからク
ライアント・コンピュータへ動的に生成された情報を送
る段階を更に具備するように構成してもよい。本発明の
方法では、実行する段階は、ローカル・サーバ・コンピ
ュータのセキュリティ・エリアの特定のサーブレットを
実行し;かつセキュリティ・エリアからローカル・サー
バ・コンピュータのノン−セキュリティ・エリアへ動的
に生成された情報を渡す段階を含むように構成してもよ
い。本発明の方法では、ローカル・サーバ・コンピュー
タは、それぞれがクライアント・コンピュータからの特
定された要求に応じて呼び出されるまで連続的に動作す
る、複数のサーブレット・オブジェクトを記憶するよう
に構成してもよい。本発明の方法では、複数のサーブレ
ット・オブジェクトは、互いにデータを渡すように構成
してもよい。
【0009】本発明の方法では、複数のサーブレット・
オブジェクトの選択されたサーブレット・オブジェクト
は、ローカル・サーバ・コンピュータの始動でインスタ
ンス生成されるように構成してもよい。本発明の方法で
は、複数のサーブレット・オブジェクトの選択されたサ
ーブレット・オブジェクトは、クライアント・コンピュ
ータからのデマンドに応じてインスタンス生成されるよ
うに構成してもよい。本発明の方法では、複数のサーブ
レット・オブジェクトの選択されたサーブレット・オブ
ジェクトは、アクティベートされたサーブレットURL
に応じてインスタンス生成されるように構成してもよ
い。本発明の方法では、サーブレットURLは、アーギ
ュメントを含むように構成してもよい。
【0010】本発明の方法では、受け取る手段は、接続
キューに要求を記憶する段階を含むように構成してもよ
い。本発明の方法では、決定する手段は、決定する段階
を実行すべくハンドラ・スレッドのプールからハンドラ
・スレッドを選択する段階を含むように構成してもよ
い。本発明の方法では、新しいハンドラ・スレッドを選
択的に生成しかつ古いハンドラ・スレッドを破壊するこ
とによってハンドラ・スレッドのプールを動作する段階
を更に具備するように構成してもよい。本発明の方法で
は、動作する段階は、新しいハンドラ・スレッドに対し
て古いハンドラ・スレッドのバッファ・メモリ空間を再
使用する段階を含むように構成してもよい。
【0011】また、本発明の上記目的は、特定した方法
で機能すべくクライアント−サーバ・ネットワークのサ
ーバ・コンピュータを指向するために用いることができ
るコンピュータ読み取り可能メモリ装置であって、クラ
イアント−サーバ・ネットワークのクライアント・コン
ピュータから要求を受け取るべき第1の命令のセット;
要求がクライアント−サーバ・ネットワークのサーブレ
ット・オブジェクトから動的に生成された情報を必要と
することを決定すべき第2の命令のセット;要求に対応
している特定のサーブレット・オブジェクトをクライア
ント−サーバ・ネットワークの遠隔サーバ・コンピュー
タからアップロードすべき第3の命令のセット;及び要
求に対応している動的に生成された情報を取得するため
に特定のサーブレット・オブジェクトを実行すべき第4
の命令のセットを備えているコンピュータ読み取り可能
メモリ装置によって達成される。
【0012】本発明の装置では、特定されたサーブレッ
ト・オブジェクトからローカル・サーバ・コンピュータ
上で動作しているウェブ・サーバへ動的に生成された情
報を、アプリケーション・プログラム・インターフェイ
スを通して、渡すべき第5の命令のセットを更に備えて
もよい。本発明の装置では、ウェブ・サーバからクライ
アント・コンピュータへ動的に生成された情報を渡すべ
き第6の命令のセットを更に備えてもよい。本発明の装
置では、サーバ・コンピュータの複数のサーブレット・
オブジェクトを記憶すべき第7の命令のセットを更に備
え、サーブレット・オブジェクトのそれぞれは、クライ
アント・コンピュータからの特定の要求に応じて呼び出
されるまで連続的に動作するように構成してもよい。
【0013】本発明の装置では、第7の命令のセット
は、複数のサーブレット・オブジェクト間でデータを渡
すべき命令を含むように構成してもよい。更に、本発明
の上記目的は、特定した方法で機能すべくクライアント
−サーバ・ネットワークのサーバ・コンピュータを指向
するために用いることができるコンピュータ読み取り可
能メモリ装置であって、クライアント−サーバ・ネット
ワークのクライアント・コンピュータから要求を受け取
るべき第1の命令のセット;要求がサーバ・コンピュー
タののサーブレット・オブジェクトから動的に生成され
た情報を必要とすることを決定すべき第2の命令のセッ
ト;要求に対応している動的に生成された情報を取得す
るために特定のサーブレット・オブジェクトを実行すべ
き第3の命令のセット;及びクライアント・コンピュー
タへ動的に生成された情報を渡すべき第4の命令のセッ
トを備えているコンピュータ読み取り可能メモリ装置に
よって達成される。
【0014】本発明の装置では、第2の命令のセット
は、要求に対応しているサーブレットURLを解釈すべ
き命令を含むように構成してもよい。本発明の装置で
は、第2の命令のセットは、アーギュメントを有するサ
ーブレットURLを解釈すべき命令を含むように構成し
てもよい。本発明の装置では、それぞれがクライアント
・コンピュータからの特定の要求に応じて呼び出される
まで連続的の動作する、サーバ・コンピュータの複数の
サーブレット・オブジェクトを記憶すべき第5の命令の
セットを更に備えてもよい。
【0015】本発明の装置では、第5の命令のセット
は、複数のサーブレット・オブジェクト間でデータを渡
すべき命令を含むように構成してもよい。また、本発明
の上記目的は、要求を生成すべきクライアント・コンピ
ュータ;及び要求がサーバ・コンピュータのサーブレッ
ト・オブジェクトから動的に生成された情報を必要とす
ることを決定し、要求に対応している動的に生成された
情報を取得するために特定のサーブレット・オブジェク
トを実行し、かつクライアント・コンピュータへ動的に
生成された情報を渡すべきサーバ・コンピュータを備え
ているクライアント−サーバ・コンピュータ・ネットワ
ークによって達成される。
【0016】本発明の装置では、サーバ・コンピュータ
へ渡すことができる一組のサーブレット・オブジェクト
を記憶する遠隔サーバ・コンピュータを更に備えてもよ
い。本発明の装置では、サーバ・コンピュータは、複数
のサーブレット・オブジェクトを記憶し、サーブレット
・オブジェクトのそれぞれは、クライアント・コンピュ
ータからの特定の要求に応じて呼び出されるまで連続的
に動作するように構成してもよい。本発明の装置では、
複数のサーブレット・オブジェクトは、それら自体の間
でデータを渡すように構成してもよい。
【0017】
【作用】本発明は、クライアント−サーバ・ネットワー
クのローカル・サーバ・コンピュータを動作する方法及
び装置を含む。本発明は、クライアント−サーバ・ネッ
トワークのクライアント・コンピュータから要求を受け
取るための技術を含む。決定は、要求がクライアント−
サーバ・ネットワークのサーブレット・オブジェクトか
ら動的に生成された情報を必要とするかどうかについて
行われる。そうであれば、要求に対応している特定され
たサーブレット・オブジェクトは、クライアント−サー
バ・ネットワークの遠隔サーバ・コンピュータからアッ
プロードされうる。特定されたサーブレット・オブジェ
クトは、次いで、要求に対応している動的に生成された
情報を得るために実行される。
【0018】本発明のサーブレット・オブジェクトは、
柔軟性及び拡張性であるオブジェクト指向型ウェブ・サ
ーバ環境を供給する。本発明のクライアント−サーバ・
ネットワークは、サーブレット・オブジェクトでポピュ
レート(populate)される。サーブレット・オブジェクト
は、呼出されるまで連続ループで動作する。それゆえ
に、サーブレット・オブジェクトの実行に関連付けられ
た始動オーバーヘッドが存在しない。共通アプリケーシ
ョン・プログラム・インターフェイスを観測することに
よって、サーブレット・オブジェクトは、あらゆるサー
バ環境で走ることができる。本発明の特徴は、トラスト
されていない(untrusted) サーブレット・オブジェクト
をセキュア・エリア(secure area) で実行させて、動的
に生成された情報がセキュア・エリアから残りのサーバ
環境に渡される。
【0019】本発明の特質及び目的のより良い理解につ
いて、添付した図面と共に次の詳細の説明が参照される
べきである。
【0020】
【実施例】図1は、本発明により動作されうるクライア
ント−サーバ・コンピュータ・ネットワーク20を示
す。ネットワーク20は、少なくとも一つのクライアン
ト・コンピュータ22及び少なくとも一つのサーバ・コ
ンピュータ24を含む。クライアント・コンピュータ2
2及びサーバ・コンピュータ24は、有線または無線伝
送チャネルでありうる、伝送チャネル26によって接続
される。クライアント・コンピュータ22は、メモリ
(一次及び/又は二次)32に接続された中央処理装置
(CPU)30を含む標準コンピュータである。メモリ
32は、“ブラウザ”34を含む、多数のコンピュータ
・プログラムを記憶する。この分野で知られるように、
ブラウザは、遠隔サーバ・コンピュータ24と通信しか
つそのようなコンピュータから受け取った情報を可視的
に表すために用いられる。クライアント・コンピュータ
22は、標準ネットワーク接続デバイス36を通してネ
ットワーク通信を確立する。
【0021】サーバ・コンピュータ24は、ネットワー
ク接続デバイス40、CPU42、及びメモリ(一次及
び/又は二次)44を含んでいる、標準サーバ・コンピ
ュータ・コンポーネントを含む。メモリ44は、本発明
に関連付けられた処理を実現(実行)すべく一組のコン
ピュータ・プログラムを記憶する。メモリ44は、ウェ
ブ・サーバ46を記憶する。ウェブ・サーバ46は、図
1に示した更なるプログラムを含むべく変更される、こ
の分野で知られた型のものでありうる。即ち、本発明の
実施例では、標準ウェブ・サーバ46は、サーバ・アク
セプタ・スレッド48、接続キュー50、プール・アド
ミニストレータ52、スレッド・プール54、サーブレ
ット56、サーブレット・マップ58、セキュリティ・
アドミニストレータ60、及び境界サーブレット62を
含むべく変更される。
【0022】図2は、本発明の実施例に従って構築され
たサーバ・コンピュータ24Aの略図である。図は、一
組のサーブレット56A〜56Nと対話しているウェブ
・サーバ46を示す。特に、ウェブ・サーバ46は、ア
プリケーション・プログラム・インターフェイス(AP
I)を通してサーブレットと対話する。図1に示すよう
に、ウェブ・サーバ46及びサーブレット57は、メモ
リ44に記憶される。ウェブ・サーバ46は、ここに説
明した機能性を含むべく変更される標準ウェブ・サーバ
・ソフトウェアでありうる。各サーブレット56は、情
報を動的に生成するために用いられる一片のソフトウェ
ア・コードである。各サーブレット56は、呼び出され
るべく待機しているインスタンス生成されたソフトウェ
ア・オブジェクトである。一度それが呼び出されると、
それは、情報を動的に生成する。情報を動的に生成する
この技術は、永久記憶デバイスから静的情報をフェッチ
する一般処理とは異なるということに気付く。本発明の
技術は、それが情報を動的に生成するという意味でCG
Iスクリプトに類似する。しかしながら、CGIスクリ
プトとは異なり、本発明のサーブレット・オブジェクト
は、サーバ始動でインスタンス生成される。それゆえ
に、サーブレットは、実行されるべく待っている連続ル
ープで動作しているものと考えることができる。インス
タンス生成後にサーブレットが呼び出されるときに計算
開始費用がないということに気付く。
【0023】図3は、本発明の更なる特徴を示している
一般的な図である。図3は、伝送チャネル26にわたり
クライアント・コンピュータ(図示省略)から要求を受
け取るローカル・サーバ・コンピュータ24Aを示す。
ウェブ・サーバ46は、サーブレット・オブジェクトか
らの動的に生成された情報が要求されるということを決
定する。この場合には、サーブレット・オブジェクト
は、初めはローカル・サーバ・コンピュータ24Aには
なく、それゆえに、それは、通信リンク26を用いて遠
隔サーバ・コンピュータ24Bからローカル・サーバ・
コンピュータ24Aによってアップロードされる。図3
の例では、サーブレット56Pは、遠隔サーバ・コンピ
ュータ24Bからローカル・サーバ・コンピュータ24
Aへ渡される。
【0024】図3は、本発明の別の特徴を示す。特に、
それは、アプロードされたサーブレット56Pは、ロー
カル・サーバ・コンピュータ24Aのセキュリティ・エ
リア57で実行されるということを示す。実行後、結果
は、ローカル・サーバ・コンピュータ24Aの残りの部
分の境界サーブレット60に渡される。このセキュリテ
ィ特徴は、トラストされていないサーブレットを安全に
実行させる。上記説明は、本発明の特徴及び利益の一般
的な記述を供給する。注目は、ここでこれらの特徴及び
利益のより詳細な説明に向けられる。図4の左側は、本
発明の実施例に関連付けられた処理段階を示す。図4の
右側は、これらのオペレーションを実行するために用い
られうるプログラム・コンポーネントを示す。図4に示
す第1の処理段階は、新しい要求が受け取られたかどう
かを決定することである(ステップ70)。上記したよ
うに、要求は、クライアント・コンピュータ22からサ
ーバ・コンピュータ24への情報に対する要求である。
サーバ・コンピュータ24からの情報を要求しているク
ライアント・コンピュータ22のオペレーションは、よ
く知られている。それは、ユニフォーム・リソース・ロ
ケータ(Uniform Resource Locator)またはURLを用い
て一般的に実行される。URLは、コンピュータ及びフ
ァイルを特定する。一般的なURLは、http://SU/123
である。このURLは、ハイパーテキスト・トランスフ
ァ・プロトコル(Hypertext Transfer Protocol) “HT
TP”を用いて州立大学のコンピュータ“SU”からフ
ァイル“123”を検索するための命令である。
【0025】図4に示すように、サーバ・アクセプタ・
スレッド48は、各新しい要求を処理すべく用いられ
る。本発明は、要求を受け容れると同時に連続的にルー
プするサーバ・アクセプタ・スレッドを有する接続指向
型ウェブ・サーバとして実現されるのが好ましい。一度
要求が受け取られると、それは、接続キューに要求をデ
ィスパッチする(ステップ72)。図1に示すように、
接続キュー50は、ローカル・サーバ・コンピュータ2
4のメモリに形成される。新しい要求が受け取られない
ならば、キューが空であるかどうかを決定すべく検査が
行われる(ステップ71)。キューが空でないかまたは
新しい要求が受け取られたならば、処理は、ステップ7
4へ進行する。ステップ74は、プール・アドミニスト
レータ52によって実行される、スレッド・プール・ア
ドミニストレーション・オペレーションを必然的に伴
う。図1は、スレッド・プール54を示す。スレッド・
プール54は、要求処理に対して用いられるスレッドの
プールである。個々のスレッドは、接続キュー50から
の要求をフェッチしかつ処理する。プール・アドミニス
トレータ52は、接続キュー50の各要求に対してスレ
ッドが存在するということを確実にすべく動作する。プ
ール・アドミニストレータ52は、接続キュー50にお
ける新しい要求を処理すべくさらなるスレッドを生成ま
たはフォークする。最大数のスレッドが到達されたなら
ば、プール・アドミニストレータ52は、接続キュー5
0を入力することから新しい要求をブロックする。その
ような場合には、サーバ・コンピュータは、新しい要求
を受け取らない。他方、スレッドが接続キュー50から
の要求に対して所定の期間以上待っているならば、プー
ル・アドミニストレータ60は、それを破壊する。新し
いハンドラ・スレッドが破壊されたハンドラ・スレッド
のバッファ空間を用いて生成されるのが好ましい。換言
すると、本発明は、スレッドに対する特定バッファ・メ
モリ空間を用いてインプリメントされるのが好ましい。
スレッドが破壊されるとき、バッファ・メモリ空間は、
クリアされるが、それは、新しいスレッドに割り当てら
れる。この方法で割り当てられたメモリを再使用するこ
とにより、本発明のこの実施例は、特に要求毎に基づき
メモリを割当てかつ割当て解除するシステムと比較した
とき、システムによって用いられるメモリの量を最小化
する。
【0026】スレッド・プール・アドミニストレーショ
ン・オペレーションが実行された後(ステップ74)ス
レッドは、接続キューからの要求を検索する(ステップ
76)。次いでスレッドは、サーブレット名に要求をマ
ップする(スクリーン78)。サーブレットは、URL
によって特定されうるし、その場合にはマッピング処理
は、直接である。他方、ある変換(翻訳)処理は、どの
サーブレットが要求をサービスできるかを識別するため
に要求されうる。マッピング・オペレーションは、次の
方法の一つで実行されうる。サーバ・アドミニストレー
タは、ある種類のクライアント要求が特定のサーブレッ
トへ常にマップするということを特定しうる。例えば、
あるものは、特定のデータベースにトーク(talk)する。
サーバ・アドミニストレータは、アドミニスターされた
サーブレット・ディレクトリに見出されるように、クラ
イアント要求の一部がサーブレットの名前であるという
ことを特定しうる。多くのサイトで、そのディレクトリ
は、サイトのクライアントに対する処理のロードを共有
するサーバ間で共有される。あるサーバは、それらのア
ドミニストレーティブ構成に基づき、他のサーブレット
の出力をフィルタすべくサーブレットを自動的に呼出す
ことが可能でありうる。例えば、特定の型のサーブレッ
ト出力は、たぶんフォーマット変換を実行するために、
他のサーブレットにより後方−処理(post-processing)
をトリガしうる。適切に許可されたクライアントは、ア
ドミニストレーティブ介入なしで、呼び出されるべきサ
ーブレットを特定しうる。
【0027】セキュリティ・オペレーションは、また、
スレッドによって実行されうる(ステップ80)。セキ
ュリティ・アドミニストレータ60は、サーブレットの
トラストされた及びトラストされていないクラスを識別
するために用いうる。サーブレットをトラストする決定
は、セキュリティ・アドミニストレータ60に関連付け
られた一組の規則によって確立されうる。例えば、セキ
ュリティ・アドミニストレータ60は、全てのローカル
・サーブレットをトラストしかつ全てのアップロードさ
れたネットワーク・サーブレットをミストラストすべく
決定しうる。トラストされていないサーブレットは、次
いで、図3に示すように、セキュリティ・エリア57で
実行される。セキュリティ・アドミニストレータ60
は、また、サーブレットが所定のリスキー・オペレーシ
ョンを実行すべく許可されるかどうかを決定するために
用いられうる。この型のセキュリティ情報は、スレッド
に記憶されうる。
【0028】本発明によるJAVA(ジャワ)サーブレ
ットは、強力なセキュリティ・ポリシー支持を供給す
る。これは、全てのJAVA環境が、ネットワークまた
はファイル・アクセスのようなアクションが許容される
べきかどうかを制御するために用いることができるセキ
ュリティ・マネージャ(Security Manger) を供給するか
らである。デフォルトにより、全てのサーブレットは、
トラストされず、かつネットワーク・サービスまたはロ
ーカル・ファイルをアクセスすることのようなオペレー
ションを実行することを許されない。しかしながら、サ
ーバに“内蔵された(built into)”サーブレット、また
は、それらがJAVA Archive(アーカイブ)
ファイルに設置されたときにディジタル的に署名された
サーブレットは、セキュリティ・マネージャによってト
ラストされかつより多くの許可を与えられうる。実行可
能コードのディジタル署名は、コードを署名した組織が
ある意味で“それを保証する(vouches for it)”という
ことを示す。そのような署名は、それら自体で責任能力
を支持できないが、それらは、そのコードの使用に設け
られうる確実性の程度を示す。例えば、MIS組織から
の特定の署名は、企業イントラネット内のネットワーク
・サービスへの一般的なアクセスを与えられる全てのコ
ードで要求されうる。その署名は、特定のセキュリティ
・ポリシーに違反していないと強く信じられるコードで
のみ用いられうる。Cまたはスクリプティング言語のよ
うな、他の言語での拡張APIsは、それらがそれらの
コードに対してディジタル署名を許したとしてもそのよ
うなファイン・グレイン(fine grained)アクセス制御を
支持できない。
【0029】セキュリティ・オペレーションが実行され
た後(ステップ80)、スレッドは、ディスパッチされ
る(図5のステップ82)。ディスパッチ・オペレーシ
ョンは、それが要求された動的情報を生成するようにサ
ーブレットを呼出すことを必然的に伴う。ディスパッチ
・オペレーションは、二つの型の一つである。決定は、
サーブレットがローカルであるかどうかを決定すべく行
われる(ステップ84)。サーブレットがローカルであ
れば、ローカル・サーブレットが実行される(ステップ
86)。これは、標準的方法でウェブ・サーバ46によ
って次いで処理される動的情報の生成を結果として生ず
る。ウェブ・サーバ46は、知られた技術を用いてクラ
イアント・コンピュータへ情報を一般に戻して渡す。サ
ーブレットとウェブ・サーバ46の間の情報の交換は、
以下に説明する、アプリケーション・プログラム・イン
ターフェイスを通して達成される。
【0030】サーブレットがローカルでなければ、それ
は、遠隔サーバ24Bからアップロードされる(ステッ
プ88)。決定は、次いで、アプロードされたサーブレ
ットが安全であるかどうかに関して行われる(ステップ
90)。サーブレットに対するセキュリティ・パラメー
タに関する情報を要求するスレッドを結果として生じた
セキュリティ・オペレーション段階を思い出す。アプロ
ードされたサーブレットに関連付けられたセキュリティ
問題が存在しないならば、それは、ローカル的に実行さ
れる(ステップ92)。他方、セキュリティ問題が識別
されたならば、サーブレットは、セキュリティ・エリア
で実行される(ステップ94)。その後、動的に生成さ
れた結果は、ノン・セキュリティ・エリアに渡される
(ステップ96)。境界サーブレットは、この目的に用
いられうる。境界サーブレットは、スタブ(stubs) 及び
サブコントラクト(subcontracts)の使用を通してまたは
この技術分野で知られた他の“ファイア・ウォール(fir
e wall) ”技術を通してインプリメントされうる。サー
ブレットが実行された後、処理は、図4のステップ70
に戻る。
【0031】本発明のオペレーションをここで完全に説
明する。注意は、本発明に従って用いられるサーブレッ
ト・オブジェクトのより特定な説明及びサーブレット・
オブジェクトに関連して用いられたアプリケーション・
プログラム・インターフェイスの実施例にここで向けら
れる。上記したように、サーブレット・オブジェクト
は、情報を動的に生成するために用いられるソフトウェ
ア・オブジェクトである。それらは、呼び出されること
を待っているループに置かれるインスタンス生成された
オブジェクトである。それらは、JAVATMプログラミ
ング言語のオブジェクト・バイトコードとしてインプリ
メントされるのが好ましい。クライアント・コンピュー
タで“アプレット(applets) ”をインプリメントすべく
JAVATMプログラミング言語が用いられるということ
は、よく知られている。“アプレット”は、クライアン
ト・コンピュータで図的ディスプレイを生成すべく用い
られる実行可能なJAVAオブジェクト・バイトコード
である。本発明のサーブレットは、サーバ側で実行され
かつ図的コンテントを有さない。
【0032】サーブレットは、一般的にサーバ始動でイ
ンスタンス生成される。代替では、サーブレットは、所
定の組の条件下でまたはクライアント呼出しによってイ
ンスタンス生成されうる。サーブレットは、そのURL
(例えば、http://host/<servlet URL> )を用いてイン
スタンス生成されかつ実行されうる。httpプロトコル
は、アーギュメントのパッシングを支持し、それゆえ
に、アーギュメントは、サーブレットに渡されうる(例
えば、http://host/<servlet URL>?<arguments> )。特
性オブジェクトは、一組の“name:value”ペアを含むJ
AVAプログラミング言語特性クラスである。システム
・アドミニストレータは、特性オブジェクトを通してイ
ンスタンス生成されたHttpServlet オブジェクトにアー
ギュメントを渡すことができる。この方法で、システム
・アドミニストレータは、特定サイトの特定サーバに対
してHttpServlet を“カスタマイズ(customize) ”する
ことができる。例えば、システム・アドミニストレータ
は、ネットワークにわたるクライアント処理によって要
求されるであろう文書を記憶するデータベースのネット
ワーク位置についてのHttpServlet オブジェクトサイト
特定情報またはサーバ・アドミニストレータを処理する
ために用いられるシステム・バッファにおいて利用可能
なメモリの量を渡すことができる。
【0033】一度インスタンス生成されたならば、サー
ブレットは、サーバが遮断されるかまたは破壊方法がサ
ーバによってサーブレット上に呼び出されるまで、ルー
プする。サーブレットは、それが、それにより作動すべ
き要求を待つときに連続ループで動作するので、サーバ
・コンピュータは、サーブレットへの要求間でサーブレ
ットを生成しかつ破壊することのオーバーヘッドを避け
る。更に、要求間でサーブレットを生かし続けること
は、サーブレットにデータを渡させかつそれら自身の間
で通信させる。例えば、サーブレットは、ユーザにより
セッション間のユーザについてデータを維持することが
できる。このデータは、ユーザが作動する作動環境をカ
スタマイズするために異なるサーブレット間で共有する
ことができる。サーブレットが要求毎に基づき生成され
かつ破壊されるならば、サーブレットが改良された処理
能力(processing capabilities) を供給すべくそれがそ
の中を走る環境を理解しかつこの知識を利用すること
は、実際に不可能でないまでも、非常に難しい。サーバ
・コンピュータは、時間、メモリ、等による資源制限に
到達したときにサーブレット上に破壊方法を呼び出すこ
とができる。
【0034】アプレット・アプリケーション・プログラ
ミング・インターフェイス(API)は、ウェブ・サー
バのような、情報サーバにサーブレットをインターフェ
イスするための標準を確立する。サーブレットAPI
は、サーブレットを初期化し、要求を処理し、サーブレ
ット情報を取得し、かつサーブレットを破壊するメソッ
ド(方法)を含む。サーブレットAPIは、プラットフ
ォーム独立サーブレットを許容する。サーブレット・イ
ンターフェイスの例は、次に示す:
【0035】
【表1】 サーバ・コンピュータは、“HttpRequest ”をインプリ
メントするオブジェクトを渡し、サーブレットは、“Ht
tpRequest ”オブジェクトをリターンする。“ServletC
ontext”インターフェイスは、サーバ環境と情報を交換
するために用いられる。“ServletContext”オブジェク
ト上のメソッドのあるものは、“Getserver() ”及び
“Getservlets() ”である。“Getserver() ”は、イン
スタンス生成されたHttpservlet がその中で走る親サー
バへポインタをリターンする。このポインタを用いて、
Httpservlet オブジェクトは、その親サーバについての
情報を見出すことができる。“Getservlet”メソッド
は、親サーバ上で走っているサーブレットへポインタを
リターンする。“ServerProperties”インターフェイス
は、サーバ・アドミニストレータによって確立された特
定のサーバ特性に関する情報を交換するために用いられ
る。
【0036】サーブレットは、要求を受け容れかつ応答
を生成する普通のプログラミング・モデルを支持する。
次に示すのは、“service (サービス)”と呼ばれる単
一メソッドを定義している簡単なサーブレットである:
【0037】
【表2】 サービス・メソッドは、リクエスト及びリスポンス(Req
uest and Response)パラメータが設けられている。これ
らのパラメータは、クライアントによって送られたデー
タを封じ込め、それによりサーブレットに、エラー(誤
り)のような、状態情報を報告させる。サーブレット
は、入力ストリームを通してそれらのパラメータのほと
んどを通常検索し、かつ出力ストリームを用いてそれら
の応答を送る:
【0038】
【表3】 これらの入力及び出力ストリームは、適切なフォーマッ
トのデータで用いられうる。例えば、アプレット及びサ
ーブレットは、オブジェクト直列化、HTML、または
あらゆる数のイメージ・フォーマットを用いてデータを
交換しうる。サーブレットは、JAVAオブジェクトな
ので、それらは、インスタンス−特定データを有する。
これは、結果としてサーブレットが、(ある代替サーバ
拡張APIsによって要求される)更なるクラスの複雑
性を必要としないで、サーバ内で走っている独立アプリ
ケーションであるということを意味する。サーブレット
は、初期化時にあるサーブレット−特定構成データへの
アクセスを有する。これは、異なるデータで初期化さ
れ、かつ異なるように命名されたサーブレットとして管
理されるべき同じサーブレット・クラスの異なるインス
タンスを許容する。初期化時に供給されたデータは、各
インスタンスがその持続性インスタンス−特定状態を保
持するエリアを含む。
【0039】先の簡単なサーブレット例を増強して、次
のプログラム・コードは、それが呼び出されたときにハ
イパーテキスト・マークアップ・ラングウェジ((Hyper
textMarkup Language) (HTML))テクストを送る
ために用いるサーブレットの例である:
【0040】
【表4】 次に示すプログラム・コードは、特定されたホスト・コ
ンピュータのユーザについての情報を照会すべくフィン
ガ・プロトコルを用いるサーブレットの例である。照会
ストリング・パラメータ<tt>user</tt> 、<tt>hosts</t
t>、及び<tt>verbose</tt>は、照会すべくユーザ及びホ
ストを特定するために用いることができる。パラメータ
<tt>user</tt> は、ユーザ名であり、<tt>hosts</tt>
は、照会すべきホスト名のコンマ−分離リストであり、
かつ<tt>verbose</tt>は、特定されたならば、ヴァボー
ズ(verbose) 出力を生成させる。例えば、<pre>http:/g
oa/finger.html?user=dac&hosts=eno,doppio&verbose=y
es</pre>は、両方のホスト“eno ”及び“doppio”上の
ユーザ“dac ”についての完全情報を要求する。
【0041】
【表5】
【0042】
【表6】
【0043】
【表7】
【0044】
【表8】
【0045】当業者は、HTTPプロトコルで用いられ
ているサーブレットが、GET、POST、HEAD、
及びそれ以上を含んでいる、あらゆるHTTPメソッド
を支持しうるということを理解するであろう。それら
は、他の位置へ要求を再指向し、かつHTTP−特定エ
ラー・メッセージを送りうる。それらは、実行されるべ
きHTTPメソッド及び、要求の宛先を識別する、UR
Iを含んでいる、標準HTMLフォームを通して渡され
たパラメータへのアクセスを取得する。上記したよう
に、サーブレットの最も大きな性能特徴の一つは、それ
らが各要求に対する新しい処理の生成を必要としないこ
とである。ほとんどの環境では、多くのサーブレット
は、サーバとして同じ処理内で並列に走る。HTTPを
有するような環境で用いられたとき、サーブレットは、
CGIアプローチ及び高速CGI(Fast-CGI)アプローチ
の両方と比較してコンペリング(compelling)性能利点を
供給する。これは、サーブレットがスレッド・コンテキ
スト切替え中に少ない計算費用を有するからである。ほ
とんどの環境でサーブレットは、それらが初期化される
度毎に多くのクライアント要求を処理することができる
ので、初期化の費用は、多くのメソッドに分配される。
そのサービスへの全てのクライアント要求は、データ及
び通信資源を共有するための機会を有し、システム・キ
ャッシュからより強力に利益を得る。
【0046】当業者は、本発明のサーブレットがJav
a−イネーブル(enabled) ・サーバを動的に拡張するた
めに用いることができるということを理解するであろ
う。サーブレットは、要求−応答例(request-response
paradigm) を用いて構築されたサービスに対する一般的
フレームワークを供給する。サーブレットは、HTML
ウェブ・ページを用いて与えられるデータへのセキュア
・ウェブ−ベースド・アクセスを供給することができか
つそれらは、動的ウェブ・ページ生成技術を用いてその
データを変更するかまたは対話的にビューするために用
いることができる。本発明のサーブレットは、カスタマ
ー・ベースに対するカスタマイズされたマルチ−ユーザ
・サービスを供給するために用いることができる。サー
ブレットは、また、HTTP(またはHTTPS)プロ
トコルを通して静的ウェブ・ページをサーブ(提供)
し、かつサービスをプロキシーする(proxying)ような、
標準化されたサービスを支持するために十分に柔軟であ
る。それらは、動的拡張性に対して用いられるので、そ
れらは、プラグ−イン・スタイルで用いられ、サーチ・
エンジンのようなファシリティ、及びウェブ−ベースド
・オーダー・エントリまたはインべントリ・システムの
ような、セミ−カスタム・アプリケーションを支持しう
る。
【0047】サーブレットは、JAVAで書かれるのが
好ましいけれども、サーブレット・クライアントは、あ
らゆる言語で書かれうる。サーブレットが分散型アプリ
ケーション・システムの中段(middle tiers)で用いられ
るとき、それらは、あらゆる言語で書かれた、他のサー
ビスへのクライアントでありうる。当業者は、サーブレ
ットが複数のモードで用いられうるということを理解す
るであろう。基本モードは、要求/応答(request/respo
nse)プロトコルのコア(核・中心)にある。更に、サー
ブレットは、HTTPのようなプロトコルを支持すべく
特殊化(専門化)されうる。HTTPベースド・アプリ
ケーションでは、サーブレットは、小型、完全であり、
かつCGIベースド拡張に対するより効率的な置換であ
る。また、HTTPアプリケーションでは、サーブレッ
トは、ウェブ文書の一部を動的に生成することを含むH
TMLサーバ側で用いられうる。
【0048】上記は、説明の目的で、本発明の完全な理
解を供給すべく特定の名称集(nomenclature)を用いた。
しかしながら、本発明を実施するために特定の詳細が必
要ないということは、当業者に明らかであろう。他の場
合には、よく知られた回路及び機器は、根底をなしてい
る発明からの不要な脱線を避けるためにブロック図形で
示される。それゆえに、本発明の特定の実施例の先の説
明は、説明及び記述の目的で示される。それらは、網羅
的であることまたは開示された正確なフォームに本発明
を制限することを意図しておらず、明らかに多くの変更
及び変形が上記教示の観点から可能である。実施例は、
本発明の原理及びその実用的応用を最も良く説明し、そ
れにより当業者が企図した特定の使用に適するように本
発明及び種々の変更を有する種々の実施例を最も良く利
用することができるために、選択されかつ記述される。
本発明の範疇は、特許請求の範囲及びそれらの同等物に
よって定義されるということを意図する。
【0049】
【発明の効果】本発明の方法は、プログラムの制御下で
ローカル・サーバ・コンピュータによって実行され、ロ
ーカル・サーバ・コンピュータがプログラムを記憶する
ためのメモリを含み、ローカル・サーバ・コンピュータ
がクライアント−サーバ・ネットワークの一部を形成す
る、方法であって、クライアント−サーバ・ネットワー
クのクライアント・コンピュータから要求を受け取り;
要求がクライアント−サーバ・ネットワークのサーブレ
ット・オブジェクトから動的に生成された情報を必要と
することを決定し;要求に対応している特定のサーブレ
ット・オブジェクトをクライアント−サーバ・ネットワ
ークの遠隔サーバ・コンピュータからアップロードし;
かつ要求に対応している動的に生成された情報を取得す
べく特定のサーブレット・オブジェクトを実行する段階
を具備するので、トラストされていないサーブレット・
オブジェクトをセキュア・エリアで実行させて、動的に
生成された情報がセキュア・エリアから残りのサーバ環
境に渡されるので、クライアント・コンピュータ要求に
応じて情報を動的に生成し、かつ動的情報を生成すると
同時に処理始動費用を低減できる。
【0050】本発明のコンピュータ読み取り可能メモリ
装置は、特定した方法で機能すべくクライアント−サー
バ・ネットワークのサーバ・コンピュータを指向するた
めに用いることができるコンピュータ読み取り可能メモ
リ装置であって、クライアント−サーバ・ネットワーク
のクライアント・コンピュータから要求を受け取るべき
第1の命令のセット;要求がクライアント−サーバ・ネ
ットワークのサーブレット・オブジェクトから動的に生
成された情報を必要とすることを決定すべき第2の命令
のセット;要求に対応している特定のサーブレット・オ
ブジェクトをクライアント−サーバ・ネットワークの遠
隔サーバ・コンピュータからアップロードすべき第3の
命令のセット;及び要求に対応している動的に生成され
た情報を取得するために特定のサーブレット・オブジェ
クトを実行すべき第4の命令のセットを備えているの
で、クライアント・コンピュータ要求に応じて情報を動
的に生成し、かつ動的情報を生成すると同時に処理始動
費用を低減できる。
【0051】本発明のコンピュータ読み取り可能メモリ
装置は、特定した方法で機能すべくクライアント−サー
バ・ネットワークのサーバ・コンピュータを指向するた
めに用いることができるコンピュータ読み取り可能メモ
リ装置であって、クライアント−サーバ・ネットワーク
のクライアント・コンピュータから要求を受け取るべき
第1の命令のセット;要求がサーバ・コンピュータのの
サーブレット・オブジェクトから動的に生成された情報
を必要とすることを決定すべき第2の命令のセット;要
求に対応している動的に生成された情報を取得するため
に特定のサーブレット・オブジェクトを実行すべき第3
の命令のセット;及びクライアント・コンピュータへ動
的に生成された情報を渡すべき第4の命令のセットを備
えているので、クライアント・コンピュータ要求に応じ
て情報を動的に生成し、かつ動的情報を生成すると同時
に処理始動費用を低減できる。
【0052】本発明のクライアント−サーバ・コンピュ
ータ・ネットワークは、要求を生成すべきクライアント
・コンピュータ;及び要求がサーバ・コンピュータのサ
ーブレット・オブジェクトから動的に生成された情報を
必要とすることを決定し、要求に対応している動的に生
成された情報を取得するために特定のサーブレット・オ
ブジェクトを実行し、かつクライアント・コンピュータ
へ動的に生成された情報を渡すべきサーバ・コンピュー
タを備えているので、トラストされていないサーブレッ
ト・オブジェクトをセキュア・エリアで実行させて、動
的に生成された情報がセキュア・エリアから残りのサー
バ環境に渡されるので、クライアント・コンピュータ要
求に応じて情報を動的に生成し、かつ動的情報を生成す
ると同時に処理始動費用を低減できる。
【図面の簡単な説明】
同じ参照番号は、複数の図面を通して対応する部分を参
照する。
【図1】本発明の実施例によるクライアント−サーバ・
コンピュータ・ネットワークを示す図である。
【図2】ウェブ・サーバと本発明のサーブレットの間の
対話の略図である。
【図3】ウェブ・サーバと外部サーバからロードされた
サーブレットの間の対話の略図である。
【図4】本発明の実施例によるサーブレット処理ルーチ
ンに関連付けられた処理段階を示す図である。
【図5】本発明の実施例によるサーブレット処理ルーチ
ンに関連付けられた処理段階を示す図である。
【符号の説明】
20 クライアント−サーバ・コンピュータ・ネットワ
ーク 22A クライアント・コンピュータ 24A サーバ・コンピュータ 26 伝送チャネル 30、42 中央処理装置(CPU) 32、44 メモリ(一次及び/又は二次) 34 ブラウザ 36、40 標準ネットワーク接続デバイス 46 ウェブ・サーバ 48 サーバ・アクセプタ・スレッド 50 接続キュー 52 プール・アドミニストレータ 54 スレッド・プール 56 サーブレット 58 サーブレット・マップ 60 セキュリティ・アドミニストレータ 62 境界サーブレット
フロントページの続き (72)発明者 パヴァーニ ディワンジ アメリカ合衆国 カリフォルニア州 95126 サン ホセ ローズクラフト テ ラス 1436 (72)発明者 ディヴィッド ダブリュー コネリー アメリカ合衆国 カリフォルニア州 94022 ロス アルトス デル モンテ アベニュー 229

Claims (30)

    【特許請求の範囲】
  1. 【請求項1】 プログラムの制御下でローカル・サーバ
    ・コンピュータによって実行され、該ローカル・サーバ
    ・コンピュータが該プログラムを記憶するためのメモリ
    を含み、該ローカル・サーバ・コンピュータが該クライ
    アント−サーバ・ネットワークの一部を形成する、方法
    であって、 前記クライアント−サーバ・ネットワークのクライアン
    ト・コンピュータから要求を受け取り;前記要求が前記
    クライアント−サーバ・ネットワークのサーブレット・
    オブジェクトから動的に生成された情報を必要とするこ
    とを決定し;前記要求に対応している特定のサーブレッ
    ト・オブジェクトを前記クライアント−サーバ・ネット
    ワークの遠隔サーバ・コンピュータからアップロード
    し;かつ前記要求に対応している動的に生成された情報
    を取得すべく前記特定のサーブレット・オブジェクトを
    実行する段階を具備することを特徴とする方法。
  2. 【請求項2】 前記特定のサーブレット・オブジェクト
    から前記ローカル・サーバ・コンピュータで動作してい
    るウェブ・サーバへ動的に生成された情報を渡す段階を
    更に具備し、前記渡す段階は、アプリケーション・プロ
    グラム・インターフェイスで容易にされることを特徴と
    する請求項1に記載の方法。
  3. 【請求項3】 前記アプリケーション・プログラミング
    ・インターフェイスは、次のオペレーション:サーブレ
    ット・オブジェクトを初期化すること、サーブレット・
    オブジェクトを実行すること、及びサーブレット・オブ
    ジェクトを破壊すること、の少なくとも一つを実行する
    ための技術を特定することを特徴とする請求項2に記載
    の方法。
  4. 【請求項4】 前記特定のサーブレット・オブジェクト
    及び前記アプリケーション・プログラム・インターフェ
    イスは、JAVAプログラミング言語のオブジェクト・
    バイトコードとして特定されることを特徴とする請求項
    2に記載の方法。
  5. 【請求項5】 前記ウェブ・サーバから前記クライアン
    ト・コンピュータへ前記動的に生成された情報を送る段
    階を更に具備することを特徴とする方法。
  6. 【請求項6】 前記実行する段階は、 前記ローカル・サーバ・コンピュータのセキュリティ・
    エリアの前記特定のサーブレットを実行し;かつ前記セ
    キュリティ・エリアから前記ローカル・サーバ・コンピ
    ュータのノン−セキュリティ・エリアへ前記動的に生成
    された情報を渡す段階を含むことを特徴とする請求項1
    に記載の方法。
  7. 【請求項7】 前記ローカル・サーバ・コンピュータ
    は、それぞれがクライアント・コンピュータからの特定
    された要求に応じて呼び出されるまで連続的に動作す
    る、複数のサーブレット・オブジェクトを記憶すること
    を特徴とする請求項1に記載の方法。
  8. 【請求項8】 前記複数のサーブレット・オブジェクト
    は、互いにデータを渡すことを特徴とする請求項7に記
    載の方法。
  9. 【請求項9】 前記複数のサーブレット・オブジェクト
    の前記選択されたサーブレット・オブジェクトは、前記
    ローカル・サーバ・コンピュータの始動でインスタンス
    生成されることを特徴とする請求項7に記載の方法。
  10. 【請求項10】 前記複数のサーブレット・オブジェク
    トの前記選択されたサーブレット・オブジェクトは、前
    記クライアント・コンピュータからのデマンドに応じて
    インスタンス生成されることを特徴とする請求項7に記
    載の方法。
  11. 【請求項11】 前記複数のサーブレット・オブジェク
    トの前記選択されたサーブレット・オブジェクトは、ア
    クティベートされたサーブレットURLに応じてインス
    タンス生成されることを特徴とする請求項7に記載の方
    法。
  12. 【請求項12】 前記サーブレットURLは、アーギュ
    メントを含むことを特徴とする請求項11に記載の方
    法。
  13. 【請求項13】 前記受け取る手段は、接続キューに前
    記要求を記憶する段階を含むことを特徴とする請求項1
    に記載の方法。
  14. 【請求項14】 前記決定する手段は、前記決定する段
    階を実行すべくハンドラ・スレッドのプールからハンド
    ラ・スレッドを選択する段階を含むことを特徴とする請
    求項13に記載の方法。
  15. 【請求項15】 新しいハンドラ・スレッドを選択的に
    生成しかつ古いハンドラ・スレッドを破壊することによ
    ってハンドラ・スレッドの前記プールを動作する段階を
    更に具備することを特徴とする請求項14に記載の方
    法。
  16. 【請求項16】 前記動作する段階は、前記新しいハン
    ドラ・スレッドに対して前記古いハンドラ・スレッドの
    バッファ・メモリ空間を再使用する段階を含むことを特
    徴とする請求項15に記載の方法。
  17. 【請求項17】 特定した方法で機能すべくクライアン
    ト−サーバ・ネットワークのサーバ・コンピュータを指
    向するために用いることができるコンピュータ読み取り
    可能メモリ装置であって、 前記クライアント−サーバ・ネットワークのクライアン
    ト・コンピュータから要求を受け取るべき第1の命令の
    セット;前記要求が前記クライアント−サーバ・ネット
    ワークのサーブレット・オブジェクトから動的に生成さ
    れた情報を必要とすることを決定すべき第2の命令のセ
    ット;前記要求に対応している特定のサーブレット・オ
    ブジェクトを前記クライアント−サーバ・ネットワーク
    の遠隔サーバ・コンピュータからアップロードすべき第
    3の命令のセット;及び前記要求に対応している動的に
    生成された情報を取得するために前記特定のサーブレッ
    ト・オブジェクトを実行すべき第4の命令のセットを備
    えていることを特徴とするコンピュータ読み取り可能メ
    モリ装置。
  18. 【請求項18】 前記特定されたサーブレット・オブジ
    ェクトから前記ローカル・サーバ・コンピュータ上で動
    作しているウェブ・サーバへ動的に生成された情報を、
    アプリケーション・プログラム・インターフェイスを通
    して、渡すべき第5の命令のセットを更に備えているこ
    とを特徴とする請求項17に記載の装置。
  19. 【請求項19】 前記ウェブ・サーバから前記クライア
    ント・コンピュータへ前記動的に生成された情報を渡す
    べき第6の命令のセットを更に備えていることを特徴と
    する請求項18に記載の装置。
  20. 【請求項20】 前記サーバ・コンピュータの複数のサ
    ーブレット・オブジェクトを記憶すべき第7の命令のセ
    ットを更に備え、前記サーブレット・オブジェクトのそ
    れぞれは、クライアント・コンピュータからの特定の要
    求に応じて呼び出されるまで連続的に動作することを特
    徴とする請求項17に記載の装置。
  21. 【請求項21】 前記第7の命令のセットは、前記複数
    のサーブレット・オブジェクト間でデータを渡すべき命
    令を含むことを特徴とする請求項20に記載の装置。
  22. 【請求項22】 特定した方法で機能すべくクライアン
    ト−サーバ・ネットワークのサーバ・コンピュータを指
    向するために用いることができるコンピュータ読み取り
    可能メモリ装置であって、 前記クライアント−サーバ・ネットワークのクライアン
    ト・コンピュータから要求を受け取るべき第1の命令の
    セット;前記要求が前記サーバ・コンピュータののサー
    ブレット・オブジェクトから動的に生成された情報を必
    要とすることを決定すべき第2の命令のセット;前記要
    求に対応している動的に生成された情報を取得するため
    に前記特定のサーブレット・オブジェクトを実行すべき
    第3の命令のセット;及び前記クライアント・コンピュ
    ータへ前記動的に生成された情報を渡すべき第4の命令
    のセットを備えていることを特徴とするコンピュータ読
    み取り可能メモリ装置。
  23. 【請求項23】 前記第2の命令のセットは、前記要求
    に対応しているサーブレットURLを解釈すべき命令を
    含むことを特徴とする請求項22に記載の装置。
  24. 【請求項24】 前記第2の命令のセットは、アーギュ
    メントを有するサーブレットURLを解釈すべき命令を
    含むことを特徴とする請求項22に記載の装置。
  25. 【請求項25】 それぞれがクライアント・コンピュー
    タからの特定の要求に応じて呼び出されるまで連続的の
    動作する、前記サーバ・コンピュータの複数のサーブレ
    ット・オブジェクトを記憶すべき第5の命令のセットを
    更に備えていることを特徴とする請求項22に記載の装
    置。
  26. 【請求項26】 前記第5の命令のセットは、前記複数
    のサーブレット・オブジェクト間でデータを渡すべき命
    令を含むことを特徴とする請求項20に記載の装置。
  27. 【請求項27】 要求を生成すべきクライアント・コン
    ピュータ;及び前記要求が前記サーバ・コンピュータの
    サーブレット・オブジェクトから動的に生成された情報
    を必要とすることを決定し、前記要求に対応している動
    的に生成された情報を取得するために前記特定のサーブ
    レット・オブジェクトを実行し、かつ前記クライアント
    ・コンピュータへ前記動的に生成された情報を渡すべき
    サーバ・コンピュータを備えていることを特徴とするク
    ライアント−サーバ・コンピュータ・ネットワーク。
  28. 【請求項28】 前記サーバ・コンピュータへ渡すこと
    ができる一組のサーブレット・オブジェクトを記憶する
    遠隔サーバ・コンピュータを更に備えていることを特徴
    とする請求項27に記載の装置。
  29. 【請求項29】 前記サーバ・コンピュータは、複数の
    サーブレット・オブジェクトを記憶し、該サーブレット
    ・オブジェクトのそれぞれは、前記クライアント・コン
    ピュータからの特定の要求に応じて呼び出されるまで連
    続的に動作することを特徴する請求項27に記載の装
    置。
  30. 【請求項30】 前記複数のサーブレット・オブジェク
    トは、それら自体の間でデータを渡すことを特徴とする
    請求項29に記載の装置。
JP14079497A 1996-05-30 1997-05-30 サーブレットを処理する方法及び装置 Expired - Lifetime JP4005667B2 (ja)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US65771296A 1996-05-30 1996-05-30
US75632596A 1996-11-25 1996-11-25
US08/828,318 US5928323A (en) 1996-05-30 1997-03-28 Apparatus and method for dynamically generating information with server-side software objects
US08/756325 1997-03-28
US08/828318 1997-03-28
US08/657712 1997-03-28

Publications (2)

Publication Number Publication Date
JPH10133892A true JPH10133892A (ja) 1998-05-22
JP4005667B2 JP4005667B2 (ja) 2007-11-07

Family

ID=27417985

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14079497A Expired - Lifetime JP4005667B2 (ja) 1996-05-30 1997-05-30 サーブレットを処理する方法及び装置

Country Status (8)

Country Link
US (4) US5928323A (ja)
EP (2) EP0810524B1 (ja)
JP (1) JP4005667B2 (ja)
KR (1) KR100464839B1 (ja)
CN (1) CN1145896C (ja)
DE (1) DE69721632T2 (ja)
SG (1) SG74588A1 (ja)
TW (1) TW374876B (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067317A (ja) * 1999-06-14 2001-03-16 Sun Microsyst Inc サーブレットエンジンにカスタマイズ可能なセキュリティおよびロギングプロトコルを提供するための方法および装置
JP2004501437A (ja) * 2000-05-16 2004-01-15 ディバイン・テクノロジー・ベンチャーズ 配信ダイナミックウエブページキャッシングシステム
JP2005011346A (ja) * 2003-06-20 2005-01-13 Docomo Communications Laboratories Usa Inc アプリケーションの適応的レプリケーションをサーバサイドコードユニットを用いて実行する方法および装置
WO2007105316A1 (ja) * 2006-03-10 2007-09-20 Kabushiki Kaisha Sangyokaihatsukiko オンラインストレージシステム
JP2010204936A (ja) * 2009-03-03 2010-09-16 Nec Corp Http要求処理システム

Families Citing this family (244)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5918214A (en) * 1996-10-25 1999-06-29 Ipf, Inc. System and method for finding product and service related information on the internet
US6961712B1 (en) * 1996-10-25 2005-11-01 Ipf, Inc. Consumer product information request (CPIR) enabling servlets and web-based consumer product information catalogs employing the same
JP3839932B2 (ja) 1996-09-26 2006-11-01 キヤノン株式会社 プロセスカートリッジ及び電子写真画像形成装置及び電子写真感光体ドラム及びカップリング
US6578044B1 (en) 1997-11-17 2003-06-10 Sun Microsystems, Inc. Method and system for typesafe attribute matching
US6832223B1 (en) 1996-04-23 2004-12-14 Sun Microsystems, Inc. Method and system for facilitating access to a lookup service
US6282652B1 (en) 1998-02-26 2001-08-28 Sun Microsystems, Inc. System for separately designating security requirements for methods invoked on a computer
US6226746B1 (en) 1998-03-20 2001-05-01 Sun Microsystems, Inc. Stack-based system and method to combine security requirements of methods
US6393497B1 (en) 1998-03-20 2002-05-21 Sun Microsystems, Inc. Downloadable smart proxies for performing processing associated with a remote procedure call in a distributed system
US6938263B2 (en) 1996-04-23 2005-08-30 Sun Microsystems, Inc. System and method for facilitating dynamic loading of “stub” information to enable a program operating in one address space to invoke processing of a remote method or procedure in another address space
US6446070B1 (en) 1998-02-26 2002-09-03 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6185611B1 (en) 1998-03-20 2001-02-06 Sun Microsystem, Inc. Dynamic lookup service in a distributed system
US6598094B1 (en) 1998-03-20 2003-07-22 Sun Microsystems, Inc. Method and apparatus for determining status of remote objects in a distributed system
US6421704B1 (en) 1998-03-20 2002-07-16 Sun Microsystems, Inc. Method, apparatus, and product for leasing of group membership in a distributed system
US6438614B2 (en) 1998-02-26 2002-08-20 Sun Microsystems, Inc. Polymorphic token based control
US6487607B1 (en) 1998-02-26 2002-11-26 Sun Microsystems, Inc. Methods and apparatus for remote method invocation
US6466947B2 (en) 1998-03-20 2002-10-15 Sun Microsystems, Inc. Apparatus and method for dynamically verifying information in a distributed system
US6138238A (en) 1997-12-11 2000-10-24 Sun Microsystems, Inc. Stack-based access control using code and executor identifiers
US6560656B1 (en) 1998-02-26 2003-05-06 Sun Microsystems, Inc. Apparatus and method for providing downloadable code for use in communicating with a device in a distributed system
US6247026B1 (en) 1996-10-11 2001-06-12 Sun Microsystems, Inc. Method, apparatus, and product for leasing of delegation certificates in a distributed system
US6463446B1 (en) 1998-02-26 2002-10-08 Sun Microsystems, Inc. Method and apparatus for transporting behavior in an event-based distributed system
US6263442B1 (en) * 1996-05-30 2001-07-17 Sun Microsystems, Inc. System and method for securing a program's execution in a network environment
US5928323A (en) * 1996-05-30 1999-07-27 Sun Microsystems, Inc. Apparatus and method for dynamically generating information with server-side software objects
US6151643A (en) 1996-06-07 2000-11-21 Networks Associates, Inc. Automatic updating of diverse software products on multiple client computer systems by downloading scanning application to client computer and generating software list on client computer
US6718550B1 (en) 1996-06-26 2004-04-06 Sun Microsystems, Inc. Method and apparatus for improving the performance of object invocation
US5832529A (en) 1996-10-11 1998-11-03 Sun Microsystems, Inc. Methods, apparatus, and product for distributed garbage collection
US6728737B2 (en) 1996-10-11 2004-04-27 Sun Microsystems, Inc. Method and system for leasing storage
US6237009B1 (en) 1996-10-11 2001-05-22 Sun Microsystems, Inc. Lease renewal service
US7516094B2 (en) * 1996-10-25 2009-04-07 Ipf, Inc. Internet-based system for managing and delivering consumer product information to consumers at web-based retailer store sites on the world wide web (WWW), using consumer product information (CPI) requesting and graphical user interface (GUI) display subsystems, driven by server-side components embodying universal product numbers (UPNs) and driven by UPN/URL links managed by product manufacturer team members and/or their agents
US7904333B1 (en) 1996-10-25 2011-03-08 Ipf, Inc. Web-based electronic commerce (EC) enabled shopping network configured to allow members of a consumer product management team and authorized parties to communicate directly with consumers shopping at EC-enabled websites along the world wide web (WWW), using multi-mode virtual kiosks (MMVKS) driven by server-side components and managed by product team members
US7711598B2 (en) * 1996-10-25 2010-05-04 Ipf, Inc. Web-based consumer product marketing communication network for managing and delivering consumer product marketing communications to consumers along e-commerce (EC) enabled web sites on the world wide web (WWW), using multi-mode virtual kiosks (MMVKS) driven by server=side components embodying consumer product identifiers and driven by consumer product information (CPI) links managed by product manufacturer team members and/or their agents
US20040210479A1 (en) * 1996-10-25 2004-10-21 Ipf, Inc. Internet-based brand marketing communication instrumentation network for deploying, installing and remotely programming brand-building server-side driven multi-mode virtual kiosks on the World Wide Web (WWW), and methods of brand marketing communication between brand marketers and consumers using the same
US20050010475A1 (en) * 1996-10-25 2005-01-13 Ipf, Inc. Internet-based brand management and marketing communication instrumentation network for deploying, installing and remotely programming brand-building server-side driven multi-mode virtual Kiosks on the World Wide Web (WWW), and methods of brand marketing communication between brand marketers and consumers using the same
US7848948B2 (en) * 1996-10-25 2010-12-07 Ipf, Inc. Internet-based product brand marketing communication network configured to allow members of a product brand management team to communicate directly with consumers browsing HTML-encoded pages at an electronic commerce (EC) enabled web-site along the fabric of the world wide web (WWW), using programable multi-mode virtual kiosks (MMVKS) driven by server-side components and managed by product brand management team members
US20050144072A1 (en) * 1996-10-25 2005-06-30 Perkowski Thomas J. Internet-based brand management and marketing communication instrumentation network for deploying, installing and remotely programming brand-building server-side driven multi-mode virtual kiosks on the World Wide Web (WWW), and methods of brand marketing communication between brand marketers and consumers using the same
US7536324B2 (en) * 1996-10-25 2009-05-19 Ipf, Inc. Internet-based system for managing and delivering consumer product brand information to consumers at points of presence along the world wide web (WWW)
US6167522A (en) * 1997-04-01 2000-12-26 Sun Microsystems, Inc. Method and apparatus for providing security for servers executing application programs received via a network
JP3848725B2 (ja) * 1997-04-04 2006-11-22 富士通株式会社 双方向通信システム
US6304912B1 (en) * 1997-07-24 2001-10-16 Fujitsu Limited Process and apparatus for speeding-up layer-2 and layer-3 routing, and for determining layer-2 reachability, through a plurality of subnetworks
US6035324A (en) * 1997-08-28 2000-03-07 International Business Machines Corporation Client-side asynchronous form management
US6070184A (en) * 1997-08-28 2000-05-30 International Business Machines Corporation Server-side asynchronous form management
US7630006B2 (en) 1997-10-09 2009-12-08 Fotonation Ireland Limited Detecting red eye filter and apparatus using meta-data
US6216152B1 (en) * 1997-10-27 2001-04-10 Sun Microsystems, Inc. Method and apparatus for providing plug in media decoders
IL122314A (en) * 1997-11-27 2001-03-19 Security 7 Software Ltd Method and system for enforcing a communication security policy
US6249803B1 (en) 1997-12-18 2001-06-19 Sun Microsystems, Inc. Method and apparatus for executing code during method invocation
US6438616B1 (en) 1997-12-18 2002-08-20 Sun Microsystems, Inc. Method and apparatus for fast, local corba object references
US6516354B2 (en) 1997-12-18 2003-02-04 Sun Microsystems, Inc. Method and apparatus for efficient representation of variable length identifiers in a distributed object system
US6510460B1 (en) * 1997-12-18 2003-01-21 Sun Microsystems, Inc. Method and apparatus for enforcing locking invariants in multi-threaded systems
US6085196A (en) * 1997-12-23 2000-07-04 Ricoh Company, Ltd. Object-oriented system and computer program product for mapping structured information to different structured information
US7437725B1 (en) 1999-01-04 2008-10-14 General Electric Company Processing techniques for servers handling client/server traffic and communications
US6012098A (en) * 1998-02-23 2000-01-04 International Business Machines Corp. Servlet pairing for isolation of the retrieval and rendering of data
US6604127B2 (en) 1998-03-20 2003-08-05 Brian T. Murphy Dynamic lookup service in distributed system
EP1058883A2 (en) 1998-02-26 2000-12-13 Sun Microsystems, Inc. Method and system for deterministic hashes to identify remote methods
EP1057101A2 (en) * 1998-02-26 2000-12-06 Sun Microsystems, Inc. Method and apparatus for dynamic distributed computing over a network
US6098093A (en) * 1998-03-19 2000-08-01 International Business Machines Corp. Maintaining sessions in a clustered server environment
DE19818041B4 (de) * 1998-04-22 2008-04-03 Siemens Ag Verfahren zur Erzeugung einer Oberfläche zum Bedienen und Beobachten von Leitsystemen
GB2337671B (en) * 1998-05-16 2003-12-24 Ibm Security mechanisms in a web server
US6223202B1 (en) * 1998-06-05 2001-04-24 International Business Machines Corp. Virtual machine pooling
US6330710B1 (en) * 1998-06-19 2001-12-11 At&T Corp. Servlet-based architecture for dynamic service composition
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
US6212564B1 (en) * 1998-07-01 2001-04-03 International Business Machines Corporation Distributed application launcher for optimizing desktops based on client characteristics information
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
JP3558887B2 (ja) * 1998-08-28 2004-08-25 株式会社東芝 分散システム、その制御方法、および記憶媒体
US6643708B1 (en) * 1998-10-29 2003-11-04 International Business Machines Corporation Systems, methods and computer program products for chaining Java servlets across networks
US6409602B1 (en) 1998-11-06 2002-06-25 New Millenium Gaming Limited Slim terminal gaming system
EP1208482A1 (en) * 1998-11-30 2002-05-29 Siebel Systems, Inc. Client server system with thin client architecture
US6266774B1 (en) 1998-12-08 2001-07-24 Mcafee.Com Corporation Method and system for securing, managing or optimizing a personal computer
GB2335060B (en) * 1998-12-09 2003-04-30 Taxmate Ltd An inter-computer communications apparatus
JP2000250841A (ja) * 1999-03-02 2000-09-14 Hitachi Ltd ページ生成方法及び装置並びにページ生成プログラムを記録した記憶媒体および電子モールシステム
PT1177480E (pt) * 1999-04-09 2006-05-31 Edward A Corlew Acesso remoto de dados e ao controlo de sistema
US20020194081A1 (en) * 1999-04-21 2002-12-19 Perkowski Thomas J. Internet-based consumer service brand marketing communication system which enables service-providers, retailers, and their respective agents and consumers to carry out service-related functions along the demand side of the retail chain in an integrated manner
US20080021778A1 (en) * 1999-04-21 2008-01-24 Ipf, Inc. Web-based brand marketing communication network for enabling e-commerce transactions using Multi-Mode Virtual Kiosks (MMVKS)
US7844492B2 (en) * 1999-11-17 2010-11-30 Ipf, Inc. Internet-based E-commerce network for enabling commission-based E-commerce transactions along the fabric of the world wide web (WWW) using server-side driven multi-mode virtual kiosks (MMVKS) and transaction and commission tracking servers
US8862507B2 (en) * 1999-06-14 2014-10-14 Integral Development Corporation System and method for conducting web-based financial transactions in capital markets
US6446111B1 (en) * 1999-06-18 2002-09-03 Epicrealm Operating Inc. Method and apparatus for client-server communication using a limited capability client over a low-speed communications link
US6480882B1 (en) * 1999-06-25 2002-11-12 Emc Corporation Method for control and communication between computer systems linked through a network
US6954777B1 (en) * 1999-07-29 2005-10-11 International Business Machines Corporation Method for extending capabilities of an arbitrary web server
US6895584B1 (en) 1999-09-24 2005-05-17 Sun Microsystems, Inc. Mechanism for evaluating requests prior to disposition in a multi-threaded environment
US6766349B1 (en) 1999-09-24 2004-07-20 Sun Microsystems, Inc. Mechanism for obtaining a thread from, and returning a thread to, a thread pool without attaching and detaching
AU2112301A (en) 1999-09-24 2001-04-24 Sun Microsystems, Inc. Mechanism for enabling session information to be shared across multiple processes
US6701367B1 (en) 1999-09-24 2004-03-02 Sun Microsystems, Inc. Mechanism for enabling customized session managers to interact with a network server
US7388953B2 (en) * 1999-09-24 2008-06-17 Verizon Business Global Llc Method and system for providing intelligent network control services in IP telephony
US6542920B1 (en) * 1999-09-24 2003-04-01 Sun Microsystems, Inc. Mechanism for implementing multiple thread pools in a computer system to optimize system performance
US6636596B1 (en) * 1999-09-24 2003-10-21 Worldcom, Inc. Method of and system for providing intelligent network control services in IP telephony
US6629142B1 (en) 1999-09-24 2003-09-30 Sun Microsystems, Inc. Mechanism for optimizing processing of client requests
US6604125B1 (en) 1999-09-24 2003-08-05 Sun Microsystems, Inc. Mechanism for enabling a thread unaware or non thread safe application to be executed safely in a multi-threaded environment
US7266766B1 (en) 1999-09-30 2007-09-04 International Business Machines Corporation Method for developing a custom tagbean
US6876991B1 (en) 1999-11-08 2005-04-05 Collaborative Decision Platforms, Llc. System, method and computer program product for a collaborative decision platform
AU4714901A (en) * 1999-12-08 2001-07-03 Mci Worldcom, Inc. Session initiation protocol servlet application programming interface
US6678518B2 (en) 1999-12-09 2004-01-13 Nokia Corporation Dynamic content filter in a gateway
US6687729B1 (en) * 1999-12-20 2004-02-03 Unisys Corporation System and method for providing a pool of reusable threads for performing queued items of work
US20020087915A1 (en) * 1999-12-23 2002-07-04 Jesse Perla Error handler method and system for internet-based applications
US20020032706A1 (en) * 1999-12-23 2002-03-14 Jesse Perla Method and system for building internet-based applications
US20010047385A1 (en) * 1999-12-30 2001-11-29 Jeffrey Tuatini Passthru to shared service funtionality
US20110238506A1 (en) * 2000-01-14 2011-09-29 Perkowski Thomas J Internet-based brand marketing communication network for enabling commission-based e-commerce transactions along the fabric of the world wide web (www) using server-side driven multi-mode virtual kiosks (mmvks)
US6938256B2 (en) 2000-01-18 2005-08-30 Galactic Computing Corporation System for balance distribution of requests across multiple servers using dynamic metrics
AU2823601A (en) * 2000-01-27 2001-08-07 Hummingbird Ltd. A method and system for implementing a common user logon to multiple applications
US6772395B1 (en) * 2000-02-01 2004-08-03 Microsoft Corporation Self-modifying data flow execution architecture
US6748593B1 (en) * 2000-02-17 2004-06-08 International Business Machines Corporation Apparatus and method for starvation load balancing using a global run queue in a multiple run queue system
US6658449B1 (en) * 2000-02-17 2003-12-02 International Business Machines Corporation Apparatus and method for periodic load balancing in a multiple run queue system
US6553405B1 (en) * 2000-02-25 2003-04-22 Telefonaktiebolaget Lm Ericsson (Publ) Self-configurable distributed system
US6598036B1 (en) * 2000-04-04 2003-07-22 Ford Global Technologies, Llc Method for serving engineering rules on a network through servlet and applet
US8082491B1 (en) 2000-05-09 2011-12-20 Oracle America, Inc. Dynamic displays in a distributed computing environment
US6862594B1 (en) 2000-05-09 2005-03-01 Sun Microsystems, Inc. Method and apparatus to discover services using flexible search criteria
US6985946B1 (en) 2000-05-12 2006-01-10 Microsoft Corporation Authentication and authorization pipeline architecture for use in a web server
US6792607B1 (en) 2000-05-18 2004-09-14 Microsoft Corporation Databinding using server-side control objects
US7013340B1 (en) * 2000-05-18 2006-03-14 Microsoft Corporation Postback input handling by server-side control objects
US6961750B1 (en) * 2000-05-18 2005-11-01 Microsoft Corp. Server-side control objects for processing client-side user interface elements
US6990653B1 (en) * 2000-05-18 2006-01-24 Microsoft Corporation Server-side code generation from a dynamic web page content file
US6757900B1 (en) 2000-05-18 2004-06-29 Microsoft Corporation State management of server-side control objects
US6934755B1 (en) 2000-06-02 2005-08-23 Sun Microsystems, Inc. System and method for migrating processes on a network
US7140018B1 (en) 2000-06-20 2006-11-21 International Business Machines Corporation Method of using a distinct flow of computational control as a reusable abstract data object
US6507903B1 (en) 2000-06-20 2003-01-14 International Business Machines Corporation High performance non-blocking parallel storage manager for parallel software executing on coordinates
US6832378B1 (en) 2000-06-20 2004-12-14 International Business Machines Corporation Parallel software processing system
WO2002001442A1 (fr) * 2000-06-27 2002-01-03 Kbmj Inc. Systeme pour fournir des informations
US7076534B1 (en) * 2000-06-30 2006-07-11 Microsoft Corporation Server-side scripting that enables creation of customized documents for clients
US8538843B2 (en) 2000-07-17 2013-09-17 Galactic Computing Corporation Bvi/Bc Method and system for operating an E-commerce service provider
US6816905B1 (en) * 2000-11-10 2004-11-09 Galactic Computing Corporation Bvi/Bc Method and system for providing dynamic hosted service management across disparate accounts/sites
US7089560B1 (en) * 2000-07-24 2006-08-08 Sun Microsystems, Inc. Architecture for building web applications
US6571201B1 (en) * 2000-08-18 2003-05-27 Gilbarco Inc. Remote-access fuel dispenser using a data type aware mark-up language
ATE443964T1 (de) * 2000-08-25 2009-10-15 Research In Motion Ltd System und verfahren zur implementierung eines verbesserten transportschicht- sicherheitsprotokolls
US20020046240A1 (en) * 2000-08-31 2002-04-18 Scott Graham Web server framework
US6769123B1 (en) * 2000-09-07 2004-07-27 Cisco Technology, Inc. Method and apparatus of using a single computer program source code base to provide a program that is operable in either a client-server mode or a standalone mode
US7526438B1 (en) * 2000-09-18 2009-04-28 Hewlett-Packard Development Company, L.P. Localizing client purchasing of consumables for hardcody output engine and method
US6684262B1 (en) 2000-10-25 2004-01-27 International Business Machines Corporation Method and system for controlling peripheral device interface behavior using thread registration
US11526940B2 (en) 2000-10-31 2022-12-13 Integral Development Corporation System and method for conducting web-based financial transactions in capital markets
US20020099806A1 (en) * 2000-11-30 2002-07-25 Phillip Balsamo Processing node for eliminating duplicate network usage data
US20020069217A1 (en) * 2000-12-04 2002-06-06 Hua Chen Automatic, multi-stage rich-media content creation using a framework based digital workflow - systems, methods and program products
US7089281B1 (en) * 2000-12-08 2006-08-08 Sun Microsystems, Inc. Load balancing in a dynamic session redirector
US6968557B1 (en) * 2000-12-18 2005-11-22 Stratum8 Corporation Reducing stack memory resources in a threaded computer system
US6988349B2 (en) * 2000-12-27 2006-01-24 Pitney Bowes Inc. Printstream processing for inserter systems
US7412598B1 (en) * 2000-12-29 2008-08-12 Cisco Technology, Inc. Method and system for real-time insertion of service during a call session over a communication network
EP1379947B1 (en) * 2001-01-19 2012-09-05 Hostbridge Technology, LLC An improved system, method and apparatus to allow communication between cics and non-cics software applications
US20030056173A1 (en) * 2001-01-22 2003-03-20 International Business Machines Corporation Method, system, and program for dynamically generating input for a test automation facility for verifying web site operation
WO2002095543A2 (en) * 2001-02-06 2002-11-28 En Garde Systems Apparatus and method for providing secure network communication
US7797431B2 (en) * 2001-02-09 2010-09-14 Willard Case Enhanced data exchange and functionality control system and method
US7249190B2 (en) * 2001-02-09 2007-07-24 Comlet Technologies, Llc. Enhanced data exchange and presentation/communication system
US20020120677A1 (en) * 2001-02-23 2002-08-29 Goward Philip J. Method and apparatus for using a servlet to interoperate with server pages
US6961938B1 (en) * 2001-03-03 2005-11-01 Brocade Communications Systems, Inc. Management of multiple network devices using unsigned Java applets
US7380250B2 (en) * 2001-03-16 2008-05-27 Microsoft Corporation Method and system for interacting with devices having different capabilities
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
IL157881A0 (en) * 2001-04-20 2004-03-28 Pfizer Prod Inc Process for the preparation of 1,3-substituted indenes and aryl-fused azapolycyclic compounds
USRE47735E1 (en) 2001-04-20 2019-11-19 Progme Corporation Audio/video program-related hyperlink printer
US7480860B2 (en) 2001-04-23 2009-01-20 Versata Computer Industry Solutions, Inc. Data document generator to generate multiple documents from a common document using multiple transforms
US6748386B1 (en) * 2001-04-24 2004-06-08 Nec Corporation System and method for automated construction of URL, cookie, and database query mapping
US7320027B1 (en) * 2001-05-14 2008-01-15 At&T Corp. System having generalized client-server computing
US7493397B1 (en) * 2001-06-06 2009-02-17 Microsoft Corporation Providing remote processing services over a distributed communications network
US6944797B1 (en) 2001-06-07 2005-09-13 Microsoft Corporation Method and system for tracing
US7594230B2 (en) 2001-06-11 2009-09-22 Microsoft Corporation Web server architecture
US7430738B1 (en) * 2001-06-11 2008-09-30 Microsoft Corporation Methods and arrangements for routing server requests to worker processes based on URL
US6915454B1 (en) 2001-06-12 2005-07-05 Microsoft Corporation Web controls validation
US6996602B2 (en) * 2001-06-18 2006-02-07 Ford Global Technologies, Llc Server-side page table framework for client application definition and execution
US7269788B2 (en) * 2001-06-29 2007-09-11 Versata Development Group, Inc. Extensibility and usability of document and data representation languages
US7162723B2 (en) * 2001-06-29 2007-01-09 Microsoft Corporation ASP.NET HTTP runtime
US6898604B1 (en) 2001-06-29 2005-05-24 Microsoft Corporation XML serialization and deserialization
US20030009522A1 (en) * 2001-07-05 2003-01-09 Rau Sadhana S. Method for propagating teamware transactions
US20030046441A1 (en) * 2001-07-05 2003-03-06 Rau Sadhana S. Teamware repository of teamware workspaces
US6813641B2 (en) * 2001-07-05 2004-11-02 Sun Microsystems, Inc. Teamware server working over HTTP/HTTPS connections
US6973625B1 (en) 2001-07-06 2005-12-06 Convergys Cmg Utah Method for creating browser-based user interface applications using a framework
US7594001B1 (en) 2001-07-06 2009-09-22 Microsoft Corporation Partial page output caching
US7120897B2 (en) * 2001-07-10 2006-10-10 Microsoft Corporation User control objects for providing server-side code generation from a user-defined dynamic web page content file
US7349942B1 (en) 2002-02-13 2008-03-25 Vignette Corporation Storage medium having a manageable file directory structure
US9639547B2 (en) 2001-07-13 2017-05-02 Open Text Sa Ulc Method and system for file-system based caching
US7024452B1 (en) 2001-07-13 2006-04-04 Vignette Corporation Method and system for file-system based caching
US7761497B1 (en) 2001-07-13 2010-07-20 Vignette Software, LLC Storage medium having a manageable file directory structure
US20030063122A1 (en) * 2001-07-27 2003-04-03 Cichowlas Bruce William Method, system, and computer program product for developing and using stateful web applications
GB2378270B (en) * 2001-07-30 2005-04-20 Ibm Method and apparatus for data transfer across a network
US7216294B2 (en) 2001-09-04 2007-05-08 Microsoft Corporation Method and system for predicting optimal HTML structure without look-ahead
US7756969B1 (en) 2001-09-07 2010-07-13 Oracle America, Inc. Dynamic provisioning of identification services in a distributed system
US7660887B2 (en) 2001-09-07 2010-02-09 Sun Microsystems, Inc. Systems and methods for providing dynamic quality of service for a distributed system
US20030074432A1 (en) * 2001-09-26 2003-04-17 Mazzitelli John Joseph State data management method and system
US6886041B2 (en) * 2001-10-05 2005-04-26 Bea Systems, Inc. System for application server messaging with multiple dispatch pools
US7003570B2 (en) * 2001-10-05 2006-02-21 Bea Systems, Inc. System for integrating java servlets with asynchronous messages
US7761594B1 (en) * 2001-10-15 2010-07-20 Netapp, Inc. Method and apparatus for forwarding requests in a cache hierarchy based on user-defined forwarding rules
US7469299B2 (en) * 2001-10-25 2008-12-23 Verizon Business Global Llc Bridging user agent and a proxy server for supporting network services
US7428725B2 (en) 2001-11-20 2008-09-23 Microsoft Corporation Inserting devices specific content
US20030140161A1 (en) * 2001-12-21 2003-07-24 Matthew A. Hayduk Portable computing device having a dynamic client classmark and method therefor
US7552189B2 (en) * 2002-01-18 2009-06-23 Bea Systems, Inc. System and method for using virtual directories to service URL requests URL requests in application servers
US20030145048A1 (en) * 2002-01-18 2003-07-31 Bea Systems, Inc. System and method for HTTP request preprocessing for servlets and application servers
US7197530B2 (en) * 2002-01-18 2007-03-27 Bea Systems, Inc. System and method for pluggable URL pattern matching for servlets and application servers
US20030140100A1 (en) * 2002-01-18 2003-07-24 Sam Pullara System and method for URL response caching and filtering in servlets and application servers
CA2416962A1 (en) * 2002-01-22 2003-07-22 Datacom Wireless Corporation Vehicle monitoring system
US20030233477A1 (en) * 2002-06-17 2003-12-18 Microsoft Corporation Extensible infrastructure for manipulating messages communicated over a distributed network
US7711728B2 (en) * 2002-06-20 2010-05-04 Guidance Software, Inc. System and method for searching for static data in a computer investigation system
US6792545B2 (en) * 2002-06-20 2004-09-14 Guidance Software, Inc. Enterprise computer investigation system
US20070011450A1 (en) * 2004-09-14 2007-01-11 Mccreight Shawn System and method for concurrent discovery and survey of networked devices
US20030236826A1 (en) * 2002-06-24 2003-12-25 Nayeem Islam System and method for making mobile applications fault tolerant
US7454458B2 (en) 2002-06-24 2008-11-18 Ntt Docomo, Inc. Method and system for application load balancing
US20040001476A1 (en) * 2002-06-24 2004-01-01 Nayeem Islam Mobile application environment
US20070005685A1 (en) * 2002-09-16 2007-01-04 Wunchun Chau Browser-based payment system
US7130877B2 (en) * 2002-09-30 2006-10-31 Alcatel Canada Inc. Request processing switch
US7116784B2 (en) 2002-09-30 2006-10-03 Motorola, Inc. Method and apparatus for authenticated reporting in a mobile communication device
US7574653B2 (en) 2002-10-11 2009-08-11 Microsoft Corporation Adaptive image formatting control
DE50208160D1 (de) * 2002-10-31 2006-10-26 Siemens Ag Verfahren und Vorrichtung zur asynchronen Übertragung mindestens eines Meldesignals
US8145759B2 (en) * 2002-11-04 2012-03-27 Oracle America, Inc. Dynamically configurable resource pool
US20040111421A1 (en) * 2002-12-10 2004-06-10 Cohen Norman H. Data source synthesis
US20040128654A1 (en) * 2002-12-30 2004-07-01 Dichter Carl R. Method and apparatus for measuring variation in thread wait time
KR100408758B1 (en) * 2003-01-22 2003-12-11 Nexon Co Ltd Method for controlling user application program
US20040163086A1 (en) * 2003-02-14 2004-08-19 Richard Friedman WebDAV servlet
US8621031B2 (en) * 2003-04-29 2013-12-31 Oracle International Corporation Method and apparatus using connection pools in communication networks
US8490096B2 (en) * 2003-07-11 2013-07-16 Ca, Inc. Event processor for job scheduling and management
US7237619B2 (en) * 2003-07-23 2007-07-03 Mehr Ralph R Automatic fire sprinkler having a variable orifice
US7596782B2 (en) * 2003-10-24 2009-09-29 Microsoft Corporation Software build extensibility
US7792874B1 (en) 2004-01-30 2010-09-07 Oracle America, Inc. Dynamic provisioning for filtering and consolidating events
CN1662003B (zh) * 2004-02-27 2010-04-28 华为技术有限公司 一种实现会话发起协议应用服务器个人业务定制的方法
US7890604B2 (en) 2004-05-07 2011-02-15 Microsoft Corproation Client-side callbacks to server events
US8065600B2 (en) 2004-05-14 2011-11-22 Microsoft Corporation Systems and methods for defining web content navigation
US9026578B2 (en) 2004-05-14 2015-05-05 Microsoft Corporation Systems and methods for persisting data between web pages
US7464386B2 (en) * 2004-05-17 2008-12-09 Microsoft Corporation Data controls architecture
US8156448B2 (en) * 2004-05-28 2012-04-10 Microsoft Corporation Site navigation and site navigation data source
US7530058B2 (en) * 2004-05-28 2009-05-05 Microsoft Corporation Non-compile pages
US20060020883A1 (en) * 2004-05-28 2006-01-26 Microsoft Corporation Web page personalization
US7571236B2 (en) * 2004-06-07 2009-08-04 Sap Ag System and method for managing connections
GB0416259D0 (en) * 2004-07-21 2004-08-25 Ibm A method and system for enabling a server application to be executed in the same virtual machine as a client application using direct object oriented
US20060047840A1 (en) * 2004-08-31 2006-03-02 Peter Postmus Method and session initiation protocol (SIP) server for the exchange of end-point capabilities
US7418709B2 (en) * 2004-08-31 2008-08-26 Microsoft Corporation URL namespace to support multiple-protocol processing within worker processes
US7418719B2 (en) * 2004-08-31 2008-08-26 Microsoft Corporation Method and system to support a unified process model for handling messages sent in different protocols
US7418712B2 (en) * 2004-08-31 2008-08-26 Microsoft Corporation Method and system to support multiple-protocol processing within worker processes
JP4144609B2 (ja) * 2004-09-29 2008-09-03 ソニー株式会社 情報処理装置、メモリ領域管理方法、並びにコンピュータ・プログラム
US7984418B2 (en) * 2005-03-24 2011-07-19 International Business Machines Corporation Method and apparatus for situationally aware delivery of object instances to a client
US7823158B2 (en) * 2005-08-18 2010-10-26 International Business Machines Corporation Adaptive scheduling and management of work processing in a target context in resource contention
WO2007044709A2 (en) * 2005-10-06 2007-04-19 Guidance Software, Inc. Electronic discovery system and method
US20070083671A1 (en) * 2005-10-11 2007-04-12 International Business Machines Corporation Servlet filters to decode encoded request parameters
US8010595B2 (en) * 2005-11-29 2011-08-30 International Business Machines Corporation Execution of server-side dynamic pages
US8892735B2 (en) * 2006-09-28 2014-11-18 Guidance Software, Inc. Phone home servlet in a computer investigation system
US7657591B2 (en) * 2007-02-23 2010-02-02 Microsoft Corporation Dispatching client requests to appropriate server-side methods
US8334891B2 (en) * 2007-03-05 2012-12-18 Cisco Technology, Inc. Multipoint conference video switching
US8264521B2 (en) 2007-04-30 2012-09-11 Cisco Technology, Inc. Media detection and packet distribution in a multipoint conference
US20090276791A1 (en) * 2008-05-01 2009-11-05 Microsoft Corporation Techniques for facilitating server callbacks
US8732588B2 (en) * 2008-09-09 2014-05-20 Applied Systems, Inc. Method and apparatus for remotely displaying screen files and efficiently handling remote operator input
US8545500B2 (en) * 2008-11-19 2013-10-01 Omni Surgical LLC Bone fixation assembly
US8532714B2 (en) * 2009-01-29 2013-09-10 Qualcomm Incorporated Dynamically provisioning a device with audio processing capability
US20110082875A1 (en) * 2009-10-02 2011-04-07 Netquote, Inc. System and method for dynamic payload generation on shared sites
CN101777065B (zh) * 2009-12-31 2015-01-14 优视科技有限公司 一种用于移动通讯设备终端的多页面浏览器及其应用方法
US9479480B2 (en) * 2010-01-29 2016-10-25 Citrix Systems, Inc. Systems and methods of using SSL pools for WAN acceleration
US20110239229A1 (en) * 2010-03-26 2011-09-29 Microsoft Corporation Predicative and persistent event streams
US8903884B2 (en) * 2011-02-21 2014-12-02 Microsoft Corporation Multi-tenant services gateway
US8856260B2 (en) 2011-06-14 2014-10-07 Microsoft Corporation Providing access to shared state data
US20130290830A1 (en) * 2012-04-30 2013-10-31 Salesforce.Com, Inc. System and method for managing a viewstate of a web application
GB2502277B (en) * 2012-05-21 2015-07-08 Rosberg System As Data communication network
US9135030B2 (en) 2012-06-29 2015-09-15 M-Files Oy Method, an apparatus and a computer program product for extending an application in a client device
US9503398B1 (en) 2013-05-16 2016-11-22 Ca, Inc. Sysplex signal service protocol converter
US9823826B2 (en) 2014-10-16 2017-11-21 International Business Machines Corporation User interface module sharing
US20230116403A1 (en) 2019-12-02 2023-04-13 Storm Therapeutics Limited Polyheterocyclic compounds as mettl3 inhibitors
CN111209495A (zh) * 2019-12-26 2020-05-29 曙光信息产业股份有限公司 一种动态页面的生成方法和装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5341477A (en) * 1989-02-24 1994-08-23 Digital Equipment Corporation Broker for computer network server selection
CA2048306A1 (en) * 1990-10-02 1992-04-03 Steven P. Miller Distributed configuration profile for computing system
US5452454A (en) * 1991-12-10 1995-09-19 Digital Equipment Corporation Generic remote boot for networked workstations by creating local bootable code image
US5475421A (en) * 1992-06-03 1995-12-12 Digital Equipment Corporation Video data scaling for video teleconferencing workstations communicating by digital data network
US5570291A (en) * 1994-08-24 1996-10-29 Wallace Computer Services, Inc. Custom product estimating and order processing system
US5630066A (en) * 1994-12-20 1997-05-13 Sun Microsystems, Inc. System and method for locating object view and platform independent object
US5612730A (en) * 1995-03-03 1997-03-18 Multimedia Systems Corporation Interactive system for a closed cable network
US5802291A (en) * 1995-03-30 1998-09-01 Sun Microsystems, Inc. System and method to control and administer distributed object servers using first class distributed objects
US5721825A (en) * 1996-03-15 1998-02-24 Netvision, Inc. System and method for global event notification and delivery in a distributed computing environment
US6263442B1 (en) * 1996-05-30 2001-07-17 Sun Microsystems, Inc. System and method for securing a program's execution in a network environment
US5928323A (en) * 1996-05-30 1999-07-27 Sun Microsystems, Inc. Apparatus and method for dynamically generating information with server-side software objects
US6163797A (en) * 1996-08-06 2000-12-19 Hewlett-Packard Company Application dispatcher for seamless, server application support for network terminals and non-network terminals
US6167522A (en) * 1997-04-01 2000-12-26 Sun Microsystems, Inc. Method and apparatus for providing security for servers executing application programs received via a network
US6055562A (en) * 1997-05-01 2000-04-25 International Business Machines Corporation Dynamic mobile agents
US6075528A (en) * 1997-10-20 2000-06-13 International Business Machines Corporation Graphical user interface stream processor
US6012098A (en) * 1998-02-23 2000-01-04 International Business Machines Corp. Servlet pairing for isolation of the retrieval and rendering of data
US6098093A (en) * 1998-03-19 2000-08-01 International Business Machines Corp. Maintaining sessions in a clustered server environment

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001067317A (ja) * 1999-06-14 2001-03-16 Sun Microsyst Inc サーブレットエンジンにカスタマイズ可能なセキュリティおよびロギングプロトコルを提供するための方法および装置
JP4615096B2 (ja) * 1999-06-14 2011-01-19 サン・マイクロシステムズ・インコーポレーテッド サーブレットエンジンにカスタマイズ可能なセキュリティおよびロギングプロトコルを提供するための方法および装置
JP2004501437A (ja) * 2000-05-16 2004-01-15 ディバイン・テクノロジー・ベンチャーズ 配信ダイナミックウエブページキャッシングシステム
JP2005011346A (ja) * 2003-06-20 2005-01-13 Docomo Communications Laboratories Usa Inc アプリケーションの適応的レプリケーションをサーバサイドコードユニットを用いて実行する方法および装置
WO2007105316A1 (ja) * 2006-03-10 2007-09-20 Kabushiki Kaisha Sangyokaihatsukiko オンラインストレージシステム
JP2010204936A (ja) * 2009-03-03 2010-09-16 Nec Corp Http要求処理システム

Also Published As

Publication number Publication date
JP4005667B2 (ja) 2007-11-07
US20010011298A1 (en) 2001-08-02
CN1191350A (zh) 1998-08-26
US6405241B2 (en) 2002-06-11
EP0810524B1 (en) 2003-05-07
US5928323A (en) 1999-07-27
CN1145896C (zh) 2004-04-14
SG74588A1 (en) 2000-08-22
US7171446B2 (en) 2007-01-30
EP1235150A2 (en) 2002-08-28
TW374876B (en) 1999-11-21
KR19980079252A (ko) 1998-11-25
DE69721632T2 (de) 2004-02-19
EP1235150B1 (en) 2017-04-05
EP1235150A3 (en) 2005-04-13
US6247044B1 (en) 2001-06-12
DE69721632D1 (de) 2003-06-12
KR100464839B1 (ko) 2005-02-28
EP0810524A1 (en) 1997-12-03
US20030009519A1 (en) 2003-01-09

Similar Documents

Publication Publication Date Title
JP4005667B2 (ja) サーブレットを処理する方法及び装置
US5987517A (en) System having a library of protocol independent reentrant network interface functions for providing common calling interface for communication and application protocols
US7330872B2 (en) Method for distributed program execution with web-based file-type association
US6952714B2 (en) Method for distributed program execution with server-based file type association
US7117243B2 (en) Methods for distributed program execution with file-type association in a client-server network
US8782676B2 (en) System and method for communication between portal applications and portlet containers
US6038603A (en) Processing customized uniform resource locators
US6405367B1 (en) Apparatus and method for increasing the performance of Java programs running on a server
JP3853593B2 (ja) ウェブアプリケーションサーバにおいて拡張可能な認証機構を実現するための方法および装置
US7587447B2 (en) Systems, methods and computer programs for implementing and accessing web services
AU2002332001B2 (en) Methods for distributed program execution with file-type association in a client-server network
JP3966487B2 (ja) オブジェクトのリダイレクト管理方法及びアプレットの通信を可能とする方法
US6845505B1 (en) Web request broker controlling multiple processes
US8407718B2 (en) Method and apparatus for composite user interface generation
US20020016790A1 (en) Apparatus and method for dynamically verifying information in a distributed system
US20060064399A1 (en) Method and system for testing distributed software applications
US7822826B1 (en) Deployment of a web service
JP2003076560A (ja) Asp.nethttpランタイム
RU2237275C2 (ru) Сервер и способ (варианты) определения программного окружения клиентского узла в сети с архитектурой клиент/сервер
US7418720B2 (en) Interprocess communication mechanism for heterogeneous computer process
US20070067265A1 (en) Using one extensive portlet rather than multiple small portlets
JP4097584B2 (ja) Wwwサーバ機能を有する組み込み機器、ウェブページ提供方法、および、ウェブページ提供制御プログラム
US6631424B1 (en) Distributing information using a computer
JP2002116919A (ja) ネットワークベースのアプリケーション、それを処理するためのアーキテクチャ及びシステム、ならびにそれを実行するための方法
Luo Developing a 3-tier Web database application prototype on Unix with Java servlets and Oracle

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060724

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060814

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070226

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070528

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070703

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070824

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110831

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110831

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120831

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130831

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term