JP2006501558A - ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法 - Google Patents

ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法 Download PDF

Info

Publication number
JP2006501558A
JP2006501558A JP2004540954A JP2004540954A JP2006501558A JP 2006501558 A JP2006501558 A JP 2006501558A JP 2004540954 A JP2004540954 A JP 2004540954A JP 2004540954 A JP2004540954 A JP 2004540954A JP 2006501558 A JP2006501558 A JP 2006501558A
Authority
JP
Japan
Prior art keywords
portlet
portlets
user
rules
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004540954A
Other languages
English (en)
Inventor
エヌ・ジー、ジョアンナ
カプア、ロヒット
ニグル、レホ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2006501558A publication Critical patent/JP2006501558A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】 ポータルにおいて、ビジネス規則とユーザのビジネス上の役割とに基づきユーザごとに行なうポータル・リソースの収集を実現するとともに、当該収集を実行時に動的に行ないうるようにする。
【解決手段】 本発明の実例はユーザに表示するポータル・リソース(ポートレット、ページ、およびページ・グループ)を交換可能な規則エンジンに基づいて選択する手段と、規則データベースと、規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示するポートレット・アプリケーション収集エンジンとを備えている。

Description

本発明はインターネットに関し、特にウェブ・サイトの機能を強化するためのポータルとポートレットをウェブ・アプリケーション中に作成するとともにそれらを使用する方法と装置に関する。
ワールド・ワイド・ウェブによってインターネットを介して画像情報をユーザに伝達する通信へのパラダイム・シフトが起きた。ウェブの登場によって、通信可能性(communicability:伝達性) と広帯域接続(broad connectivity)を高めることが求められ、現在でも求められている。
ポータル(the Portal) (以前はウェブ・ポータルと呼ばれていた)によって、インターネット空間にパラダイム・シフトが生じた。多数のリソースやサービス(たとえば電子メール、フォーラム、検索エンジン、データベース、または他の情報)を提示するウェブ・サイトは1つのポータル(portal)であると考えられる。最初のウェブ・ポータルはオンライン・サービス(パソコン通信サービス)であった。インターネットをサーフィンするユーザは初めて、ワールド・ワイド・ウェブ中の様々なサイトから入来する情報を用いて組み立てた後、それらの情報を提示するウェブ・ページを閲覧できるようになった。そして、その情報集積の構成はユーザにとってまだ分かりやすいものであった。しかし現在、典型的なウェブ・ブラウザを利用するユーザは密結合して表示されるウェブ・ページを見ている。閲覧中のウェブ・サイトに関連付けられていない様々なインターネット・サイトに由来する様々な部品の起点は容易には分からない。これらの部品はポートレット(Portlet)と呼ばれている。
ポートレットはエンド・ユーザが自分のポータル・ページ内で見る可視の能動コンポーネントである。PCのデスクトップに表示されるウインドウと同様に、各ポートレットは自身が結果を表示する、ブラウザまたはPDA(Personal Digital Appliance) の画面の一部を「所有(own)」している。
ユーザの観点からは、ポートレットはユーザが講読し、自分の個人用のポータル・ページに付加し、パーソナライズしたコンテンツを表示するように構成する対象をなす、コンテンツ・チャネル(content channel)すなわちアプリケーションである。
コンテンツの提供者の観点からは、ポートレットは自身のコンテンツを公表するための手段である。
ポータルの管理者の観点からは、ポートレットはユーザが講読しうるように当該ポータルに登録することのできるコンテンツ・コンテナである。
ポータルの観点からは、ポートレットは当該ポータルのページ群のうちの1ページに表示すべき対象をなすコンポーネントである。
技術的な観点からは、ポートレットはポータル・サーバ上で実行されるとともに、ポータルのページ群中に埋め込むべきコンテンツを提供する一片のコードすなわち小さなアプリケーションである。最も簡単化して述べると、ポートレットはポータル内で実行されるJava(R)サーブレットである。
(通常はワールド・ワイド・ウェブ中の様々な場所に由来する)所定のページの各部分(ポートレット)は同じページの別の部分(ポートレット)と協働して、当該ページをサーフィンする、すなわち当該ページにアクセスするユーザのためにより高度の機能を発揮することができる。したがって、ポータルは複数のユーザが複数のチャネルを経由して複数の情報源にアクセスするための単一のアクセス点になる。
ポータルは様々なビジネス・モデル(すなわちB2C(business to consumer) 、B2B(business to business)、B2E(business to enterprise))に適用することができる。ポータルのパラダイムに迅速に適合する鍵は既存のウェブ・アプリケーションをポータルのフレームワーク(枠組み)に切目なく統合する能力にほとんど帰着する。
しかしながら、ウェブ・アプリケーションを切目なくポータルに統合するに当たっては様々な技術上の障害がいまだに存在する。
次に示すポータルの取り決め(artifact)が既存のウェブ・アプリケーションと協働する方法に関し、従来技術には限界がある。ウェブ・アプリケーションをポータル・アーキテクチャに統合する実装方法は明確には定義されていない。これらのエンティティ(構成要素)には次に示すものが含まれる。
ポータルに対する最初のhttp(形式の)要求
ポータル内におけるポートレットのセッション
ポータルから関連するウェブ・アプリケーションへのhttp要求
異なる複数のユーザ達が1つのポータルにアクセスすると、各ユーザの最初のhttp要求はポータル・サーバに向けられる(a)。各ユーザの最初のhttpセッションも上記ポータル・サーバが全体として「所有」している。各ポートレットはポートレット・セッションと呼ばれるそれ自身の独立したセッションを持っている。ポートレットが所定のウェブ・アプリケーションに由来する情報を表示する必要がある場合(b)には通常、次に示す技術的な障害が存在する。
(i)ポートレットがバックエンド・ウェブ・アプリケーションに対するhttp要求やhttp応答を生成するための既存の仕組みが存在しない。
(j)起呼側のポートレット(およびポートレット・セッション)に対する複数の要求と応答を管理して、複数の要求と応答をバックエンド・ウェブ・アプリケーション(およびウェブ・アプリケーションのセッション)に正確にマッピングするための既存の仕組みが存在しない。したがって、各々(ポートレットおよびウェブ・アプリケーションの双方)はそれなりに自身のユーザ・セッションを保持している。
これが原因で複雑になるのは、複数のポートレットが同一のウェブ・アプリケーションを呼び出し、当該ウェブ・アプリケーションがこれら複数のポートレットの要求を同一のウェブ・アプリケーションのセッション内で処理するときである。
(k)複数のポートレット・セッションとウェブ・アプリケーションのセッションとの間でセッション情報を中継するための既存の仕組みが存在しない。
バックエンドにある1つのウェブ・アプリケーションと対話する、同じポートレット・アプリケーション内にあるポートレット群から成る組を明確に定義すれば、参加するすべてのポートレットは正確なセッション情報を検索・取得してバックエンドにある上記ウェブ・アプリケーションに転送しうるから、当該ウェブ・アプリケーションから渡される情報が上記ポートレット群から成るポータルの情報の設定と一致するようにすることができる。そのような設定の例には、ロケール情報、当該特定のアクセスのユーザ・エージェントなどがある。たとえば、ウェブ・アプリケーションから送付される応答はそれ(当該応答)を表示している、ポータル・サーバ中のポートレットと同じロケールを使用中であるに違いない。
ポータルのユーザの資格証明書がバックエンド・ウェブ・アプリケーションによって確認(challenge)を受けずに済むようにサインオンを1回で済ますための既存の仕組みは存在しない。しかし、これは重要な要件である。これがないと、ユーザがウェブ・ページの1つの部分から同一のウェブ・ページの別の部分に移動した場合、当該ユーザの資格証明書は確認を受けることになる。というのは、各ポートレットは様々な発信(origination)と様々な識別要件を有するからである。
所定のポートレット・アプリケーションと関連するバックエンド・ウェブ・アプリケーションとの間でやり取りされる複数の要求または応答を同期させるための既存の仕組みは存在しない。
従来技術には同一のポートレット・アプリケーション内にある複数のポートレットが(同一のコンテキストを共用することにより)相互に協働するとともに、動的に統合される様々なウェブ・アプリケーションと協働しうるようにする方法が定義されていないという点に関して限界がある。
同じ「コンテキスト」を動的に共用することによって協働する複数のポートレットを含む、次に示す1つの慣習的なシナリオは上記限界を概念的に説明するのに役立つ。
1つのポータル・ウェブ・ページ上に3つのポートレットが表示されている場合において:
−−1つのポートレットは口座のリストを表示することにより口座総括表を示している
−−第2のポートレットは所定の口座の未払いの請求書を示している
−−第3のポートレットは所定の口座の注文履歴の総括表を示している
第2のポートレットと第3のポートレットは未払いの請求書(第2のポートレット)と注文履歴(第3のポートレット)を反映させることによりコンテキスト上、第1のポートレットに結び付くとともに、第1のポートレットの口座リストから選択された1つの口座と同期している。
従来技術の限界:
(i)協働して動作するポートレット・アプリケーション内にあるポートレット群から成るサブグループを定義する既存の仕組みが存在しない。
(j)所定のポートレット・アプリケーション内にあるポートレット群から成るこのサブグループの間で共用され(動的に変更しうる)コンテキストを定義する既存の仕組みが存在しない。ここにおけるコンテキストの例としてはポートレット1において選択する口座が挙げられる。このような口座の選択は動的に変更することができる。
(k)コンテキストの変更を動的に検出する既存の仕組みが存在しない。コンテキストの変更の例としては上記例のポートレット1において1つの口座から口座リスト中の別の口座へ選択を変更することが挙げられる。
(l)1つのコンテキストを共用しているポートレット群から成るサブグループ内において、参加しているポートレットごとに所定のアクション(すなわち応答)を登録する既存の仕組みが存在しない。上記アクションの例としては(ポートレット1において1つの口座から別の口座へ選択が移行することにより)コンテキストが変更されたら、未払いの請求書のリストを表示すること(ポートレット2のアクション)が挙げられる。
(m)上記動的なコンテキストを関連する統合ウェブ・アプリケーションに中継する既存の仕組みが存在しない。
ポートレット・アプリケーション内のポートレット群から成るグループ用にリフレッシュの順番を定義する仕組みが従来技術には存在しない。
(i)現在、ポータルの設計者が、表示中のポータル群から成る所定の組のリフレッシュの順序を指定するための手段が存在しない。
上述したシナリオでは、ポータルの設計者は第1のポートレット(口座のリスト)を最初にリフレッシュし、第2のポートレットを2番目にリフレッシュし、という具合に実行することを希望するであろう。そうすれば、第2のポートレットと第3のポートレットは正確な順番に実行される定義済みのアクション(リフレッシュ)を(当該ポートレットが使用されるときに)自動的に保持しうるようになる。
ビジネスの規則とユーザの役割を含むユーザ・プロファイル情報とに基づいて行なうポートレットの収集をサポートする明確に定義された仕組みがポータルのアーキテクチャには欠けている。
(i)ビジネスの規則に基づいてポータルのリソースをユーザごとに収集することを定義するための既存の仕組みは存在しない。
例:十代のポータル・ユーザはすべて、あるグループのポートレット群を閲覧し、シニアのポータル・ユーザはすべて、別のグループのポートレット群を閲覧する。
(j)実行時に動的に行なう、規則ベースであるとともにユーザ・ベースでもある、ポートレットのそのような収集のための既存の仕組みは存在しない。
ポータル・レベルのビジネス規則およびユーザ・プロファイル情報と、関連する統合されたバックエンド・ウェブ・アプリケーションとは共用されていない。
ビジネス規則またはユーザ区分情報と、統合されたウェブ・アプリケーションとが共用されていないから、これらの規則およびユーザの区分はポータルおよびその統合されたバックエンド・ウェブ・アプリケーション全体にわたって不変である(consistent:無矛盾である、一貫している)可能性がある。たとえば、十代の年齢範囲を定義する規則が存在する場合、そのような規則は不変性(consistency:無矛盾性、一貫性)ゆえに、統合されたウェブ・アプリケーションの管理下になければならず、かつ、それにとって適切なものでなければならない。
〔専門用語集〕
[ポートレット]
ポートレットとはエンド・ユーザがそのポータル・ウェブ・ページ内で見る可視の能動コンポーネントのことである。PCのデスクトップに表示されるウインドウと同様に、各ポートレットはブラウザまたはPDA(Personal Digital Appliance) の画面の一部を「所有(own)」しており、そこにポートレットに固有の情報を表示する。
[ポートレット・アプリケーション]
ポートレット群を集約してポートレット・アプリケーションを形成することもできる。ポートレット・アプリケーションはウェブ・アーカイブ・ファイル(WAR)を用いて配布し配備する。ポートレットには固有の拡張子があり、ウェブ・アプリケーションを配備するための記述子を標準化している。
[ポートレット・メッセージ]
ポートレット・アクションとポートレット・メッセージを使用している2つのポートレット間の通信にはポートレット・メッセージを使用する。ポートレットを送付する際、ポートレット・アクションを生成し、当該アクションをURLにエンコードする。(たとえばユーザがタスクの実行を試みることにより)URLをアドレス指定すると、アクション・リスナが呼び出され、必要なデータを送付するためのポートレット・メッセージを送付する。
[ポートレット・セッション]
ポートレット・インスタンスごとユーザごとにセッション情報を保持するために、ポートレット・インスタンスごとに、かつログオンしているユーザごとにポートレット・セッションを生成する。
現在のポータルにはビジネス規則とユーザのビジネス上の役割を含むユーザ・プロファイル情報とに基づきユーザごとに行なうポータル・リソースの収集をサポートする明確に定義された仕組みが存在しない。実行時に動的に行なわれる可能性のある、規則ごとかつユーザごとに行なうポータル・リソースのそのような収集のための既存の仕組みは存在しない。
本発明の様々な実例は従来技術の弱点を少なくとも1つ解消する。
本発明は規則データベース中のアクセス規則(たとえばポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則)に基づいてポータル・リソースを動的に表示する装置を提供する。
本発明の一実例は、
ユーザに表示するポータル・リソース(ポートレット、ページ、およびページ・グループ)を交換可能な規則エンジンに基づいて選択する手段と、
規則データベースと、
規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示するポートレット・アプリケーション収集エンジンとを備えている。
本発明の別の実例はユーザの役割に基づくポータル・リソースの表示を制御する規則を格納した役割データベースを用いて役割にアクセスする手段を備えている。
本発明の一実例によれば、規則に基づいてポータル・リソースを動的に表示する機能を備えた微細なレベルのパーソナライゼーションを実現することが可能になる。
本発明の一実例は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ポータルをユーザに表示する装置であり、前記ウェブ・ポータルは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している複数の関連するポートレットを表示するものである、装置であって、
前記ウェブ・アプリケーションへのアクセスを提供するウェブ・ポータルを運営するポータル・サーバと、
前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションであって、
前記ウェブ・アプリケーションへのアクセスを求めるユーザの要求に応えてポートレットを始動する手段と、
前記ポートレット用にポートレット・アプリケーション・セッション・オブジェクトを管理する手段と
を備えた
ポートレット・アプリケーションと、
ポートレットとポートレット・アプリケーション・セッション・オブジェクトとを関連付ける、ユーザの要求中のパラメータを保存するための、ポートレット・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと
を備えた
装置。
本発明の装置は関連するポートレットから受領する要求をウェブ・アプリケーションに伝達するために、ポートレット・アプリケーション・セッション・オブジェクトとウェブ・アプリケーションとの間で通信するポートレット・アプリケーション通信クライアントをポートレット・アプリケーション中に備えている。このポートレット・アプリケーションはポートレット・アプリケーション・セッション・オブジェクトに付随する各ポートレットに共通キーを割り当てる。
本発明の別の実例は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ポータルを複数のユーザに表示する装置でり、前記ウェブ・ポータルは、前記ユーザによってアクセス可能であるとともに情報を共用している複数のポートレットを表示するものである、装置であって、
ウェブ・ポータル上で動作して前記ウェブ・アプリケーションへのアクセスを提供するポータル・サーバと、
前記複数のユーザの各々用に前記ポータル・サーバ上で動作するとともに、前記複数のユーザの各々用に関連する一群のポートレットを管理するポートレット・アプリケーションであって、
前記ポートレット・アプリケーションの各々は、
前記ウェブ・アプリケーションへのアクセスを求める、前記複数のユーザのうちの1人の要求に応えてポートレットを始動する手段と、
前記ポートレット用にポートレット・アプリケーション・セッション・オブジェクトを管理する手段と
を備えている、
ポートレット・アプリケーションと、
ポートレットとポートレット・アプリケーション・セッション・オブジェクトとを関連付ける、ユーザの要求中のパラメータを保存するための、ポートレット・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと
を備えた
装置。
本発明の別の実例は次に示す装置を提供する。
複数のウェブ・アプリケーション用のウェブ・ポータルを1人のユーザに表示する装置であり、前記ウェブ・ポータルは、前記ユーザによってアクセス可能であるとともに情報を共用している関連する複数のポートレットを表示するものである、装置であって、
ウェブ・ポータル上で動作して前記ウェブ・アプリケーションへのアクセスを提供するポータル・サーバと、
前記ポータル・サーバ上で動作する、前記複数のウェブ・アプリケーションにそれぞれ関連する複数のポートレット・アプリケーションであって、
各ポートレット・アプリケーションは関連する一群のポートレットを管理しうるように適合しており、
前記ポートレット・アプリケーションの各々は、
前記複数のウェブ・アプリケーションの1つへのアクセスを求める、1人のユーザの要求に応えてポートレットを始動する手段と、
前記ポートレット用にポートレット・アプリケーション・セッション・オブジェクトを管理する手段と
を備えている、
複数のポートレット・アプリケーションと、
ポートレット・アプリケーション中のポートレットとポートレット・アプリケーション・セッションのポートレット・アプリケーション・セッション・オブジェクトとを関連付ける、ユーザの要求中のパラメータを保存するための、ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと
を備えた
装置。
本発明の装置の別の側面は複数のウェブ・アプリケーションとポートレット・アプリケーション・セッション・オブジェクトとを接続しうるように適合したユーザ・セッション情報テーブルを備えている。
本発明のさらに別の実例は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ポータルを1人のユーザに表示する装置であり、前記ウェブ・ポータルは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している関連する複数のポートレットを表示するものである、装置であって、
ウェブ・ポータル上で動作して前記ウェブ・アプリケーションへのアクセスを提供するポータル・サーバと、
前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションとを備え、
前記ポートレット・アプリケーションは、
前記ウェブ・アプリケーションへのアクセスを求める、1人のユーザの要求に応えて最初のポートレットを始動する手段と、
前記最初のポートレット用に前記ユーザ用のポートレット・アプリケーション・セッション・オブジェクトを生成する手段と、
前記ウェブ・アプリケーションへのアクセスを求める、前記ユーザの後続する要求に応えて前記最初のポートレットに付随する追加のポートを生成する手段と、
前記追加のポートレットと前記ポートレット・アプリケーション・セッション・オブジェクトとを関連付けるために保存済みのパラメータを使用する、ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと、
前記最初のポートレットおよび追加のポートレットから受領するユーザの要求を前記ウェブ・アプリケーションに伝達するために、ポートレット・アプリケーション・セッション・オブジェクトおよびウェブ・アプリケーションと通信するポートレット・アプリケーション通信クライアント(httpクライアント)を生成する手段と
を備えている、
装置。
前記装置は関連するポートレットから受領するユーザの要求を前記ウェブ・アプリケーションに伝達するために、ポートレット・アプリケーション・セッション・オブジェクトとウェブ・アプリケーションとの間で通信するポートレット・アプリケーション通信クライアントを前記ポートレット・アプリケーション中に備えてもよい。
前記ポートレット・アプリケーションはポートレット・アプリケーション・セッション・オブジェクトに付随する各ポートレットに共通キーを割り当てるのが望ましい。
複数のウェブ・アプリケーションとポートレット・アプリケーション・セッション・オブジェクトとを接続しうるように適合したユーザ・セッション情報テーブルを備えるのが好都合である。
本発明の別の実例は次に示す装置を提供する。
1つのウェブ・アプリケーション用のウェブ・ポータルを1人のユーザに表示する装置であり、前記ウェブ・ポータルは、前記ユーザによってアクセス可能であるとともに情報を共用している関連する複数のポートレットを表示するものである、装置であって、
ウェブ・ポータル上で動作して前記ウェブ・アプリケーションへのアクセスを提供するポータル・サーバと、
前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションであって、
前記ウェブ・アプリケーションへのアクセスを求める、1人のユーザの要求に応えてポートレットを始動する手段と、
前記ポートレット用にポートレット・アプリケーション・セッション・オブジェクトを管理する手段と
を備えた
ポートレット・アプリケーションと、
ポートレットとポートレット・アプリケーション・セッション・オブジェクトとを関連付ける、ユーザの要求中のパラメータを保存するための、ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと
を備えた
装置。
本発明の別の側面は次に示す方法を提供する。
ウェブ・ポータル中の関連する複数のポートレットの間で情報を共用する方法であって、
前記関連する複数のポートレットの各々用にポートレット・データ・ストアに対するアクセス権を生成するステップと、
前記関連する複数のポートレットの各々に、前記ポートレット・データ・ストアにデータを書き込むこと、および前記ポートレット・データ・ストアから格納済みのデータを読み出すことを許可するステップと
を備えた
方法。
前記方法は次に示すシステムを備えるのが好都合である。
データ処理システム上で動作しうるように適合したポートレット・アプリケーションが前記関連するポートレットを管理し、
前記ポートレット・データ・ストアが、前記ポートレット・アプリケーションの前記関連するポートレットの間でデータを交換するのを可能にするために、前記データ・ストア中の関連するポートレットによるデータの読み出しおよび書き込みを制御するポートレット・アプリケーション・セッション・オブジェクトが管理するポートレット・アプリケーション記憶装置を備えた
システム。
本発明の別の側面は次に示す装置を提供する。
ウェブ・ポータル中の関連する複数のポートレットの間で情報を共用する装置であって、
前記関連する複数のポートレットを管理するポートレット・アプリケーションと、
ポートレット・アプリケーション・データ・ストアと、
前記ポートレットが相互にデータを交換しうるように、前記関連する複数のポートレットによる前記データ・ストアに対する読み出し/書き込みアクセスを保証する手段と
を備えた
装置。
本発明のさらに別の側面は次に示すポートレット(アプリケーション)サーバを提供する。
ポータル・サーバ上で動作し、ウェブ・ポータル中の関連する複数のポートレットをホストしうるポートレット(アプリケーション)サーバであって、
前記関連する複数のポートレットを管理する手段と、
ポートレット・アプリケーション・セッション・オブジェクトを管理する手段と、
前記ポートレット・アプリケーション・セッション・オブジェクトが管理するポートレット・アプリケーション・データ・ストアとを備え、
前記ポートレット・アプリケーション・データ・ストアは当該ポートレット・アプリケーション・データ・ストアに対する読み出し/書き込みアクセスを前記関連する複数のポートレットに保証することにより、前記関連するポートレットが相互にデータを交換しうるようにしている、
ポートレット(アプリケーション)サーバ。
本発明の別の側面は次に示すポートレット(アプリケーション)サーバを提供する。
ポータル・サーバ上で動作し、ウェブ・ポータル中の関連する複数のポートレットをホストしうるポートレット(アプリケーション)サーバであって、
前記関連する複数のポートレットを管理する手段と、
ポートレット・アプリケーション・セッション・オブジェクトを生成して管理する手段と、
前記ポートレット・アプリケーション・セッション・オブジェクトが生成して管理するポートレット・アプリケーション・データ・ストアであって、前記ポートレット・アプリケーション・データ・ストアは当該ポートレット・アプリケーション・データ・ストアに対する読み出し/書き込みアクセスを前記関連する複数のポートレットに保証することにより、前記関連するポートレットが相互にデータを交換しうるようにしている、ポートレット・アプリケーション・データ・ストアと
を備えた
ポートレット(アプリケーション)サーバ。
前記ポートレット・アプリケーションはポートレット・アプリケーション・セッション・オブジェクトに付随する各ポートレットに共通キーを割り当てるのが好都合である。
本発明の別の側面は次に示すポートレット・アプリケーションを提供する。
ユーザがアクセスしうるウェブ・ポータル中の関連する複数のポートレットをホストする、ポータル・サーバ上で動作しうるポートレット・アプリケーションであって、
前記関連する複数のポートレットを管理するポートレット・アプリケーション手段と、
前記ユーザ用のポートレット・アプリケーション・セッション・オブジェクトを管理するポートレット・アプリケーション手段と、
関連するポートレットの各々に前記ポートレット・アプリケーション・オブジェクトへのアクセスを制御するキーを与えるポートレット・アプリケーション手段と
を備えた
ポートレット・アプリケーション。
本発明のさらに別の側面は次に示すポートレット・アプリケーションを提供する。
ユーザがアクセスしうるウェブ・ポータル中の関連する複数のポートレットをホストする、ポータル・サーバ上で動作しうるポートレット・アプリケーションであって、
前記関連する複数のポートレットを管理するポートレット・アプリケーション手段と、
前記ユーザ用のポートレット・アプリケーション・セッション・オブジェクトを生成して管理するポートレット・アプリケーション手段と、
関連するポートレットの各々に前記ポートレット・アプリケーション・オブジェクトへのアクセスを制御するキーを与えるポートレット・アプリケーション手段と
を備えた
ポートレット・アプリケーション。
各ユーザには1つのポートレット・アプリケーションを割り当て、各ポートレット・アプリケーションごとに、個別のポートレット・アプリケーション・オブジェクトに1つのキーを各ユーザごとに個別に割り当てるのが好都合である。
本発明の別の側面は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ポータルをユーザに表示する装置であって、
ユーザによる前記ウェブ・アプリケーションに対するアクセスを提供するためにウェブ・ポータルを運営するポータル・サーバと、
前記ポータル・サーバ上で実行されるとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
前記関連するポートレット用かつ前記ユーザ用のポートレット・アプリケーション・セッション・オブジェクトと、
前記ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと、
前記関連するポートレットから受領するユーザ要求を前記ウェブ・アプリケーションに伝達するために、前記関連するポートレットと前記ウェブ・アプリケーションとの間で通信する、前記ポートレット・アプリケーション・データ・ストアにリンクされたポートレット・アプリケーション通信クライアントとを備え、
前記通信クライアントは前記関連するポートレットが出す要求を格納するとともに同期させて前記通信クライアントが前記ウェブ・アプリケーションに対して同期するのを可能にする要求バッファを備えている、
装置。
前記ポートレット・アプリケーション通信クライアントは情報(たとえば要求)をネットワークを介してウェブ・アプリケーションに送信し、当該ウェブ・アプリケーションから情報(たとえば前記要求に対する応答)を受信するのが望ましい。
本発明の別の側面は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ポータルをユーザに表示する装置であって、
ユーザによる前記ウェブ・アプリケーションに対するアクセスを提供するためにウェブ・ポータルを運営するポータル・サーバと、
前記ポータル・サーバ上で実行されるとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
前記関連するポートレット用かつ前記ユーザ用のポートレット・アプリケーション・セッション・オブジェクトと、
前記ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアと、
前記関連するポートレットから受領するユーザ要求を前記ウェブ・アプリケーションに伝達するために、前記関連するポートレットと前記ウェブ・アプリケーションとの間で通信する、前記ポートレット・アプリケーション・データ・ストアにリンクされたポートレット・アプリケーション通信クライアントとを備え、
前記通信クライアントは前記関連するポートレットが出す要求を格納するとともに直列化して前記通信クライアントが前記ウェブ・アプリケーションに対して直列化するのを可能にする要求バッファを備えている、
装置。
前記ポートレット・アプリケーション通信クライアントは情報(たとえば要求)をネットワークを介してウェブ・アプリケーションまたはウェブ・アプリケーション・サーバに送信し、当該ウェブ・アプリケーションから情報(たとえば前記要求に対する応答)を受信するのが望ましい。
本発明の別の側面は次に示すポータル・サーバを提供する。
ウェブ・アプリケーションへのアクセスを提供するためにウェブ・ポータルを運営しうるように適合したポータル・サーバであって、
前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションであって、
前記ウェブ・アプリケーションへのアクセスを求めるユーザの要求に応じてポートレットを初期化する手段と、
前記ポートレット用のポートレット・アプリケーション・セッション・オブジェクトを管理する手段と
を備えた
ポートレット・アプリケーションと、
前記ポートレットと前記ポートレット・アプリケーション・セッション・オブジェクトとを関連付ける、ユーザ要求中のパラメータを保存するための、ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・オブジェクト・データ・ストアとを備え、
さらに、
前記関連するポートレットから受領するユーザ要求を前記ウェブ・アプリケーションに伝達するために、前記関連するポートレットと前記ウェブ・アプリケーションとの間で通信する、前記ポートレット・アプリケーション・データ・ストアにリンクされたポートレット・アプリケーション通信クライアント(httpクライアント)を備え、
前記ポートレット・アプリケーション通信クライアントはユーザ・セッション情報(たとえば、ユーザID、ユーザの資格証明書、言語設定、セッションのタイムアウト情報、セッションIDなどのユーザ・セッション情報から成る組から選択した情報)を格納するとともに、前記ユーザ・セッション情報を前記ウェブ・アプリケーションの対応するセッションにマップするユーザ・セッション情報ストア(マッピング・テーブル)を備えている
ポータル・サーバ。
前記セッション・タイムアウト情報は前記ポータル・サーバおよび前記ウェブ・アプリケーションのセッション・タイムアウト情報を含んでいるのが望ましい。
本発明の別の側面は次に示すポートレット・アプリケーションを提供する。
ユーザによるウェブ・アプリケーションへのアクセスを提供するポータル・サーバ上で動作するとともに、ポータル中の一群の関連するポートレットを管理するポートレット・アプリケーションであり、前記関連するポートレットは前記ポートレットに対するユーザの要求中のデータおよび命令を格納するポートレット要求パラメータ・マップを備えている、ポートレット・アプリケーションであって、
ユーザ用かつ前記関連するポートレット用のポートレット・アプリケーション・セッション・オブジェクトと、
前記ポートレット・アプリケーション・セッション・オブジェクトが制御するポートレット・アプリケーション・セッション・データ・ストアと、
前記関連するポートレットから受信するユーザ要求を前記ウェブ・アプリケーションに伝達するために、前記関連するポートレットと前記ウェブ・アプリケーションとの間で通信する、前記ポートレット・アプリケーション・ストアにリンクされたポートレット・アプリケーション通信クライアント(httpクライアント)とを備え、
前記通信クライアントは当該通信クライアントが前記ウェブ・アプリケーションのデータおよび命令を準備しうるようにするために、前記関連するポートレットのポートレット要求パラメータ・マップ中の要求を格納する要求バッファを備えている、
ポートレット・アプリケーション。
本発明の別の側面は次に示すポートレット・アプリケーション通信クライアント(httpクライアント)を提供する。
関連するポートレットから受信するユーザ要求をウェブ・アプリケーションに伝達するために、前記関連するポートレットと前記ウェブ・アプリケーションとの間で通信する、ポートレット・データ・ストアにリンクされたポートレット・アプリケーション通信クライアント(httpクライアント)であって、
前記ポートレット・アプリケーション通信クライアントはユーザ・セッション情報(たとえば、ユーザID、ユーザの資格証明書、言語設定、セッションのタイムアウト情報、セッションIDなどのユーザ・セッション情報から成る組から選択した情報)を格納するとともに、前記ユーザ・セッション情報を前記ウェブ・アプリケーションの対応するセッションにマップするユーザ・セッション情報ストア(マッピング・テーブル)を備え、
前記セッションのタイムアウト情報は前記ポータル・サーバおよび前記ウェブ・アプリケーションのセッションのタイムアウト情報を含んでいる、
ポートレット・アプリケーション通信クライアント(httpクライアント)。
上述したものは前記ポータル・サーバがタイムアウトする前に前記ウェブ・アプリケーションがタイムアウトする場合には前記ユーザを再認証することにより、ポータル・サーバと前記ウェブ・アプリケーションとの間のセッションのタイムアウトを一致させる、前記ポートレット・アプリケーション通信クライアント用の同期手段を備えているが望ましい。
本発明の別の側面は次に示すポートレット・アプリケーションを提供する。
ポータル・サーバ上で動作するとともに、ユーザがアクセスしうるウェブ・アプリケーション中の複数の関連するポートレットをホストしうるポートレット・アプリケーションであって、
前記関連するポートレットが相互にメッセージを交換しうるようにするメッセージング手段と、
前記複数の関連するポートレットを管理するポートレット・アプリケーション手段であって、
各関連するポートレットはコンテキスト名を記述したポートレット記述子を備えており、
前記関連するポートレットはコンテキストの値を定義した対応するコンテキスト名を有するポートレットから成る協働グループを備えており、
前記ポートレットから成る協働グループの各々はマスタ・ポートレットおよび少なくとも1つのスレーブ・ポートレットを備えており、
前記ポートレットから成るグループの各々は共通のコンテキスト名を共用している、
ポートレット・アプリケーション手段と、
マスタ・ポートレット中のコンテキスト値の変更を当該マスタ・ポートレットのスレーブ・ポートレットにブロードキャストによって通知する、前記ポータル・サーバ中の手段と、
ブロードキャストされるマスタ・ポートレットのコンテキスト値と一致するようにスレーブ・ポートレットのコンテキスト値を変更する、前記ポータル・サーバ中の手段と
を備えた
ポートレット・アプリケーション。
本発明の別の側面は次に示すポートレット・アプリケーションを提供する。
ポータル・サーバ上で動作するとともに、ユーザがアクセスしうるウェブ・アプリケーション中の複数の関連するポートレットをホストしうるポートレット・アプリケーションであり、前記ポータル・サーバはポートレットをリフレッシュする機能を備えている、ポートレット・アプリケーションであって、
前記複数の関連するポートレットを管理するポートレット・アプリケーション手段であって、
各関連するポートレットはポートレット記述子を備えており、
各ポートレット記述子はポートレット用のリフレッシュ順位の記述を備えており、
前記関連するポートレットはポートレットから成る協働グループを備えており、
ポートレットから成る前記協働グループの各々はマスタ・ポートレットおよび少なくとも1つのスレーブ・ポートレットを備えている、
ポートレット・アプリケーション手段と、
ポートレット群のリフレッシュ順位から成る順序で当該ポートレット群をリフレッシュする、ポートレット・アプリケーション手段中の手段と
を備えた
ポートレット・アプリケーション。
本発明のさらに別の側面は次に示すポートレット・アプリケーションを提供する。
ポータル・サーバ上で動作するとともに、ユーザがアクセスしうるウェブ・アプリケーション中の複数の関連するポートレットをホストしうるポートレット・アプリケーションであり、前記ポータル・サーバはポートレットをリフレッシュする機能を備え、前記関連するポートレットはポートレットから成る協働グループを備えている、ポートレット・アプリケーションであって、
前記複数の関連するポートレットを管理するポートレット・アプリケーション手段であって、
各関連するポートレットはポートレット記述子を備えており、
各ポートレット記述子はポートレット用のリフレッシュ順位の記述、および、ポートレットが所属する、ポートレットから成る協働グループ用のリフレッシュ記述順位を備えており、
ポートレットから成る前記協働グループの各々はマスタ・ポートレットおよび少なくとも1つのスレーブ・ポートレットを備えている、
ポートレット・アプリケーション手段と、
ポートレット群の順位から成る順序で当該ポートレット群をリフレッシュする、ポートレット・アプリケーション手段中の手段と、
ポートレット群のグループ・リフレッシュ順位から成る順序でポートレット群から成る協働グループ群をリフレッシュする、ポートレット・アプリケーション手段中の手段と
を備えた
ポートレット・アプリケーション。
マスタ・ポートレットの順位はスレーブ・ポートレットの順位よりも高い。
ポートレット・アプリケーションはまずグループ順位から成る順序でグループ群をリフレッシュし、次いで各グループ内をポートレットの順位から成る順序でリフレッシュするのが望ましい。
本発明の別の側面は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ページ・セッションをユーザに表示する装置であり、前記ウェブ・ページ・セッションは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している複数の関連する協働ポートレットを表示するものである、装置であって、
前記ウェブ・アプリケーションへのアクセスを提供するウェブ・ポータルを運営するポータル・サーバと、
前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
規則を格納するように適合した規則データベースにアクセスするためのアクセス手段であって、前記規則はポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、アクセス手段と、
ユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を、前記ユーザ(情報属性)が提供する情報に基づいて選択する選択手段と
を備えた
装置。
本発明の別の変形例では、前記選択手段は、
交換可能な規則エンジンと、
規則データベースと、
規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示するポートレット・アプリケーション収集エンジンとを備えている。
本発明の別の側面は次に示す装置を提供する。
ウェブ・アプリケーション用のウェブ・ページ・セッションをユーザに表示する装置であり、前記ウェブ・ページ・セッションは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している複数の関連する協働ポートレットを表示する、装置であって、
前記ウェブ・アプリケーションへのアクセスを提供するウェブ・ポータルを運営するポータル・サーバと、
前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
役割データベースにアクセスするための役割アクセス手段であって、前記役割データベースはポートレット、ページ、およびページ・グループから成る組のユーザへの表示をユーザの役割に基づいて制御する規則を備えている、役割アクセス手段と、
ユーザの特定済みの役割に基づき当該ユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を選択する役割選択手段と
を備えた
装置。
本発明の他の側面は次に示す製品を提供する。
コンピュータ読み取り可能な信号担持媒体と、
上述した本発明の実例の方法を実行しうるように適合し、前記媒体に記録されたコンピュータ・プログラム・コード手段とを備えた製品。
本発明の他の側面は次に示す製品を提供する。
コンピュータ読み取り可能な信号担持媒体と、
上述した本発明の実例のうちの1つの装置を実装しうるように適合し、前記媒体に記録されたコンピュータ・プログラム・コード手段とを備えた製品。
前記媒体は磁気的データ記憶媒体、光学的データ記憶媒体、生物学的データ記憶媒体、および原子的データ記憶媒体から成る群から選択されている。
前記媒体はモジュール化された搬送信号である。
前記信号はネットワーク上を伝送されるものである。
この章では本発明の好適な実施形態を説明する。
〔A.1.ポータルとウェブ・アプリケーションとの統合を可能にする〕
図2はウェブ・ポータル・サーバを用いてその使用方法を説明する、本発明の好適な実施形態を示す図である。
〔A.1.1 ポートレット・アプリケーションのhttpクライアント〕
(バックエンド・ウェブ・アプリケーションへのhttp要求を作成する)ポートレットはポートレット・アプリケーションhttpクライアント209を使用して、バックエンド・アプリケーション・サーバ210で実行されているバックエンド・ウェブ・アプリケーションへのhttp接続を開く。バックエンド・ウェブ・アプリケーションは複数の要求と応答にまたがるセッションのサポート、クッキの処理、および単一サインオン(SSO)の論理を実現するためにポートレット・アプリケーションhttpクライアント209を必要とする。1つのポートレット・アプリケーション中のすべてのポートレットは同一のポートレット・アプリケーションhttpクライアント・オブジェクト209を用いて少なくとも1つのバックエンド・ウェブ・アプリケーションに接続する。ポートレット・アプリケーション204ごとに1つのポートレット・アプリケーションhttpクライアント209が存在する。
〔A.1.2 ポートレット・アプリケーション・セッション〕
ポートレット・アプリケーション・セッション・オブジェクト208は所定のポートレット・アプリケーション中のすべてのポートレットが共用することのできる統合データ格納オブジェクトである。ポートレット・アプリケーション・セッション・オブジェクト208はインフラストラクチャを提供して、所定のポートレット・アプリケーション中の複数のポートレットが独立のユーザ・セッション(ポートレット・セッション204、205、206とも呼ばれる)を持つが、同じポートレット・アプリケーション・セッションを共用し、単一のウェブ・アプリケーション・セッションを用いてバックエンド・アプリケーション・サーバ210にあるウェブ・アプリケーションと通信しうるようにするものである。
〔A.1.3 ポートレット・アプリケーション・セッション・コンテキスト〕
ポートレット・アプリケーション・セッション・コンテキストはユーザごとポートレット・アプリケーションごとの情報を提供するものである。これは次のことを意味する。すすなわちこれにより、同じポートレット・アプリケーション(204、203)中のすべてのポートレットはそれらの間で共通の情報を共用する手段を保持しうるようになる。
〔A.1.4 セッション中継機構320〕
セッション中継機構はポータル・サーバが保持している最初のhttpセッションに由来する情報をポートレット・アプリケーションのhttpクライアントが生成するバックエンドのhttpセッションに渡すことを可能にするものである。この機構は次に示すインフラストラクチャを使用する。
[クッキ・テーブル305とクッキ探索キー]
クッキ・テーブル305(ユーザ・セッション情報のテーブル)はポータル・サーバのクッキをバックエンド・ウェブ・アプリケーション・セッションのクッキへマッピングするための主要な構成要素である。ポータル・サーバへのhttp要求のクッキと所定の1つのウェブ・アプリケーションに属すポートレット・アプリケーションhttpクライアントのクッキとの間のマッピング関係は一対一である。しかし、所定のポートレット・アプリケーションhttpクライアントは様々なウェブ・アプリケーション(各ウェブ・アプリケーションは独立のセッションを保持している)に対してhttp要求を生成することができる。したがって、ポータル・サーバ・セッションのクッキとバックエンド・ウェブ・アプリケーションのクッキとの間のマッピングは(バックエンド・ウェブ・アプリケーション・サーバが複数個存在するために)一対多になる可能性がある。
図13はこのマッピングを示す図である。同図には多数の項目が示されている。すなわち、
RQ1:ユーザ・エージェント(ブラウザ)のhttp要求からポータル・サーバへのクッキ
RQA:ポートレットhttpアプリケーション・クライアントのhttp要求からウェブ・アプリケーションAへのクッキ
RQB:ポートレットhttpアプリケーション・クライアントのhttp要求からウェブ・アプリケーションBへのクッキ
ポートレット・アプリケーションhttpクライアント209はこのテーブルを用いて、バックエンド・ウェブ・アプリケーション・サーバ210で実行されているバックエンド・ウェブ・アプリケーションと一致するクッキを探索する。
このクッキ・マッピング・テーブル305があると、ポータル・サーバ・セッションが満了したときにバックエンド・ウェブ・アプリケーション・セッションを自動的に満了させることが可能になる。
[クッキ探索キー]
ポートレット・アプリケーションhttpクライアント209はポートレット・アプリケーションごとに生成する。クッキ探索キーは同じポートレット・アプリケーション中のすべてのポートレットにアクセス可能なポータル・アプリケーション・セッション・オブジェクトに格納されている。このクッキ探索キーはポータル・サーバのhttpセッションとバックエンド・アプリケーションのhttpセッションとを一致させる任に当たる。
クッキ探索キーを使用すると、同じhttpクライアント・キーを共用している、所定のポートレット・アプリケーション中のすべてのポートレットが、現在ログインしているユーザ用にバックエンド・ウェブ・アプリケーションの情報の正確な組を検索・取得して転送することが可能になる。この結果、同じポートレット・アプリケーション中のすべてのポートレットが同期して動作して使用中のバックエンド・ウェブ・アプリケーションを更新しうるようになる。その結果、エンド・ユーザはバックエンド・ウェブ・アプリケーションの統合されたビューを複数のポートレットを通して見ることになる。
[ポートレット要求パラメータ・マップ]
ポートレット要求パラメータ・マップ308は共用アプリケーション・セッション・データストアに格納されているメモリ・オブジェクトであり、ポートレットごとポータル・サーバ・セッションごとに生成される。それは特定のポートレットに入来するユーザ要求が出すすべての要求のパラメータを格納するのに使用する。
〔A.2.ポートレットの動的コンテンツの同期〕
〔A.2.1 動的コンテキスト定義テンプレート〕
図5はポータルをバックエンド・ウェブ・アプリケーションに統合する様子を示す図である。図5を参照することは次に示す点で有益である。
動的コンテキスト定義テンプレート503は次に示す事項を動的コンテキスト・グループごとに定義する。
−−コンテキストとその種別(上述した例では、それは口座IDである)
−−定義済みコンテキストの値を変更しうるマスタ・ポートレット
−−定義済みコンテキストが変更されたときに通知されるスレーブ・ポートレット
−−コンテキスト変更の通知時におけるスレーブ・ポートレットの登録済み応答(すなわちアクション)
−−任意事項としてスレーブ・ポートレットのリフレッシュの順番を定義する(マスタは常に所定のグループ内において最初にリフレッシュされる)
1つの動的コンテキスト定義テンプレート503は1つまたは多数の動的コンテキスト・グループを含むことができる。しかし、各動的コンテキスト・グループは次に示すものしか含むことができない。
−−1つのマスタ・ポートレット
−−1つの定義済みコンテキスト
−−1つまたは複数のスレーブ・ポートレット
注記:所定のポートレットは複数の動的コンテキスト・グループに参加することができるが、各グループにおいて果たす役割は様々である。
〔A.2.2 動的コンテキスト・ポートレット・グループを生成するツール〕
このツール501は動的コンテキスト定義テンプレート503を読み込み、すべての動的コンテキスト・グループ用の動的コンテキスト・マスタ・ポートレットと動的コンテキスト・スレーブ・ポートレットを、指定された定義に従い、ポートレット配備記述子502をそれ相応に更新することにより生成する。
〔A.2.3 動的コンテキスト・グループ〕
動的コンテキスト・グループは同じコンテキストを共用するポートレット群から成るサブセットであり、1つの動的コンテキスト・グループの下にまとめられている。所定のポートレットは複数の動的コンテキスト・グループに属すことができる。
動的コンテキスト・グループ定義ドキュメント・インスタンス504は特定の動的コンテキスト・グループを定義するために使用する。
{動的コンテキスト・マスタ・ポートレット}
動的コンテキスト・マスタ・ポートレットは次に示す事項を担当する。
−−コンテキストの状態の変更を検出すること
−−すべてのスレーブ・ポートレットにコンテキストの状態の変更を通知すること
{動的コンテキスト・スレーブ・ポートレット}
動的コンテキスト・スレーブ・ポートレットは次に示す事項を実行する。
−−マスタ・ポートレットが通知したコンテキストの変更を支持すること
−−コンテキストの変更を通知されたときに対応するバックエンド・アプリケーションを指示する登録済みアクションを実行すること
{動的コンテキストのモデル}
ポートレットを相互に関連付けるために使用しうる動的コンテキストのモデルには次に示す2種類のものがある。
〔A.2.4 同期モデル〕
図14に示す同期モデルでは、マスタ・ポートレット101はスレーブ1701〜1703に動的コンテキスト・マスタ・ポートレットのコンテキストの状態の変更を通知する。その結果、すべてのスレーブは事前に定義した応答に基づくアクションを実行してマスタのコンテキストの状態の変更に同期することなる。
同期モデルの図
〔A.2.5 連結モデル〕
図1に示す連結モデルでは、マスタA(101)の状態が変更されると、スレーブA(102)の応答アクションが惹起される。スレーブAはマスタ・ポートレットBでもあるから、コンテキストBの状態が変更される。その結果、スレーブB(103)のコンテキストの変更の応答が惹起される。スレーブBは動的コンテキスト・グループCのマスタ・ポートレットでもあるから、スレーブCの応答アクションが惹起される。
〔A.2.6 ポートレット・トランザクション・マネージャ:〕
順番認識ポータル収集エンジン拡張。図15を参照する。ポートレット・トランザクション・マネージャ1802はポートレットの要求、応答、およびセッションの生成を含む、ポートレットの実行時におけるリフレッシュの順番付けの管理を担当するコンポーネントである。
(1)任意のポートレット・アプリケーション用のポートレットのうちで最初にリフレッシュすることになるポートレットを、所定のユーザ用のすべてのポートレットのうちで最初にリフレッシュするポートレットとして定義する。所定のページ内にあるポートレットをリフレッシュする順番を定義する既存の仕組みは存在しない。
したがって、実行時にマスタ・ポートレットを動的に特定できる何らかの論理が求められている。本発明では、単純なスクラッチボードを使用し、各ポートレットはリフレッシュされるたびにそれにマークを付ける。あるポートレットがこのスクラッチボードに初めてマークを付けると、当該ポートレットは自分が最初のポートレットすなわちマスタ・ポートレットであることが分かる。このリストに次にマークを付けるポートレットはそれに他のポートレットがすでにマークを付けているのを知ることができるから、自分がマスタ・ポートレットではないことがわかる、等々。次にポータル・ページをリフレッシュするときにも、最初のポートレットがこのリストに二重のマークを付ければ、それがマスタ・ポートレットになる。次いで、このマスタ・ポートレットは他のすべてのポートレットのマークを除去するとともに自身の二重のマークのうちの1つをも除去することにより、このリストを初期化して次の要求に備える。このアルゴリズムにより、ポートレットのポータル・サーバから要求が入来するたびにマスタ・ポートレットを動的に検出することが可能になる。
最初のポートレットをリフレッシュしたら、トランザクション・マネージャは動的コンポーネント・グループのマスタ・ポートレットとスレーブ・ポートレットをマッピングする際に事前に定義した順番で他のポートレット群をリフレッシュする。
(2)順番ソータ:順番ソータ・モジュール1804はポートレット群をそれらのリフレッシュの順番順にソートするために使用する。それはポートレット配備記述子を使用して各ポートレットのリフレッシュの順番を特定した後、それらをソートして要求ディスパッチ・エンジンの用に供する。
(3)順番認識要求ディスパッチ・エンジンの拡張:このエンジン1805はポートレットに対する要求をディスパッチするために使用する。このエンジン1805はポータル収集エンジンに優先する(override) 。その任務は適切なポートレット要求オブジェクトと応答オブジェクトを構築することである。さらに、商用のポータルに適用した場合には、すべてのポートレット用にポートレット・セッションを構築することである。次いで、トランザクション・マネージャがポートレットを実際にリフレッシュするためにそれを使用する。
(4)トランザクション・マネージャ・キャッシング・ユニット:トランザクション・マネージャ・キャッシング・ユニット1806はポートレットが生成した応答を要求ディスパッチ・エンジンがリフレッシュしたときに、当該応答をトランザクション・マネージャ1802がキャッシュするために使用する。これが必要なのは、ポータル収集エンジンがポートレットのリフレッシュを要求したときに、トランザクション・マネージャがこれらキャッシュ済みの応答をそれに返送しうるよにするためである。これにより、入来するポータル要求ごとにリフレッシュが二重に発生する問題を防止することが可能になる。
〔A.3.規則ベース収集と役割ベース収集〕
図11は本発明の好適な実施形態の規則ベースの動的収集コンポーネントの構造マップを示す図である。図示した実施形態のコンポーネントおよびそれらの動作の説明は以下の通りである。
[ポータル・リソース変換モジュール]
ポータル・リソース変換モジュール1015はポートレット、ページ、およびページ・グループを含むポータル・リソースの組を、外部規則エンジン1022が構文解析して処理しうる形態に変換する任に当たる。
[規則データベース]
規則データベース1001にはポータル収集エンジン1006用に企業の管理者が定義した規則が保持されている。
[ユーザ・リソース変換モジュール]
ユーザ・リソース変換モジュール1013はユーザ・リソースおよび様々なユーザ属性を、外部の規則エンジンが構文解析して処理しうる形態に変換する任に当たる。
[交換可能な規則エンジン]
規則エンジン1022は(本発明のこの実施形態では)外部の交換可能なエンジン、たとえばwebsphere(TM)パーソナライゼーション・エンジンである。規則エンジン1022は規則の動的な構文解析と実行のために使用する。このエンジンを実行すると、ユーザが見るはずのポータル・リソースの組が、ビジネス・ユーザが定義したビジネス規則と現在のユーザのユーザ属性とに基づいて生成される。
[ポータル役割ベース・パーソナライゼーション・エンジン]
ポータル役割ベース・パーソナライゼーション・エンジン1008はあるユーザがアクセスするのを許可されているポータル・リソースのリストと当該ユーザがアクセスするのを許可されていないポータル・リソースのリストとを当該ユーザの組織構成員資格に基づいて抽出する、役割を基準にリソースを選択するモジュールである。
役割ベース・エンジン1008はまず役割データベース1007にアクセスすることによりユーザの組織を調査する。ユーザの組織を特定したら、当該ユーザの役割は当該組織の役割と同じものであるとみなす。この後、役割ベース・パーソナライゼーション・エンジン1008はビジネス・ユーザがこの組織についてアクセス可およびアクセス不可と定義しておいたリソースのリストを抽出する。このリストの導出が済んだら、このモジュールはそれをポータル収集エンジンの収集済みリソース変換サブシステムに転送して後続する処理の用に供する。
[役割DB]
役割DB1007はポータル・サーバ用に組織のデータを保持している。それは様々なユーザの組織構成員資格に関する情報を保持している。また、それは組織の構成員がその役割に基づいてアクセスできるポータル・リソースのリストとアクセスできないポータル・リソースのリストも保持している。
[ポータル収集エンジン収集済みリソース変換サブシステム]
このモジュール1004は現在のユーザが閲覧するのを許可されているポータル・リソース(これにはポートレット、ページ、およびページ・グループが含まれる)のマスタ・リストを、規則ベース・パーソナライゼーション・エンジンと役割ベース・パーソナライゼーション・エンジンの出力に基づいてを生成する任に当たる。また、このモジュールは実際のポータル収集エンジン用のアダプタでもある。その任務にはこのマスタ・リストを生成することだけでなく、それを実際のポータル収集エンジンがアクセスしうる形態に変換し、エンド・ユーザ用に最終のウェブ・サイトを生成する用に供することも含まれる。
〔パートB:動作の説明〕
〔B.1 ポータルとウェブ・アプリケーションとの統合を可能にすることの説明〕
〔B.1.1 全般的な統合構造とフローチャート〕
図2はウェブ・アプリケーションとポータルとを統合する様子を示す図である。図3は統合の構造の示す図である。図4は統合のフローチャートを示す図である。
〔B.1.2 詳細な説明〕
図2を参照する。
バックエンド・ウェブ・アプリケーションとポータル・サーバとを統合すると、バックエンド・ウェブ・アプリケーション221はポータル・サーバ201からポートレットを経由して要求を受領する。そして、バックエンド・ウェブ・アプリケーション221は当該要求の生成元のポートレットに応答を返送する。
ウェブ・アプリケーション221が出した応答はポータル・サーバ201のポートレットを介して、ポートレットにアクセスしているユーザに表示する。
ポータル・アプリケーションhttpクライアント209が実装されていると、バックエンド・ウェブ・アプリケーションに対する要求と応答を、当該バックエンド・ウェブ・アプリケーションは密結合したセッションとして認識する。ポータル・アプリケーションhttpクライアント209はバックエンド・ウェブ・アプリケーションに対するhttp通信接続を開くために使用する。バックエンド・ウェブ・アプリケーションはセッション・サポート機能、クッキ処理機能、および単一サインオン(SSO)機能を備えるためにポータル・アプリケーションhttpクライアント209を必要とする。ポータル・アプリケーションhttpクライアント209が機能していると、ポートレットはウェブ・アプリケーションと効率的に通信することができる。ポートレット・アプリケーション(たとえばポートレット・アプリケーション205)中のすべてのポートレットはバックエンド・アプリケーション221の1つのポートレット・アプリケーション・セッション・オブジェクト211に対するアクセス権を有している必要がある。すなわち、同じポータル・アプリケーション中のすべてのポートレットがポータル・アプリケーションhttpクライアント209を共用している必要がある。
本発明者らが確認したところによると、このような共用を可能にするには、所定のポータル・アプリケーション中のすべてのポートレットが共用しうる統合セッション・オブジェクトが必要である。そのようなオブジェクトを実現するために、本発明はここではポートレット・アプリケーション・セッション・オブジェクト208を備えている。ポートレット・アプリケーション・セッション・オブジェクト208は商用のポートレット・アプリケーションが生成するオブジェクトである。ポートレット・アプリケーション・セッション・オブジェクト208は所定のポートレット・アプリケーション中のすべてのポートレット(たとえばポートレット・アプリケーション1、207中のポートレット204、205、206)がアクセスすることができる。ポートレット・アプリケーション・セッション・オブジェクト208がないと、所定のポータル・アプリケーション中の複数のポートレットはすべて独立のユーザ・セッションを持つようになるから、セッション関連の情報を共用できなくなる。
ポートレット・アプリケーション・セッション208にはポートレット・アプリケーションhttpクライアント209が格納されているから、同じポートレット・アプリケーション中のポートレット群の間でそれを共用することが可能になる。このポートレット・アプリケーション・セッションがないと、上記ポートレット群はバックエンドにあるたった1つのウェブ・アプリケーション・セッションとも通信することができなくなる。
ポータル・アプリケーション・セッション・オブジェクト208に格納されているすべてのデータはポータル・アプリケーション・セッションのコンテキストを表しており、ユーザごとポータル・アプリケーションごとに存在する。
ポートレット・アプリケーションhttpクライアント209はバックエンド・ウェブ・アプリケーション221用のセッション情報をすべて保持しているから、図3に示すセッション中継機構320用の基盤としてそれを使用する。
セッションを中継することにより、すべてのポータル・サーバ201に特有のセッション情報(たとえば言語情報、ユーザ・エージェント情報など)をバックエンド・ウェブ・アプリケーション221のセッション情報に中継することが可能になる。これは次のことを意味する。すなわち、バックエンド・ウェブ・アプリケーション221はユーザがポータル・サーバに送付した最初の要求に含まれているすべての要件に適合するデータ表記を伝達することができる。
たとえば、ユーザが、デフォルトの言語ロケールが「フランス語」に設定された、WAP(wireless application protocol)対応の移動装置を使用してポータルにアクセスする場合、ポータル・サーバ201に対する最初のhttp要求のITS言語パラメータは「フランス語」に設定され、そのHTTPヘッダのユーザ・エージェント・フィールドは「WAP」に設定されることになる。セッション中継機構320はこの情報をウェブ・アプリケーション221に中継する。そして、当該ウェブ・アプリケーションは上記ユーザの移動装置にフランス語で表示するのに適した応答をフランス語で返す。もしセッションの中継がなければ、ウェブ・アプリケーションはデフォルトの装置(たとえばインターネット・ブラウザ)に適したデフォルトの言語(たとえば英語)で上記情報を返すことになるだろう。その場合、検索・取得した情報は上記ユーザの移動装置に適合していないだろうから、上記ユーザはそれを見ることができないだろう。
次に、図3に示す構造図中の構成要素群を参照するが、図4のプロセス・ステップ群は列挙型ステップ群によって示すことにする。
〈ステップ401〉ユーザがウェブ・ポータル上でポートレットと対話する。とえば、当該ユーザのウェブ・ブラウザ上にあるポートレットに表示されているリンクまたはオブジェクトをコンピュータのマウスを用いてクリックすることにより対話する。各ポートレットはそれ自身のポートレット・セッション310を持っている(ポートレット・セッションは従来技術の一部である)。ユーザの対話の一部として、遠隔要求306をバックエンド・ウェブ・アプリケーション307に行ない続ける。
(2)〈ステップ403〉ポートレット・セッションにおけるすべてのパラメータをバックエンド・ウェブ・アプリケーションに正確に渡すために、各ポートレット要求のパラメータのリストをポートレット要求パラメータ・マップ(#8)308に格納する。そして、これらのパラメータを遠隔のバックエンド要求に渡す。
(3)〈ステップ404〉商用のポートレットではhttpクライアント・キー301を使用して既存のポートレット・アプリケーション・セッション・オブジェクト208およびポートレット・アプリケーションhttpクライアント303が存在するか否かを判断するが、その判断はポートレット・アプリケーション・データ・ストア(#4)302にアクセスすることにより行なう。〈ステップ405〉ポートレット・アプリケーション・セッション・オブジェクト208およびポートレット・アプリケーションhttpクライアント303の一方のものが存在しない場合、同じポートレット・アプリケーション内のすべてのポートレット用に、当該ものを新たに生成る。(〈ステップ407〉上記一方のものが存在する場合には、既存の当該ものを使用する。)
(4)〈ステップ406〉最初のポートレット・セッションが発行した各ユーザの資格証明書をクッキ・テーブル305に保存する。
(5)〈ステップ408〉クッキ・テーブル305に由来するユーザの資格証明書とポートレット要求パラメータ・マップ308に事前に保存しておいたパラメータとを用いてバックエンド・ウェブ・アプリケーションに対する新たなhttp要求を構築する。
(6)〈ステップ409〉遠隔ウェブ・アプリケーション307に対する呼び出しを行なう。
(7)〈ステップ410〉遠隔ウェブ・アプリケーション307は上記呼び出しに応答してポートレットに表示を行なわせる。
〔B.2 ポートレットの動的コンテキストの同期〕
〔B.2.1 開発時の説明〕
図5を参照する。図5はポータルにバックエンド・ウェブ・アプリケーションを統合する様子を示す構造図である。図5から、ポータルの開発者は動的コンテキスト・ポートレット・グループ化ツール501を用いて動的グループ定義インスタンス504の各々を新たに生成しうることが分かる。このインスタンスは関連するポートレット群から成るグループであり、どのポートレットがスレーブであり、どのポートレットがそれらスレーブのマスタであるのかを定義する。動的グループ定義の必要な構成要素は動的コンテキスト・グループ定義テンプレート503に指定されている。
ユーザは同じツール501を用いて既存の動的コンテキスト・グループの定義を更新する。
ユーザが最新の動的コンテキスト・グループの定義を行なったら、動的コンテキスト・ポートレット・グループ化ツール501は適切なポートレット・アプリケーション配備記述子502を更新してグループで定義されている関係を反映させる。
図6を参照する。図6はポータルの統合を示すフローチャートを示す図である。図6では上述したプロセスのステップ群がより明瞭に視覚化されている。
ユーザが動的コンテキスト・グループを生成(608)または更新(609)する必要がある場合、当該ユーザはグループ化ツール501を使用することができる(図5)。
〈601〉動的コンテキスト・グループ化ツールは動的コンテキスト・グループ定義テンプレート503で指定されているものに基づいてユーザの入力を促すが、動的コンテキスト・グループ化ツールを更新する場合には既存の動的コンテキスト・グループ・インスタンスを読み込み、それを動的コンテキスト・グループ定義テンプレート503を用いて検査する。
〈603〉ユーザは動的コンテキスト・グループを定義または更新するのに必要な情報を指定する。
〈605〉動的コンテキスト・グループ・インスタンス504を生成する。
〈606〉関連するすべてのポートレットの配備記述子を更新する。
(動的コンテキスト・グループ)
図7はポートレット用の動的コンテキストを示す図である。動的グループ701はマスタ・ポートレット704、スレーブ・ポートレット705、およびスレーブ・ポートレット707から成る。
グループ703はマスタ・ポートレット705、スレーブ・ポートレット706、およびスレーブ・ポートレット707から成る。
動的グループ702はマスタ・ポートレット704およびスレーブ・ポートレット708から成る。
ポートレット・アプリケーション中のポートレット群によって表されるデータがバックエンド・アプリケーションのレベルで同期している場合、当該ポートレット群はウェブ・アプリケーションから当該データを検索・取得することにより、当該データの調整済みのビューを配信する。しかし、ポートレットの対話がすべてバックエンド・ウェブ・アプリケーションの変更を伴うわけではない。動的コンテキストは「ポータル上でユーザが(at the glass)」同期をとるものとして機能する。それが最も効率的なのは、コンテキストの変更が別のクエリを必要とする場合である。たとえば、口座リストから別の口座を選択するには、選択対象の口座を用いてリフレッシュした請求書の情報を表示する必要がある。
従来技術のシステムでは、ポートレットは通常、互いに無関係であった。本発明はポートレット・アプリケーションを開発して構成する時に、ポートレット相互間の関係をマップするとともに、それらの相互依存関係を明確にする方法と装置を提供する。ポートレット自体は変更する必要がない。
ポートレット間の依存関係はマスタ−スレーブ関係が定義してある動的コンテキスト関係テンプレート503中に定義することができる。
動的コンテキスト関係テンプレート503は次に示す事項を定義した、XML準拠のデータ表記としてエンコードするのが望ましい。すなわち、
−−動的コンテキスト・グループを構成するポートレットから成るサブセット
−−動的コンテキスト・グループのマスタ・ポートレット
−−この動的コンテキスト・グループのスレーブ・ポートレット
−−コンテキストの状態が変更されたときにスレーブが実行する必要のあるスレーブ・アクション
−−この動的コンテキスト・グループのすべての構成員が共用するコンテキスト
動的コンテキスト・グループ定義インスタンスの例を以下に示す。
<DynamicContextGroup>
<DynamicContextGroupName>OrderRelatedPortletGroup
</DynamicContextGroupName>
<DynamicContextMasterPortlet>
OrderItems
</DynamicContextMasterPortlet>
<DynamicContext>itemName
</DynamicContext>
<DynamicContextSlavePortlet>
<DynamicContextSlavePortletName>UPSTracking
</DynamicContextSlavePortletName>
<SlavePortletAction>
http://inventoryserver.com/inStock/
</SlavePortletAction>
</DynamicContextSlavePortlet> </DynamicContextGroup>
<DynamicContextGroup>
<DynamicContextGroupName>StockInventoryPortletGroup
</DynamicContextGroupName>
<DynamicContextMasterPortlet>
InStockInventory
</DynamicContextMasterPortlet>
<DynamicContext>itemSKUnumber
</DynamicContext>
<DynamicContextSlavePortlet>
<DynamicContextSlavePortletName>OrderedItems
</DynamicContextSlavePortletName>
<SlavePortletAction>
http://myserver.com/lastOrdered/
</SlavePortletAction>
</DynamicContextSlavePortlet> </DynamicContextGroup>
動的コンテキスト・グループ定義インスタンスの注釈:1つの動的コンテキスト・グループ定義は1つのインスタンスである。しかし、複数の動的コンテキスト・グループ定義を複数のインスタンスを定義する1つのファイルに統合してもよい。上述した例では、3つのポートレットから成るポートレット・アプリケーションにおいて2つのポートレットの組を定義している。
第1の動的コンテキスト・グループでは、ポートレット間で共用される動的コンテキストはitemNameである。OrderedItemsなる名前のポートレットは動的コンテキスト・マスタ・ポートレットとして機能する。ポートレットUPSTracking およびポートレットInStockInventoryは動的コンテキスト・スレーブ・ポートレットとして機能する。
第2の動的コンテキスト・グループでは、ポートレット間で共用される動的コンテキストはitemSkuNumber である。InStockInventoryなる名前のポートレットは動的コンテキスト・マスタ・ポートレットとして機能する。ポートレットOrderedItemsは動的コンテキスト・スレーブ・ポートレットとして機能する。
各動的コンテキスト・マスタ・ポートレットはユーザのHTTP要求を監視し、動的コンテキストを探索する。上記要求中に動的コンテキストを発見したら、当該動的コンテキスト・マスタ・ポートレットはスレーブ・ポートレットに動的コンテキスト(これはhttp要求中の名前と値の対パラメータである)を送付する。
たとえば、ポートレットOrderedItemsは「Pentium(R)IV」にセットされた属性itemNameを有するHTTP要求を受信すると、その動的コンテキストをポートレットUPSTracking とポートレットInStockInventoryに送付し、動的コンテキストには値「Pentium(R)IV」を有するコンテキストitemNameが受信時にセットされていたことを通知する。
各動的コンテキスト・スレーブ・ポートレットは同じ動的コンテキスト・グループのすべてのスレーブ・ポートレットに宛てたマスタの通知を監視(listen to)している。マスタの通知を受信したら、対応するスレーブのアクションを呼び出す。それは属性「SlavePortletAction」の下に動的コンテキスト・グループ定義インスタンス中で定義されているアクションURLに上記動的コンテキストを付加することにより行なう。
たとえば、ポートレットinStockInventoryが、動的コンテキスト型「itemName」と値「Pentium(R)IV」を備えた動的コンテキストをポートレットOrderedItemsから受領した場合、それは次に示すURLからデータを検索・取得する。
http://inventoryserver.com/inStock/itemName=PentiumIV
動的コンテキスト・グループ定義テンプレート用のコーディングの例を次に示す。
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:cep="http://www.ibm.com/WebsphereCommerceEnabledPortal/DynamicContextGroupDefinitionSchema">

<annotation>
<documentation xml:lang="en">
Schema for Websphere Commerce Enabled Portal Dynamic Context
Group Definition
Copyright 2002 IBM Corporation
<documentation>
</annotation>

<!-Dynamic Context Group Instance -->
<xsd:element name="DynamicContextGroup"
type="DynamicContextGroupDefinitionTemplate",
minOccurs="1"/>

<!-Dynamic Context Group Definition Schema_<xsd:complexType name="DynamicContextGroupDefinitionTemplate">
<xsd:sequence>
<xsd:element name="DynamicContextGroupName" type="xsd:string"/>

<xsd:element name="DynamicContextMasterPortlet" type="PortletName"/>
<!- only one dynamic context per dynamic context group ->
<xsd:element name="DynamicContext" type="ContextParameter"maxOccurs="1"/>
<xsd:element name="DynamicContextSlavePortlet" type="SlavePortlet", minOccurs="1"/>
</xsd:sequence> </xsd:complexType>

<xsd:complexType name="SlavePortler">
<xsd:sequence>
<xsd:element name="DynamicContextSlavePOrtlet" type="PortletName"/>
<xsd:element name="SlavePortletAction" type="xsd:string"/>
<xsd:element name="SlavePortletTrfreshPriority" type="xsd:decimal", minOccurs="0"/>
<!- master's context is in the slave url if slave param map is absent -->
<xsd:element name="SlaveParamMapToContext" type="ContextParameter" minOccurs="0"/>
</xsd::sequence>
</xsd:complexType>

<xsd:simpleType name="PortletName">
<xsd:string>
</xsd:simpleType>

<!- name of the parameter in master's request url -->
<xsd:simpleType name="ContextParameter">
<xsd:string>
</xsd:simpleType>

</xsd:schema>
〔B.2.2 実行時〕
この章は図8と図9を参照することにより最もよく理解しうるようになる。図8は定義インスタンス中で指定されている動的コンテキスト用にポートレット・アプリケーションを初期化する様子を示す図である。図9は動的コンテキスト・ポートレット・グループの実行時フローである。
動的コンテキストの実行時の側面を扱う主要なコンポーネントには2つのものがある。
(1)DynamicContextActionListner (904)(ポートレット・アクション・リスナ)−−これはマスタ・ポートレット中の動的コンテキストの変更を監視(listen for)する。すべての動的コンテキスト・ポートレット・グループ中のマスタ・ポートレットにはDynamicContextActionListner が付加されている。
(2)DynamicContextMessageListner(906)(ポートレット・メッセージ・リスナ)−−このメッセージ・リスナは特定の動的コンテキストが定義されているグループのマスタ・ポートレットが出す通知を監視する。動的コンテキスト・ポートレット・グループ中のすべてのスレーブ・ポートレットにはDynamicContextMessageListnerが付加されている。
[実行時フローの逐次的説明:]
ポートレットを初期化する時に(図8:801)、すべてのマスタ・ポートレットは定義済みの動的コンテキストをポートレット記述子に基づいて(802、805)マスタ・ポートレットのアクション・リスナに付加する(806)。すべてのスレーブ・ポートレットについて、動的コンテキストの型、アクションのurl、パラメータのマッピング、およびリフレッシュの順番をポートレット記述子から検索・取得して(802、809)スレーブのポートレット・メッセージ・リスナに付加する(810)。
(1)ユーザが動的コンテキスト・ポートレット・グループのマスタ・ポートレットと対話すると、動的コンテキストが変更される(901)。
(2)マスタのポートレットDynamicContextActionListner がユーザのアクションを検出する(902)。
(3)DynamicContextActionListner がマスタ・ポートレットの要求オブジェクト中の動的コンテキストに対応する名前/値対をセットする(904)。
(4)マスタ・ポートレットが動的コンテキストの値を取得し、同じ動的ポートレット・グループ内のすべてのスレーブ・ポートレットにそれを通知する(905)。
(5)所定のマスタ用のスレーブ・ポートレットに付随するDynamicContextMessageListnerが上記通知(動的コンテキストの値)を受領する(906)。
(6)DynamicContextMessageListnerがスレーブ・ポートレットのポートレット要求オブジェクト中のDynamicContextの値をセットする(907)。
(7)スレーブ・ポートレットが動的コンテキストの値を取得する(1008。)
(8)コンテキストと何らかのパラメータとがマッピングされている場合、スレーブ・ポートレットは所定のスレーブ・ポートレット用に定義されたアクションを変更する(1009)。
(9)マッピングが指定されていない場合、動的コンテキストの名前/値対をスレーブのポートレット・アクションに付加する。
(10)スレーブ・ポートレットが動的コンテキスト・グループ・インスタンス定義中に定義されているアクションを実行する(1011、1012)。
〔B.3 規則ベースの動的収集と役割ベースの動的収集〕
この章では図11〜図15を含む多数の図を参照する。図11は役割ベースの動的収集のコンポーネントの構造マップを示す図である。図12は規則ベースの動的収集のコンポーネントの構造マップを示す図である。図13は規則ベースの動的収集のフローチャートを示す図である。図14は規則ベースの動的収集のフローチャートを示す図である。図15は規則ベースの動的収集のフローチャートを示す図である。
ポートレット・サーバ用の役割ベース動的収集のコンポーネントおよび規則ベース動的収集のコンポーネントは規則データベースおよび役割データベースならびに各役割および各規則用のコンテンツ・グループの概念に基づいている。
規則用のコンテンツ・グループは図11に示す規則DBコンポーネント1001中に保持する。同様に、役割用のコンテンツ・グループは図11に示す役割DBコンポーネント1007中に保持する。各コンテンツ・グループは当該特定の役割または規則の範囲内に入るものと評価済みのユーザが有するアクセス権の対象をなす1組のポータル・サーバ・リソースから成る。
このスキーム(枠組み)中の別の主要なコンポーネントは交換可能規則エンジン1022である。このエンジンの仕事は変換済みのユーザ属性を読み込むこと、および、それらのユーザ属性に基づいて、事前に定義済みのあるユーザ・グループの構成員資格を有するユーザから成る組を実行時に動的に決定することである。また、このエンジンはこれら動的なユーザ・グループの組を役割DBと規則DB中に定義済みのコンテンツ・グループの組にマップすることも行なう。この交換可能規則エンジンはこれらの仕事を管理するためのGUIを備えているのが望ましい。図19に示すスクリーン・ショットはWebSphere(R)パーソナライゼーション・サーバ・エンジンを用いてこれらの仕事を管理する方法を示している。
たとえば、図19は「MaleTeen」と呼ばれる動的グループを定義し、16歳〜19歳のすべての男子ユーザをこのグループに割り当てる方法を示している。
図20に示すように、その属性に基づいてティーンエイジャの男子のであると動的に評価されたすべてのユーザは自分達のために「maleteenaction」コマンドを実行されることになる。この「maleteenaction」コマンドは動的規則・役割ベース・ポータル収集エンジン1022に役割DB1007から十代の男子のグループ用のコンテンツ・リソースを選定するように命じるコマンドである。
開発時には、1組のポータル・リソース(たとえばページ、ポートレットなど)を役割DBと規則DB中の特定のコンテンツ・グループに割り当てることは会社の管理職の仕事である。これは現在、規則DBと役割DBを直接にロードするSQLスクリプトを用いて行なっている。
〔B.3.1 実行時における規則ベースの動的収集と役割ベースの動的収集を可能にすることの説明〕
実行時にポータル・ユーザ用に最初に実行するコマンドは規則ベース・エンジン用のラッパ・コマンドである。実際、このコマンドはプロキシ(代理人)であり、実際の交換可能規則エンジンが行なうユーザ属性の評価を始動させるものである。
次のステップでは、規則エンジンはユーザの属性を当該ユーザの格納済みプロファイルから読み込む。その際、ユーザ・リソース変換モジュールを用いてユーザ・リソースを自分が理解しうる形態に変換する。
図21は「MaleteenAction」と呼ぶ新たなアクションを生成する様子を示す図である。「MaleteenAction」は規則DB中で「maleteengrp 」と呼ばれているコンテンツ・グループ中で定義済みのすべてのポータル・リソースを選択するアクションである。
図20は動的ユーザ属性に基づいて「MaleTeens 」に分類するための事前に生成済みの規則の範囲に入るすべてのユーザについて「maleteengrp 」のコンテンツを選択するように動的収集モジュールに命じる動的収集モジュールのコマンドを生成する様子を示す図である。
図20は所定のビジネス規則(たとえば十代の男子(maleteen)グループを構成するものを定義しているビジネス規則)が、所定のユーザについて当該ユーザのある属性を用いて収集すべきコンテンツのうちそのような分類に適合するものを決定する際に効果を表す(たとえばMaleteenActionを実行させる)様子を示す図である。
ユーザの属性を読み込んだら、交換可能規則エンジンはこのユーザの動的グループ構成員資格を、図21に示す様々な動的グループ用に定義された規則に基づいて評価する。
このユーザ用の動的グループの組が確定したら、規則エンジンは図21に示すこの動的グループ用に定義されたコンテンツ選択アクションを実行することにより、当該ユーザ用に適切なポータル・コンテンツを選択する。これらのアクションは実行されると、規則DB中に自分用の定義を有する、コンテンツ・グループに由来するポータル・リソースの組を返す。
次の実行ステップはこのユーザに割り当てられた役割を役割エンジンが評価することである。役割エンジンは(ユーザ・プロファイル属性から抽出した)組織構成員資格を用いて当該ユーザの役割用のコンテンツ・リソースの組を役割DBから抽出する。次いで、これらのリソースを先行する組において生成した規則ベース・ポータル・リソースのすでに存在するリストに付加する。
次いで、このリストを動的ポータル収集エンジンに転送して実行の用に供する。次いで、動的ポータル収集エンジンはこのリストが特定しているポータル・リソースを選択してこの現在のユーザ用にデフォルトのポータル・ビューを構築する。
〔まとめ〕
(1)共通のバックエンド・ウェブ・アプリケーションを統合して実装している
ポートレット・アプリケーションhttpクライアントとポートレット・アプリケーション・セッションとを使用すると、共通のバックエンド・ウェブ・アプリケーションを統合するモデルが得られる。これを使用すると、同じポートレット・アプリケーション中の複数のポートレットが同じバックエンド・ウェブ・アプリケーションと通信することが可能になる。
本発明のこの実装によって、次に示す事項が可能になる。
(i)ネイティブ(固有)のポートレットの統合を実現して、ブラウザを別々に立ち上げる必要をなくすとともに、同じバックエンド・ウェブ・アプリケーションにアクセスするのにユーザIDとパスワードを求めるプロンプトを複数個提示する必要をなくすこと、および、
(ii)セッションを管理することにより、バックエンド・アプリケーションに対して複数の要求を行なうとともに、それから複数の応答を受領すること。
(2)共通のシステムを単純化することにより、ツーリングを単純化している
本発明はバックエンド・サーバで動作している既存のウェブ・アプリケーションを用いてポートレット・アプリケーション群を統合する容易かつ迅速な方法を提供する。しかも必要なのは上記ポートレット・アプリケーション群の配備記述子に、関連するバックエンド・ウェブ・アプリケーションのurlを記載することだけである。これにより、統合に共通する仕事を利用するツーリングを構築することが可能になる。
(3)ポートレット・アプリケーション中のポートレット群が共通のセッションと共通のセッション・データとを共用している
ポートレット・アプリケーション・セッション・オブジェクトを実装すると、同じポートレット・アプリケーションのポートレット群が、ポートレット・アプリケーション中で一意であるとともにポータル・サーバの最初のhttpセッションのそれとは異なる共通のデータを当該ポートレット群間で共用することが可能になる。これにより、同じポートレット・アプリケーション中のポートレット群間で一意のデータを共用することが可能になる。
(4)ポートレット・セッションとバックエンド・セッションが共通のセッション・データを共用している
セッションの中継を実装すると、ポータル・サーバとそのバックエンド・ウェブ・アプリケーションとの間で共通のセッション・データを共用することが可能になる。これにより、バックエンド・ウェブ・アプリケーションがポータル・サーバから情報を受領することが可能になる。その結果、ウェブ・アプリケーションのビジネス論理はポートレット・サーバから渡されるこの情報を利用することが可能になる。
たとえば、現在のポートレットの状態が当該ポートレットの最大化ビューを表示することである場合、バックエンド・ウェブ・アプリケーションはポートレットの通常のビューの場合とは対照的に、詳細なビジネス情報を返送することにより、この部分(最大化ビュー)の情報を受領し、それを利用することができる。
通常のビューの場合には、バックエンド・ウェブ・アプリケーションは上記情報の簡略版を送付するだけである。
(5)密結合のバックエンド・ウェブ・アプリケーションのセッションをポータル・サーバから峻別している
ポートレット・アプリケーション・セッション、ポートレット・アプリケーション・セッション・オブジェクト、ポートレットhttpクライアント、およびセッション中継機構を設けたから、バックエンド・ウェブ・アプリケーションは自分自身のセッションをポータル・サーバのセッションから峻別しておくことができるが、ポータル・サーバのセッションとの間におけるクッキの共用は続けている。これにより、バックエンド・ウェブ・アプリケーションは独立かつ正確に動作しうるようになるから、1つの仮想クライアントとして、ポータル中の様々なポートレットからポートレット要求を受領しうるようになる。その結果、バックエンド・ウェブ・アプリケーションとの密結合のセッションが可能になる。
(6)ポータル・サーバとバックエンド・ウェブ・アプリケーションをまたいだ単一サインオンを実現している
セッションの中継を組み込むと、単一サインオン機能を実現することができる。その結果、ユーザはポータル・サーバに1度ログオンすれば、関連するバックエンド・ウェブ・アプリケーションにログオンするためにユーザ資格証明書を再提出する必要がなくなる。これを可能にしているのはポータルへのhttpセッションと、ポートレットhttpクライアントからバックエンド・ウェブ・アプリケーションへのhttpセッションとの間の一対一マッピングを備えたクッキ・テーブルである。
(7)バックエンド・ウェブ・アプリケーションの振る舞いとポータル・サーバの振る舞いとが同期されている
セッションの中継を組み込むと、切れ目のない統合を実現することが可能になる。それはバックエンド・ウェブ・アプリケーションの振る舞いを同期させることにより行なう。この同期はポータルのセッションからバックエンド・ウェブ・アプリケーションのセッションへセッション情報を中継することにより行なう。
以下、いくつかの例を示す。
あるポータル・サーバにおける言語とロケールの設定をそのバックエンド・ウェブ・アプリケーションに渡すことが可能になるから、当該バックエンド・ウェブ・アプリケーションは当該ポータル・サーバの(ロケール+言語)の設定に基づいて応答メッセージを作成することが可能になる。
別の例を挙げる。
ポータル・サーバが出すセッション満了情報をバックエンド・ウェブ・アプリケーションに渡すことが可能になるから、バックエンド・ウェブ・アプリケーションのセッションを、ポータルのセッションがタイムアウトするのと同時にタイムアウトさせることが可能になる。バックエンド・ウェブ・アプリケーションはポータル・サーバから中継される、ポータルの状態とイベントに応答しうるようになる。
(8)同じポータル・ページ内にあるコンテンツが同期している
動的コンテンツ・ポートレットをグループ化することにより、同じ動的コンテンツ・グループ内にあるポートレット間の協働が可能になるから、ビジネスのプロセスと情報を統合し同期させることが可能になる。
各ポートレットは複数の動的コンテキスト・グループに参加することが許されている。これにより、ポータルの管理者がポートレット群を動的コンテンツ・ポートレット・グループにグループ化するための開放的かつ単純なプログラミング・モデルが実現する。
動的コンテキスト定義の構造が単純だから、動的コンテキスト・マスタ・ポートレットと動的コンテキスト・スレーブ・ポートレットをグループごとに自動的に生成するツーリングを単純にすることが可能になる。動的コンテキスト定義の実装、動的コンテキスト・グループ、マスタ・ポートレット、および(スレーブ・タスク、スレーブ・コンテキスト・マップを含む)スレーブ・ポートレットの実装は本発明の利点を実現する際に役立つ。
(9)ポートレットをリフレッシュする順番を定義できる
トランザクション・マネージャはポートレットをリフレッシュする順番を最初に定義する能力を備えている。ポートレットをリフレッシュする順番を定義できると、ポータル/ポートレット・アーキテクチャを用いてシーケンシャルなビジネス論理を適切に実装することが可能になる。トランザクション・マネージャ、リソース・ソータ、リソースのキャッシングは本発明の利点を実現する際に役立つ。
(10)規則ベースかつ役割ベースで収集を行なっている
現在、ポータルのパーソナライゼーションを微細なレベルで行なうには動的収集によるしかない。この動的収集は通常のウェブ・アプリケーションの従来技術による実装とはまったく異なる。従来技術の実装には本発明に適用しうるポートレット、ページ、およびページ・グループの公式な概念がいずれも存在しない。ポータル市場が離陸し、販売促進目標(campaign teargeting)を微細化することを求めるユーザの要求などが現れるのにつれ、微細なレベルのパーソナライゼーションはますます重要になる。
本発明の実施形態によれば、多数の利点が得られる。それらを以下に列挙する。
(1)本発明の手法によって達成しうるパーソナライゼーションのレベルは現在のポータル・サーバが備えているポートレットの管理機能よりもその粒度がはるかに細かい。現在のポータル・サーバが備えているポートレットの管理機能は元来、手動である。いったん構成したら、それは静的であり、実行時に変更できない。本発明はポータル・リソースを規則に基づいて表示する動的機能を備えている。
(2)ポータル収集モジュールは動的なエンティティであるから、それに規則エンジンと役割エンジンを結び付けることにより、人手による関与を必要としないリアルタイムの動的収集機能を実現することができる。
(3)粒度の粗いポータル・リソース(たとえばページやページ・グループなど)をパーソナライゼーションすることにより、レイアウトを動的に行なうことができる。
(4)販売促進や契約などをはるかに効率的に行うことができる。これはeコマース(電子商取引)小売りの組織化およびB2B(企業間取引)の組織化の双方にとってきわめて重要である。
(5)本発明によれば、通常のコンテンツのパーソナライゼーションよりもはるかに高度のパーソナライゼーションを実現することができる。たとえば、ウェブページを構成する全区画群を規則に基づいて無効にすることができる。これは通常のパーソナライゼーションではできない。また、動的収集はコンテンツには関係するがリソースには関係しない、通常のパーソナライゼーションの領域には適用しない。
動的コンテキスト連結モデルを示す図である。 ウェブ・アプリケーションとポータルを統合する様子を示す図である。 統合の構造を示す図である。 統合のフローチャートを示す図である。 ポータルとウェブ・アプリケーションを統合するための構造を示す図である。 統合するためのフローチャートを示す図である。 ポートレット用の動的コンテキスト・グループの一例を示す図である。 定義インスタンス中で指定されている動的コンテキスト用にポートレット・アプリケーションを初期化する様子を示す図である。 動的コンテキスト・ポートレット・グループき実行時フローを示す図である。 動的コンテキスト・ポートレット・グループき実行時フローを示す図である。 役割ベース動的収集コンポーネントの構造マップを示す図である。 規則ベース動的収集コンポーネントのフローチャートを示す図である。 役割ベース動的収集のフローチャートを示す図である。 役割ベース動的収集のフローチャートを示す図である。 役割ベース動的収集のフローチャートを示す図である。 ウェブ・アプリケーションへのポートレット要求を処理する様子を示す図である。 同期モデルを示す図である。 順番認識ポータル収集エンジン用のフローチャートを示す図である。 「MaleTeen」と呼ぶ動的グループを定義し、ユーザを当該グループに割り当てる様子を示す図である。 規則データベースのコンテンツ・グループを選択するアクションを動的ユーザ・グループに割り当てる様子を示す図である。 「maleTeenAction」と呼ぶ新たなアクションを生成する様子を示す図である。
符号の説明
101 マスタA
102 スレーブA
103 スレーブB
104 スレーブC
201 ポータル・サーバ
203 ポートレット・アプリケーション
204 ポートレット・アプリケーション
204 ポートレット
205 ポートレット
206 ポートレット
207 ポートレット・アプリケーション
208 ポートレット・アプリケーション・セッション・オブジェクト
209 ポートレット・アプリケーションhttpクライアント
210 バックエンド・アプリケーション・サーバ
221 バックエンド・ウェブ・アプリケーション
301 httpクライアント・キー
302 ポートレット・アプリケーション・データ・ストア(#4)
303 ポートレット・アプリケーションhttpクライアント
305 クッキ・テーブル
306 遠隔要求
307 バックエンド・ウェブ・アプリケーション
308 ポートレット要求パラメータ・マップ(#8)
501 動的コンテキスト・ポートレット・グループ化ツール
502 ポートレット・アプリケーション配備記述子
503 動的コンテキスト・グループ定義テンプレート
504 動的コンテキスト・グループ・インスタンス
701 動的グループ
702 動的グループ
703 動的グループ
704 ポートレット
705 ポートレット
706 ポートレット
707 ポートレット
708 ポートレット
1001 規則DBコンポーネント
1007 役割DBコンポーネント

Claims (16)

  1. ウェブ・アプリケーション用のウェブ・ページ・セッションをユーザに表示する装置であり、前記ウェブ・ページ・セッションは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している複数の関連する協働ポートレットを表示するものである、装置であって、
    前記ウェブ・アプリケーションへのアクセスを提供するウェブ・ポータルを運営するポータル・サーバと、
    前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
    規則を格納しうるように適合した規則データベースにアクセスするためのアクセス手段であって、前記規則はポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、アクセス手段と、
    ユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を、前記ユーザが提供する情報に基づいて選択する選択手段と
    を備えた
    装置。
  2. 前記選択手段が交換可能な規則エンジンと、前記規則データベースから規則を選択し、規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループを必要に応じてユーザに表示するポートレット・アプリケーション収集エンジンとを備えている、
    請求項1に記載の装置。
  3. ウェブ・アプリケーション用のウェブ・ページ・セッションをユーザに表示する装置であり、前記ウェブ・ページ・セッションは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している複数の関連する協働ポートレットを表示するものである、装置であって、
    前記ウェブ・アプリケーションへのアクセスを提供するウェブ・ポータルを運営するポータル・サーバと、
    前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
    役割データベースにアクセスするための役割アクセス手段であって、前記役割データベースはポートレット、ページ、およびページ・グループから成る組のユーザへの表示をユーザの役割に基づいて制御する規則を備えている、役割アクセス手段と、
    ユーザの特定済みの役割に基づき必要に応じて当該ユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を選択する役割選択手段と
    を備えた
    装置。
  4. ポータル上で動作している一群の関連するポートレット用にビジネス規則に基づいて行うユーザ用のポータル・リソースの選択を支援する装置であって、
    表示規則を格納する規則データベースと、
    前記規則データベースにアクセスするためのアクセス手段であって、前記規則はポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、アクセス手段と、
    必要に応じてユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を、前記ユーザが提供する情報に基づいて選択する選択手段と
    を備えた
    装置。
  5. 前記選択手段が、前記規則データベース中の規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示する規則エンジンを備えている、
    請求項4に記載の装置。
  6. 前記選択手段が、規則エンジンと、前記規則データベース中の規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示するポートレット・アプリケーション収集エンジンとを備えている、
    請求項5に記載の装置。
  7. 前記選択手段が、交換可能な規則エンジンと、前記規則データベース中の規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示するポートレット・アプリケーション収集エンジンとを備えている、
    請求項3に記載の装置。
  8. ポータル上で動作している一群の関連するポートレット用にビジネス規則に基づいて行うユーザ用のポータル・リソースの選択を支援する装置であって、
    前記ポータル・サーバ上で動作するとともに、関連する一群のポートレットを管理するポートレット・アプリケーションと、
    役割データベースであって、前記役割データベースはポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、役割データベースと、
    前記役割データベースにアクセスするための役割アクセス手段と、
    ユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を前記ユーザの特定済みの役割に基づいて選択する役割選択手段とを備えた装置。
  9. ウェブ・アプリケーション用のウェブ・ページ・セッションをユーザに表示する方法であり、前記ウェブ・ページ・セッションは、前記ユーザによってアクセス可能であるとともに相互に情報を共用している複数の関連する協働ポートレットを表示するものである、方法であって、
    前記ウェブ・アプリケーションへのアクセスを提供するウェブ・ポータルすなわちポータル・サーバを運営するステップと、
    前記ポータル・サーバ上で動作するとともに、ポートレット・アプリケーションに関連付けられた一群のポートレットを管理するステップと、
    規則を格納する規則データベースにアクセスするステップであって、前記規則はポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、ステップと、
    必要に応じてユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を、前記ユーザが提供する情報に基づいて選択するステップと
    を備えた
    方法。
  10. ポータル上で動作している一群の関連するポートレット用にビジネス規則に基づいて行う、ユーザ用のポータル・リソースの選択を支援する方法であって、
    表示規則を格納する規則データベースを準備するステップであって、前記規則はポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、ステップと、
    前記規則データベースにアクセスするステップと、
    必要に応じてユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を、前記ユーザが提供する情報に基づいて選択するステップと
    を備えた
    方法。
  11. 前記規則データベース中の規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示するために規則エンジンを使用する、
    請求項10に記載の方法。
  12. 前記規則エンジンおよびポートレット・アプリケーション収集エンジンが、前記規則データベース中の前記規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示する、
    請求項11に記載の方法。
  13. 交換可能な規則エンジンおよびポートレット・アプリケーション収集エンジンが、前記規則データベース中の前記規則を適用してポートレット、ページ、およびページ・グループを選択し、選択したポートレット、ページ、およびページ・グループをユーザに表示する、
    請求項9に記載の方法。
  14. ポータル上で動作している一群の関連するポートレット用にビジネス規則に基づいて行う、ユーザ用のポータル・リソースの選択を支援する方法であって、
    役割データベースを準備するステップであって、前記役割データベースはポートレット、ページ、およびページ・グループから成る組のユーザへの表示を制御する規則を備えている、ステップと、
    前記役割データベースにアクセスするステップと、
    ユーザに表示すべきポートレット、ページ、およびページ・グループから成る組を前記ユーザの特定済みの役割に基づいて選択するステップと
    を備えた
    方法。
  15. コンピュータ読み取り可能な信号担持媒体と、
    請求項10〜13のうちの1項に記載の方法を実行しうるように適合し、前記媒体に記録されたコンピュータ・プログラム・コード手段とを備えた製品。
  16. コンピュータ読み取り可能な信号担持媒体と、
    請求項1〜8のうちの1項に記載の装置を実装しうるように適合し、前記媒体に記録されたコンピュータ・プログラム・コード手段とを備えた製品。
JP2004540954A 2002-10-04 2003-10-01 ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法 Pending JP2006501558A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CA002406565A CA2406565A1 (en) 2002-10-04 2002-10-04 Method and apparatus for using business rules or user roles for selecting portlets in a web portal
PCT/GB2003/004244 WO2004031986A1 (en) 2002-10-04 2003-10-01 Method and apparatus for using business rules or user roles for selecting portlets in a web portal

Publications (1)

Publication Number Publication Date
JP2006501558A true JP2006501558A (ja) 2006-01-12

Family

ID=32046579

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004540954A Pending JP2006501558A (ja) 2002-10-04 2003-10-01 ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法

Country Status (9)

Country Link
US (1) US20060235935A1 (ja)
EP (1) EP1550054A1 (ja)
JP (1) JP2006501558A (ja)
KR (1) KR20050043989A (ja)
CN (1) CN1692358A (ja)
AU (1) AU2003269232A1 (ja)
CA (1) CA2406565A1 (ja)
TW (1) TWI251761B (ja)
WO (1) WO2004031986A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013522786A (ja) * 2010-03-22 2013-06-13 トムソン ライセンシング 方法を実行するデバイスを介してアクセス可能なデータまたはサービスに対するアクセスのセキュリティを保護する方法、およびそれに対応するデバイス

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9710852B1 (en) 2002-05-30 2017-07-18 Consumerinfo.Com, Inc. Credit report timeline user interface
US9400589B1 (en) 2002-05-30 2016-07-26 Consumerinfo.Com, Inc. Circular rotational interface for display of consumer credit information
US20050256808A1 (en) * 2004-05-17 2005-11-17 Bea Systems, Inc. System and method for implementing authentication web services for remote portlets
US20050262219A1 (en) * 2004-05-18 2005-11-24 Bea Systems, Inc. System and method for implementing web services for remote portlets
US8181112B2 (en) * 2004-05-21 2012-05-15 Oracle International Corporation Independent portlet rendering
US20050267789A1 (en) * 2004-05-25 2005-12-01 Anthony Satyadas Portal generation for industry specific business roles
US20060036954A1 (en) * 2004-05-25 2006-02-16 International Business Machines Corporation Web services based portlet catalog
US9330187B2 (en) * 2004-06-22 2016-05-03 International Business Machines Corporation Persuasive portlets
GB0420675D0 (en) * 2004-09-17 2004-10-20 Ibm Method and software tool for installation of portlets into a client platform
CN102981815B (zh) * 2005-03-03 2017-05-31 汤姆森路透社全球资源公司 用于实施业务过程应用程序的系统和方法
US7996494B2 (en) * 2005-06-29 2011-08-09 Oracle International Corporation System and method for delivering grouped web service applications
US8001216B2 (en) * 2005-06-30 2011-08-16 Oracle International Corporation System and method for a web service portlet registry
WO2007014788A1 (en) * 2005-07-28 2007-02-08 International Business Machines Corporation Using templates for ensuring visual consistency among portlets
US8751922B2 (en) * 2005-08-09 2014-06-10 Zalag Corporation Methods and apparatuses to assemble, extract and deploy content from electronic documents
CN100568235C (zh) * 2005-09-09 2009-12-09 国际商业机器公司 用于进行项目共享的即时通信客户机和方法
US7620633B1 (en) * 2005-11-14 2009-11-17 Adobe Systems Incorporated Methods and apparatus for prioritizing and sorting metadata to be displayed
US7627579B2 (en) * 2006-01-17 2009-12-01 International Business Machines Corporation Managing portal response times
US7853882B2 (en) * 2006-04-11 2010-12-14 International Business Machines Corporation Portlets having different portlet specific enablement states
US7519913B2 (en) * 2006-06-01 2009-04-14 International Business Machines Corporation System and method for providing indicators of component interaction capability across navigation elements
CN101512523A (zh) 2006-09-12 2009-08-19 国际商业机器公司 把内容动态上下文相关地集成到门户网站应用程序中的系统和方法
US9135605B2 (en) * 2006-11-29 2015-09-15 Adobe Systems Incorporated Instant electronic meeting from within a current computer application
US8285656B1 (en) 2007-03-30 2012-10-09 Consumerinfo.Com, Inc. Systems and methods for data verification
US7849157B2 (en) * 2007-05-23 2010-12-07 Oracle International Corporation System and method for consumer entitlements in portal services
US8196191B2 (en) * 2007-08-17 2012-06-05 Norman James M Coordinating credentials across disparate credential stores
US8863246B2 (en) * 2007-08-31 2014-10-14 Apple Inc. Searching and replacing credentials in a disparate credential store environment
US20090077638A1 (en) * 2007-09-17 2009-03-19 Novell, Inc. Setting and synching preferred credentials in a disparate credential store environment
US7958142B2 (en) * 2007-09-20 2011-06-07 Microsoft Corporation User profile aggregation
US8005786B2 (en) * 2007-09-20 2011-08-23 Microsoft Corporation Role-based user tracking in service usage
US8127986B1 (en) 2007-12-14 2012-03-06 Consumerinfo.Com, Inc. Card registry systems and methods
US9990674B1 (en) 2007-12-14 2018-06-05 Consumerinfo.Com, Inc. Card registry systems and methods
US20090199277A1 (en) * 2008-01-31 2009-08-06 Norman James M Credential arrangement in single-sign-on environment
US7519987B1 (en) * 2008-02-05 2009-04-14 International Business Machines Corporation Method, system, and apparatus to allow for credential vault usage in templated portal applications
US8539337B2 (en) * 2008-02-21 2013-09-17 International Business Machines Corporation Internet services and methods thereof
US20090217367A1 (en) * 2008-02-25 2009-08-27 Norman James M Sso in volatile session or shared environment
US8065327B2 (en) 2008-03-15 2011-11-22 Microsoft Corporation Management of collections of websites
US20090234858A1 (en) * 2008-03-15 2009-09-17 Microsoft Corporation Use Of A Single Service Application Instance For Multiple Data Center Subscribers
US8312033B1 (en) 2008-06-26 2012-11-13 Experian Marketing Solutions, Inc. Systems and methods for providing an integrated identifier
US9256904B1 (en) 2008-08-14 2016-02-09 Experian Information Solutions, Inc. Multi-bureau credit file freeze and unfreeze
US8060424B2 (en) 2008-11-05 2011-11-15 Consumerinfo.Com, Inc. On-line method and system for monitoring and reporting unused available credit
US8683073B2 (en) * 2008-12-11 2014-03-25 Microsoft Corporation Participating with and accessing a connectivity exchange
US7676557B1 (en) * 2009-01-16 2010-03-09 International Business Machines Corporation Dynamically adaptive portlet palette having user/context customized and auto-populated content
US8255493B2 (en) * 2009-12-10 2012-08-28 International Business Machines Corporation Automated dynamic portlet rendering
US9147042B1 (en) 2010-11-22 2015-09-29 Experian Information Solutions, Inc. Systems and methods for data verification
US8965827B2 (en) 2011-03-30 2015-02-24 Computer Sciences Corporation Rules execution platform system and method
US9607336B1 (en) 2011-06-16 2017-03-28 Consumerinfo.Com, Inc. Providing credit inquiry alerts
DE112012002782T5 (de) * 2011-07-01 2014-03-20 Stoneware Inc. Verfahren und Gerät zur Anwendungskostenberechnung bei der Serviceerbringung
US9483606B1 (en) 2011-07-08 2016-11-01 Consumerinfo.Com, Inc. Lifescore
US9106691B1 (en) 2011-09-16 2015-08-11 Consumerinfo.Com, Inc. Systems and methods of identity protection and management
US9258311B2 (en) * 2011-09-30 2016-02-09 Oracle International Corporation Virtual federation of remote portals
US8738516B1 (en) 2011-10-13 2014-05-27 Consumerinfo.Com, Inc. Debt services candidate locator
US10296558B1 (en) * 2012-02-27 2019-05-21 Amazon Technologies, Inc. Remote generation of composite content pages
US9853959B1 (en) 2012-05-07 2017-12-26 Consumerinfo.Com, Inc. Storage and maintenance of personal data
US9632988B2 (en) * 2012-07-12 2017-04-25 International Business Machines Corporation Autonomous gadget management system
US9654541B1 (en) 2012-11-12 2017-05-16 Consumerinfo.Com, Inc. Aggregating user web browsing data
US9916621B1 (en) 2012-11-30 2018-03-13 Consumerinfo.Com, Inc. Presentation of credit score factors
US10255598B1 (en) 2012-12-06 2019-04-09 Consumerinfo.Com, Inc. Credit card account data extraction
US9697263B1 (en) 2013-03-04 2017-07-04 Experian Information Solutions, Inc. Consumer data request fulfillment system
US10102570B1 (en) 2013-03-14 2018-10-16 Consumerinfo.Com, Inc. Account vulnerability alerts
US9406085B1 (en) 2013-03-14 2016-08-02 Consumerinfo.Com, Inc. System and methods for credit dispute processing, resolution, and reporting
US9870589B1 (en) 2013-03-14 2018-01-16 Consumerinfo.Com, Inc. Credit utilization tracking and reporting
US9633322B1 (en) 2013-03-15 2017-04-25 Consumerinfo.Com, Inc. Adjustment of knowledge-based authentication
US10664936B2 (en) 2013-03-15 2020-05-26 Csidentity Corporation Authentication systems and methods for on-demand products
US10685398B1 (en) 2013-04-23 2020-06-16 Consumerinfo.Com, Inc. Presenting credit score information
US9807145B2 (en) 2013-05-10 2017-10-31 Successfactors, Inc. Adaptive tile framework
US9721147B1 (en) 2013-05-23 2017-08-01 Consumerinfo.Com, Inc. Digital identity
CN104253790B (zh) 2013-06-27 2018-08-28 国际商业机器公司 规范化页面流的方法和设备
US9443268B1 (en) 2013-08-16 2016-09-13 Consumerinfo.Com, Inc. Bill payment and reporting
US10325314B1 (en) 2013-11-15 2019-06-18 Consumerinfo.Com, Inc. Payment reporting systems
US10102536B1 (en) 2013-11-15 2018-10-16 Experian Information Solutions, Inc. Micro-geographic aggregation system
US9477737B1 (en) 2013-11-20 2016-10-25 Consumerinfo.Com, Inc. Systems and user interfaces for dynamic access of multiple remote databases and synchronization of data based on user rules
US9529851B1 (en) 2013-12-02 2016-12-27 Experian Information Solutions, Inc. Server architecture for electronic data quality processing
US10262362B1 (en) 2014-02-14 2019-04-16 Experian Information Solutions, Inc. Automatic generation of code for attributes
USD759689S1 (en) 2014-03-25 2016-06-21 Consumerinfo.Com, Inc. Display screen or portion thereof with graphical user interface
USD759690S1 (en) 2014-03-25 2016-06-21 Consumerinfo.Com, Inc. Display screen or portion thereof with graphical user interface
USD760256S1 (en) 2014-03-25 2016-06-28 Consumerinfo.Com, Inc. Display screen or portion thereof with graphical user interface
US9892457B1 (en) 2014-04-16 2018-02-13 Consumerinfo.Com, Inc. Providing credit data in search results
US10373240B1 (en) 2014-04-25 2019-08-06 Csidentity Corporation Systems, methods and computer-program products for eligibility verification
US20150341282A1 (en) * 2014-05-22 2015-11-26 Lior Bar-On Context-aware portal connection allocation
CN105050081B (zh) * 2015-08-19 2017-03-22 腾讯科技(深圳)有限公司 网络接入设备接入无线网络接入点的方法、装置和系统
US10075535B2 (en) * 2015-09-25 2018-09-11 International Business Machines Corporation Business logic sharing
BR112019015920A8 (pt) 2017-01-31 2020-04-28 Experian Inf Solutions Inc ingestão de dados heterogêneos em escala massiva e resolução de usuário
US11924297B2 (en) 2018-05-24 2024-03-05 People.ai, Inc. Systems and methods for generating a filtered data set
US10565229B2 (en) 2018-05-24 2020-02-18 People.ai, Inc. Systems and methods for matching electronic activities directly to record objects of systems of record
US11463441B2 (en) 2018-05-24 2022-10-04 People.ai, Inc. Systems and methods for managing the generation or deletion of record objects based on electronic activities and communication policies
US10911234B2 (en) 2018-06-22 2021-02-02 Experian Information Solutions, Inc. System and method for a token gateway environment
US11265324B2 (en) 2018-09-05 2022-03-01 Consumerinfo.Com, Inc. User permissions for access to secure data at third-party
US10963434B1 (en) 2018-09-07 2021-03-30 Experian Information Solutions, Inc. Data architecture for supporting multiple search models
US10747939B1 (en) * 2018-10-11 2020-08-18 BlueOwl, LLC Declarative interface for interaction design
US11315179B1 (en) 2018-11-16 2022-04-26 Consumerinfo.Com, Inc. Methods and apparatuses for customized card recommendations
US11238656B1 (en) 2019-02-22 2022-02-01 Consumerinfo.Com, Inc. System and method for an augmented reality experience via an artificial intelligence bot
US11941065B1 (en) 2019-09-13 2024-03-26 Experian Information Solutions, Inc. Single identifier platform for storing entity data
US11880377B1 (en) 2021-03-26 2024-01-23 Experian Information Solutions, Inc. Systems and methods for entity resolution

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US2233620A (en) * 1939-10-09 1941-03-04 Commerical Solvents Corp Process for improving the thermal stability of nitroparaffins
US5634127A (en) * 1994-11-30 1997-05-27 International Business Machines Corporation Methods and apparatus for implementing a message driven processor in a client-server environment
US6006266A (en) * 1996-06-03 1999-12-21 International Business Machines Corporation Multiplexing of clients and applications among multiple servers
US6049820A (en) * 1996-06-03 2000-04-11 International Business Machines Corporation Multiplexing of clients and applications among multiple servers
US6304893B1 (en) * 1996-07-01 2001-10-16 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for a client-server event driven message framework in an interprise computing framework system
US5884316A (en) * 1996-11-19 1999-03-16 Microsoft Corporation Implicit session context system with object state cache
US5915087A (en) * 1996-12-12 1999-06-22 Secure Computing Corporation Transparent security proxy for unreliable message exchange protocols
US5941988A (en) * 1997-01-27 1999-08-24 International Business Machines Corporation Session and transport layer proxies via TCP glue
US6041357A (en) * 1997-02-06 2000-03-21 Electric Classified, Inc. Common session token system and protocol
US6061741A (en) * 1997-05-28 2000-05-09 International Business Machines Corporation Method and apparatus for synchronization of connectionless applications across a network by using simple encryption tokens
US6170012B1 (en) * 1997-09-12 2001-01-02 Lucent Technologies Inc. Methods and apparatus for a computer network firewall with cache query processing
US5941954A (en) * 1997-10-01 1999-08-24 Sun Microsystems, Inc. Network message redirection
US6301011B1 (en) * 1997-11-07 2001-10-09 Xerox Corporation Dynamic plug and play interface for output device
US6286060B1 (en) * 1998-06-26 2001-09-04 Sun Microsystems, Inc. Method and apparatus for providing modular I/O expansion of computing devices
US6219706B1 (en) * 1998-10-16 2001-04-17 Cisco Technology, Inc. Access control for networks
US6412073B1 (en) * 1998-12-08 2002-06-25 Yodiee.Com, Inc Method and apparatus for providing and maintaining a user-interactive portal system accessible via internet or other switched-packet-network
US6424979B1 (en) * 1998-12-30 2002-07-23 American Management Systems, Inc. System for presenting and managing enterprise architectures
US6356905B1 (en) * 1999-03-05 2002-03-12 Accenture Llp System, method and article of manufacture for mobile communication utilizing an interface support framework
US6401085B1 (en) * 1999-03-05 2002-06-04 Accenture Llp Mobile communication and computing system and method
US7275086B1 (en) * 1999-07-01 2007-09-25 Intellisync Corporation System and method for embedding a context-sensitive web portal in a computer application
AU1221001A (en) * 1999-11-04 2001-05-14 Abilizer Solutions, Inc. Employee portal and method of use therefor
EP1117050A1 (en) * 2000-01-14 2001-07-18 Sun Microsystems, Inc. Individual data representation
EP1117220A1 (en) * 2000-01-14 2001-07-18 Sun Microsystems, Inc. Method and system for protocol conversion
WO2001059623A2 (en) * 2000-02-08 2001-08-16 Onepage, Inc. System and method for dynamic aggregation of content distributed over a computer network
US6327628B1 (en) * 2000-05-19 2001-12-04 Epicentric, Inc. Portal server that provides a customizable user Interface for access to computer networks
US7051069B2 (en) * 2000-09-28 2006-05-23 Bea Systems, Inc. System for managing logical process flow in an online environment
US7499948B2 (en) * 2001-04-16 2009-03-03 Bea Systems, Inc. System and method for web-based personalization and ecommerce management
US7502833B2 (en) * 2001-05-11 2009-03-10 International Business Machines Corporation Method for dynamically integrating remote portlets into portals
US20030014442A1 (en) * 2001-07-16 2003-01-16 Shiigi Clyde K. Web site application development method using object model for managing web-based content
US6922695B2 (en) * 2001-09-06 2005-07-26 Initiate Systems, Inc. System and method for dynamically securing dynamic-multi-sourced persisted EJBS
US6985939B2 (en) * 2001-09-19 2006-01-10 International Business Machines Corporation Building distributed software services as aggregations of other services
JP4173447B2 (ja) * 2001-10-24 2008-10-29 ビーイーエイ システムズ, インコーポレイテッド データ同期
US7062511B1 (en) * 2001-12-31 2006-06-13 Oracle International Corporation Method and system for portal web site generation
US6871197B1 (en) * 2002-02-25 2005-03-22 Oracle International Corporation Method and mechanism for a web based knowledge management tool
US20030187956A1 (en) * 2002-04-01 2003-10-02 Stephen Belt Method and apparatus for providing access control and content management services
US7277924B1 (en) * 2002-05-07 2007-10-02 Oracle International Corporation Method and mechanism for a portal website architecture
US7103844B2 (en) * 2002-06-26 2006-09-05 International Business Machines Corporation Portal/portlet application data synchronization
US7523174B2 (en) * 2002-10-15 2009-04-21 International Business Machines Corporation Dynamic portal assembly
WO2004068367A2 (en) * 2002-12-02 2004-08-12 Sap Aktiengesellschaft Session-return enabling stateful web applications
US7331018B2 (en) * 2003-07-10 2008-02-12 Computer Associates Think, Inc. System and method for customizing a data display using a presentation profile
US7376739B2 (en) * 2004-02-11 2008-05-20 International Business Machines Corporation Persistence of inter-application communication patterns and behavior under user control
US20050262075A1 (en) * 2004-05-21 2005-11-24 Bea Systems, Inc. Systems and methods for collaboration shared state management
US20060069714A1 (en) * 2004-09-08 2006-03-30 Blount Marion L System enhancement using client context information

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013522786A (ja) * 2010-03-22 2013-06-13 トムソン ライセンシング 方法を実行するデバイスを介してアクセス可能なデータまたはサービスに対するアクセスのセキュリティを保護する方法、およびそれに対応するデバイス
US9531717B2 (en) 2010-03-22 2016-12-27 Thomson Licensing Method of securing access to data or services that are accessible via a device implementing the method and corresponding device

Also Published As

Publication number Publication date
TW200413990A (en) 2004-08-01
EP1550054A1 (en) 2005-07-06
AU2003269232A1 (en) 2004-04-23
CA2406565A1 (en) 2004-04-04
TWI251761B (en) 2006-03-21
US20060235935A1 (en) 2006-10-19
KR20050043989A (ko) 2005-05-11
WO2004031986A1 (en) 2004-04-15
CN1692358A (zh) 2005-11-02

Similar Documents

Publication Publication Date Title
US8015240B2 (en) Method and apparatus for enabling associated portlets of a web portlet to collaborate for synchronized content display
KR100843828B1 (ko) 포탈 서버에서 포틀릿들의 집합을 관리하기 위한 방법 및장치
JP4218759B2 (ja) ポータル・サーバからセッション情報を中継する方法および装置
JP2006501558A (ja) ウェブ・アプリケーション用のウェブ・ページのセッションをユーザに表示する装置と方法
JP5030354B2 (ja) ネットワーク上にオブジェクトを配信するための方法およびシステム
US20050210379A1 (en) Internet-based system for dynamically creating and delivering customized content within remote web pages

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060711

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090303

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20091006