1 WebCenter Sitesでの開発の概要
WebCenter Sitesでは、テンプレートと情報の両方がアセットとして格納されます。そのため、アセット・モデルを設計し、アセット・タイプおよびアセットを作成することから始めます。また、サイト・レイアウト、ページ・テンプレートおよびページレットを設計します。セキュリティおよびパフォーマンスの確保のため、キャッシング・フレームワークおよびセキュリティ・モデルを開発します。管理担当者にサイトを引き渡すまでに開発者が関わるべきことは、これだけではありません。
WebCenter Sitesでの開発について
WebCenter Sites開発者としての役割は、中核となるWebサイトを構築することから始まりますが、それで終わるわけではありません。必要に応じてWebCenter Sitesインタフェースも調整します。会社でWebCenter Sitesの市場志向型コンポーネントを利用する予定がありますか。マーケティング担当者が訪問者プロファイル情報を収集して訪問者向けにプロモーションを設計できるようにこれらの機能を拡張することは、開発者の主要領域の1つであると言えます。
開発者としてのタスクは次のようにグループ化できます。
-
Webサイトの構築
Webサイトを作成するには、開発者がWebサイトのインフラストラクチャを構築して、管理者がコンテンツ管理サイトおよびサイト・ナビゲーションを作成し、コンテンツ・コントリビュータがコンテンツをWebサイトに追加します。
このガイドでは、開発者がWebCenter Sitesを使用して、Webサイトのインフラストラクチャをどのように作成できるかを中心に説明します。
WebCenter Sitesでは、テンプレートと情報の両方がアセットとして格納されます。Webサイトのインフラストラクチャを開発する場合、作成するアセット・タイプおよびアセットを組み込むアセット・モデルが最初に設計されます。アセット・タイプの準備が整ったら、サイト・レイアウト、ページ・テンプレートおよびページレットがコーディングされ、パフォーマンス向上のためにキャッシュが実装されます。Webサイト・アクセス、ユーザー、ACLおよびロールが作成され、関連するロールにユーザーが割り当てられます。様々なタイプのコンテンツがアセットとしてインポートされます。次に、管理者およびコンテンツ・コントリビュータがサイトの設計を開始する管理システムにインフラストラクチャがミラー・パブリッシュされます。WebCenter Sitesの開発プロセスを参照してください。
ノート:
組織の設定に応じて、開発者または管理者のいずれかがコンテンツ管理サイト(オンライン・サイトのコンテンツを格納するためのフレームワーク)とサイト・ナビゲーションを作成します。コンテンツ・コントリビュータがページとコンテンツをサイト・ナビゲーションに追加し、コンテンツを承認したら、管理者がそのコンテンツを配信システムにパブリッシュします。これで、サイトがオンラインになり、Webサイトのように機能し始めます。
Webサイトの構築の詳細は、「Oracle WebCenter Sitesスタート・ガイド」、「データ・モデルの構築」、「Webサイトの開発」、「モバイル用Webサイトの開発」、「Developer Toolsを使用したコーディング」、「キャッシングの管理」、「コンテンツ管理システムへの作業内容の移行」および「セキュリティ: コンテンツ管理ユーザーの管理」を参照してください。
-
Websサイトの機能拡張
Webサイトは、ビジネスおよび顧客プロファイルの性質に応じて機能拡張できます。WebCenter Sitesを使用すると、訪問者情報を収集して、訪問者ごとの販促用メッセージをパーソナライズしたり、Webサイトの訪問者や訪問者のページの使用に関するデータを取得できるようにオンライン・サイトを設計できます。サイト・ページはFacebook、Twitter、Googleなどと統合可能で、ガジェットやアプリケーションを設計してWebCenter Sitesと統合することもできます。
詳細は、「Engageでのパーソナライズおよびターゲット設定されたWebサイトの開発」、「A/B Testingの実行」、および「WebCenter Sites: Visitor Servicesの開発」を参照してください。
-
WebCenter Sitesのカスタマイズ
開発環境と操作性を効率化し、コンテンツ・コントリビュータの仕事を簡単にするために、Oracle WebCenter Sites: AdminインタフェースおよびOracle WebCenter Sites: Contributorインタフェースをカスタマイズできます。効率性と生産性を向上するために、プロパティ、ダッシュボード、検索ビュー、アセット・フォーム、ワークフローなどを変更できます。
詳細は、「Oracle WebCenter Sitesのカスタマイズ」を参照してください。
WebCenter Sites開発者の一般的なタスク
中核となるWebサイトを構築するためのタスクとしては、サイトのデータ・モデル、ユーザーが情報を入力するためのフォーム、サンプルのアセット、コンテンツ・アセットを表示するためのテンプレート、パフォーマンス向上のためのキャッシングを設計することなどがあります。
一般的な開発者タスクについては、次のトピックを参照してください。
コンテンツ表示のデータ・モデル
WebCenter Sites開発者は、Webサイトに表示するのに必要なコンテンツのデータ・モデルを構築します。WebCenter Sitesでサポートされているデータ・モデルは次のとおりです。
-
ベーシック・アセット・モデル: 水平なデータ構造をサポートし、ベーシック・アセットはお互いのプロパティ(このガイドでは属性と呼称)を継承できません。コンテンツはWebCenter Sitesのユーザーによって入力され、アセットというオブジェクトとしてWebCenter Sitesデータベースに格納されます。アセットの各タイプは、データベース内の1つのプライマリ記憶域表に格納されるので、あるタイプのベーシック・アセットを別のタイプのベーシック・アセットに関連付けることができます。
-
フレックス・アセット・モデル: 総合的なデータ・モデルで、それぞれのアセット・タイプは複数の記憶域表を使用できるので、階層的なデータ構造が作成でき、子アセットは親アセットから属性値を継承します。フレックス・アセット・モデルでは、その独自フレームワーク内で水平データ構造もサポートされます。フレックス・アセット・モデルはベーシック・アセット・モデルと無関係に機能し、2つのモデル内で作成された表は交差しません。
フレックス・アセット・モデルとベーシック・アセット・モデルのどちらを選択するかは、訪問者へのサービス提供を計画しているデータの複雑さによって決まります。フレックス・アセット・モデルはこれまで、製品の大規模なオンライン・カタログの作成に使用されてきました。ただし、あまり複雑でない状況で使用することもできます。特に使用することが好ましいのは、水平データ構造を階層構造に最終的に変換することを意図している場合です。この変換プロセスでは、データの再作成は不要です。
コンテンツ管理サイトのコンテンツ・エントリ・フォーム
WebCenter Sitesの開発者は、データ・モデルを使用してコンテンツ・エントリ・フォームを作成し、このフォームは、Webサイトのコンテンツを作成するためにコントリビュータが使用します。 コンテンツ・エントリ・フォームの各フィールドは、1つのデータベース表(または複数の表)で対応する列にマップされます。また、開発者は、コンテンツ・エントリ・フォームをWebモードでレンダリングし、WebサイトにパブリッシュされたコンテンツをレンダリングするJSPを作成します。
コンテンツを世間に配信する準備ができたら、動的と静的のいずれかのパブリッシングを使用してWebサイトにパブリッシュできます。書式設定されたコンテンツは、JSPによってWebサイトに表示されます。この表は、動的なWebCenter Sitesページと一般的なHTMLページの違いについて説明しています。
表1-1 静的ページと動的ページ
静的ページ(HTMLページ) | 動的ページ(WebCenter Sitesページ) |
---|---|
単一のディスク・ファイルで、Webサーバーを介してサイトが提供されます。 |
要求時に構成および作成されます。 |
HTMLページと、訪問者のWebブラウザに表示されるページの間での、1対1の関連付。 |
訪問者の画面に表示されるWebページは、WebCenter Sites内から作成されるページレットという複数のコンポーネントで構成できます。 |
プレゼンテーションとコンテンツは分離されません。そのため、プレゼンテーションとコンテンツをお互いと無関係に変更することは困難です。 |
プレゼンテーションとコンテンツの分離。プレゼンテーションとコンテンツをお互いと無関係に変更して保持することができます。 |
コンテンツをWebサイトにレンダリングするためのテンプレートおよびエレメント
WebCenter Sitesの開発者は、Webサイト上のコンテンツのレンダリングに使用されるコード・テンプレートおよびエレメントに、APIとJSPタグを使用します。次のプログラミング・コンポーネントは、コーディングのプロセスで使用されます。
エレメントのファイル
簡単に言ってしまえば、WebCenter Sitesの主な機能は、フォーマットをコンテンツから分離することです。WebCenter Sitesでは、この2つを分離すれば、コンテンツを構成する数多くの部品に対して、書式設定コードの同じ部分を再利用できます。たとえば、記事のフォーマットを変更するには、システム内のすべての記事のコードをリライトする必要はなく、1箇所のコードをリライトします。
書式設定コードは、エレメントという名前のファイルに格納されます。このコードによって、データベースからコンテンツが抽出され、コンテンツが書式設定されます。コンテンツが書式設定されるのはページが要求された場合のみであるため、実行時に構成されるページを、要求する訪問者のIDに従って設定することもできます。
エレメントのファイルは、WebCenter SitesデータベースのElementCatalog
表に格納されます。ページの名前はSiteCatalog
表に格納されます。つまり、SiteCatalog
表には、Webサイトのすべての適切なページ名に対するエントリが格納されます。SiteCatalog
表の各行は、ページ・エントリです。それぞれのページ・エントリは、ElementCatalog
表内のエレメントを指しています。ページ・エントリによって指されているエレメントは、ページ・エントリのルート・エレメントと呼ばれます。
WebCenter Sitesでは、SiteCatalog
ページ・エントリを実行することによって、コンテンツをオンライン・ページにレンダリングします。その具体的な動作を次に示します。
-
訪問者が、WebサイトのURLをブラウザで入力します。
-
HTTPリクエストを処理するWebサーバーによって、そのURLがWebCenter SitesのURLにマップされます。たとえばWebCenter Sites URLは次のようになります。
http://www.FiscalNews.com/servlet/ContentServer?pagename=FiscalNews/Home
WebCenter SitesのURLの後ろにあるテキストはページ名と呼ばれます。この例では、ページ名は
Fiscalnews/Home
です。 -
WebCenter Sitesは
SiteCatalog
表でページ名を調べ、そのルート・エレメントを判別し、そのエレメントをElementCatalog
表の中で検索して、そのエレメントを起動します。エレメントが実行されます。ルート・エレメント内からコールされる他のエレメントが次に実行されます。
-
イメージや記事など、HTMLタグを含めた結果がHTMLコードにレンダリングされ、訪問者のブラウザに返されます。
その結果は、要求時に動的にレンダリングされるページです。
APIおよびJSPタグ
WebCenter Sitesには、エレメントのコーディングに使用するタグ・ファミリがいくつか含まれています。このタグ・ファミリを使用すると、アセットを特定し、抽出してWebサイトに表示できます。WebCenter SitesにはJavaメソッドとJavaユーティリティも用意されており、それらは、Webサイトの設計、独自のコンテンツ管理アプリケーションの開発、およびWebCenter Sitesのモジュール/製品のカスタマイズに使用できます。
ベーシック・データ・モデルを使用するアセットを表示するページのコーディングの詳細は、「テンプレートおよびCSElementのエレメントのコーディング」を参照してください。WebCenter Sitesタグの詳細は、『Oracle WebCenter Sitesリファレンス・タグ・リファレンス』を参照してください。
WebCenter Sitesオペレーティング・システムは、アプリケーション・サーバーのさらに上で稼働する複数のサーブレットで構成されています。それぞれのサーブレットは、必要に応じて、不連続なタスクを実行するために起動されます。それぞれのサーブレットには、対応するJava APIとJavaメソッドおよびJSPタグがあり、機能を起動するために使用します。
この図は、WebCenter Sitesの主なサーブレットを示しています。
WebCenter Sitesの主なサーブレットは次のとおりです。
-
ContentServer: ページの生成とその提供を動的に行います。このサーブレットでは、ディスク・キャッシング、セッション管理、イベント管理、検索、パーソナライズの各種サービスが提供されます。
-
CatalogManager: リビジョン追跡、セキュリティ、結果セットのキャッシング、パブリッシュ・サービスなど、WebCenter Sitesデータベースに対するデータベース管理のほとんどを提供します。
-
TreeManager: WebCenter Sitesデータベースにある他の表の階層情報を格納したツリー表を管理します。
-
BlobServer: バイナリ・ラージ・オブジェクト(BLOB)の検索とその提供を行います。BLOBは一切処理されず、格納されている状態そのままで提供されます。
-
DebugServer: XMLコードのデバッグに役立つツールを提供します。
-
CookieServer: WebCenter SitesのページにCookieを提供します(それらのページの配信元がContentServerサーブレットであってもSatellite Serverアプリケーションであっても関係ありません)。
-
HelloCS: システムにインストールされているWebCenter Sitesソフトウェアのバージョン情報を表示します。
一般的には、どのサーブレットがどのサービスまたはタスクを実行しているかを認識する必要はありません。適切なJavaメソッド、あるいはXMLタグまたはJSPタグを起動して、どのサーブレットをコールすべきかをWebCenter Sitesのコア・アプリケーションに判断させるのみです。このルールに対する例外は、サーブレットのURLを参照するコードを記述するときです。つまり、BLOBへのリンク、またはWebCenter Sitesのページでの別ページへのリンクを含めるときです。ContentServerサーブレットとBlobServerサーブレットは別々のURLにあるので、<A HREF>
タグには、適切なサーブレットのURLを含める必要があります。
BLOBおよびページへのリンクのコーディングの詳細は、「タグ・テクノロジを使用したWebサイト開発」および「テンプレートおよびCSElementのエレメントのコーディング」を参照してください。
セッションおよびCookie
WebCenter Sitesでは、初めてWebサイトを訪問したときに、その訪問者のセッションが自動的に作成されます。その訪問者の情報は、WebCenter Sitesコアでタグおよびメソッドを使用することによって、セッション変数に格納できます。後続のエレメントは、その後それらの変数にアクセスし、条件付きで応答できます。
ただし、セッション変数は変化しやすいものです。これらは、セッションが持続している間、つまり次のイベントのいずれかが発生するまで持続するにすぎません。
-
訪問者が自分のブラウザを閉じます。
-
非アクティブになっている期間が経過してセッションがタイムアウトします。Adminインタフェースのプロパティ管理ツールから、
cs.timeout
プロパティ(wcs_properties.json
ファイル内)を設定して、セッション・タイムアウトを制御します。 -
アプリケーション・サーバーが再起動されます(クラスタ内にある場合は除く)。
-
セッションが他のなんらかのやり方で無効になります。
Cookieは、情報をより永続的に格納する場合に使用されます。訪問者の情報をその人のブラウザに格納するCookieを記述するようにエレメントをコーディングできます。次に、格納された情報を使用し、ページをカスタマイズして、該当する訪問者がWebサイトに戻ってきたときに適切なバージョンのページを表示するようにできます。
セッションおよびCookieについてを参照してください。
開発、管理、配信およびテスト用WebCenter Sitesシステム
コンテンツ管理ニーズについてWebCenter Sitesを操作するときには、チームの人間が協力して、最大で次に示す4種類のシステムを操作します。
-
開発システム: 開発者と設計者が、Webサイトの計画立案と作成を行います。購入したWebCenter Sites製品のすべてが、このシステムにインストールされています。
-
管理システム: ライター、編集者、グラフィック・アーティスト、マーケッタなどのコンテンツ・プロバイダには、Webサイトの訪問者に配信されるコンテンツを開発するために、コンテンツ管理サイトが割り当てられます。リビジョン追跡機能とワークフロー機能では、アセット(コンテンツ)に対する変更が追跡され、配信システムへのパブリッシュが承認されるまでアセット(コンテンツ)が監視されます。
コンテンツ管理サイトは、実際のWebサイトを表しています。たとえば、Webサイトの別々のセクションに対して、別々のコンテンツ管理サイトを作成できます。各セクションにコンテンツを提供するチームは、お互いにまったく別々であり、そのセクション(コンテンツ管理サイト)にアクセスできるのはそのチームのメンバーのみとなるからです。または、avisportsのサンプル・サイトと同様の、Webサイト全体を表すコンテンツ管理サイトを作成することもできます。『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のコンテンツ管理サイトのアセンブルに関する項を参照してください。
-
配信システム: 使用可能にしているコンテンツまたは販売している製品が、訪問者または顧客に提供されます。
コンテンツを動的に配信するには、購入したWebCenter Sites製品のすべてをこのシステムにインストールする必要があります。コンテンツを静的に配信する場合、つまり、静的なHTMLページを提供する場合は、配信システムにWebサーバーのみが必要です。つまり、WebCenter Sites製品をシステムにインストールする必要はありません。
-
テスト・システム: 開発者またはQAエンジニアが、管理システムと配信システムの両方のパフォーマンスをテストします。テストは、専用のシステムまたは開発システムのいずれかで実行できます。
WebCenter Sitesの開発者は、時間の大部分を開発システムでの作業に費やします。開発するアセット・タイプおよび設計したサイトの準備ができたら、できあがったものを開発システムから管理システムに移行(パブリッシュ)します。コンテンツ・プロバイダによってアセットが作成、変更および承認されると、管理システムから配信システムにパブリッシュされます。
承認およびパブリッシュ
Webサイトの開発が終了したら、できあがったもの(テンプレート、エレメント、アセット・タイプ、サイト・ナビゲーションなど)を開発システムから管理システムにパブリッシュします。できあがったものをパブリッシュすると、管理システムで使用できるようになります。コントリビュータはこれを受けて、アセット・タイプとサイト・デザインを使用して、Webサイトのコンテンツを作成できます。コントリビュータがサイトのコンテンツの作成を終了したら、(サポートしているアセット・タイプ、テンプレート、エレメント、サイト・ナビゲーションなどとともに)そのコンテンツを承認し、Webサイトにパブリッシュできます。
アセットをパブリッシュする準備ができたら、誰かが最初に、そのアセットを承認済とマークします。次に、パブリッシュ・プロセスの開始準備ができたら、承認システムが起動します。これは、承認されたアセットすべてのリストをまとめ、それらのアセットに依存するものをすべて検査するシステムです。承認されたアセットにリンク付けされたアセットをパブリッシュする前に、そのアセットも承認する必要があります。
WebCenter Sitesのパブリッシュ・システムと承認システムでは、配信システムでのコンテンツの整合性を維持するために、アセット依存関係をすべて追跡および検証します。パブリッシュ・システムと承認システムでは、パブリッシュの準備ができたアセットのみが、パブリッシュされるアセットとなります。
コンテンツとエレメントをパブリッシュすると、WebCenter Sitesでは、そのコンテンツとエレメントが、あるシステム(たとえば管理システム)から別のシステム(たとえば配信システム)にコピーされます。WebCenter Sitesでは、WebCenter SitesのパブリッシュAPIから構築された2つのパブリッシュ方法が配信されます。これらのパブリッシュ方法は、WebCenter Sitesの承認システム、つまり、どのアセットが承認されているかを判別する基礎となるシステムと対話します。
WebCenter Sitesのパブリッシュ方法は次のとおりです。
-
リアルタイム: 動的なパブリッシュ方法です。それはWebCenter SitesのリアルタイムAPIで構築され、あるシステム上のWebCenter Sitesデータベースから別のシステム上のWebCenter Sitesデータベースに、承認されたアセットがコピーされます。
-
ディスクへのエクスポート: 静的なパブリッシュ方法です。承認されたアセットに割り当てられているテンプレート・エレメントを使用して、このアセットを静的なHTMLファイルにレンダリングします。次に管理者または自動化されたプロセスによって、FTPなどのファイル転送方法を使用して、これらのファイルが配信システムにコピーされます。
関連項目:
-
パブリッシュの構成については、『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のパブリッシュの宛先の定義を構成するためのヒントに関する項
-
依存性を適切にロギングするためのエレメントのコーディング、およびWebCenter Sitesによる承認の依存性の計算の詳細は、「テンプレートおよびCSElementのエレメントのコーディング」
- アセットを承認する方法については、コンテンツの承認とパブリッシュに関する項
『Oracle Fusion Middleware Oracle WebCenter Sitesの使用』および『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』の複数アセットの承認に関する項
キャッシングによるパフォーマンスの最適化
開発者は、様々なキャッシング・フレームワークを実装して、パフォーマンスを最適化します。WebCenter Sitesでは、Satellite Serverキャッシングの使用もサポートされており、このキャッシングでは、第2レベルのキャッシングが実現し、Webページのリモート・キャッシュとして使用することもできます。デフォルトでは、WebCenter SitesとSatellite Serverは、ページのキャッシング・フレームワークとしてinCacheを使用します。次の各項で、キャッシングについて説明します。
ページのキャッシング
ページのキャッシングはテンプレート・レベルで実装され、WebCenter Sitesシステムでページをキャッシュするために使用されます。ページのキャッシングは、システム・パフォーマンスにおいて重大な役割を果たしています。キャッシュされるページは、最初に生成を必要とする場合に比べて、より迅速に提供できます。
(Satellite Serverと無関係に) WebCenter Sitesのみで、SiteCatalog
表のページ・エントリによって特定される各ページまたは各ページレットを別々にキャッシュできます。その表におけるそのページ・エントリの値を指定することによって、キャッシュ内の任意のページレットの有効期限をマークすることができます。
ページのキャッシングは、Satellite Serverを追加することで特に有効になります。Satellite Serverのアプリケーションをインストールすると、Satellite Serverをホストするサーバーにページ・キャッシュをインストールすることになり、それによってWebCenter Sitesページ・キャッシュが拡張されます。
関連項目:
-
ページ・キャッシングの詳細は、「ページのデザインとキャッシングの理解」
-
inCacheページ・キャッシングについては、『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のinCacheページ・キャッシングのためのシステムの構成に関する項
-
Satellite Serverの詳細は、「Satellite Serverのキャッシング」
結果セットのキャッシング
結果セットのキャッシングは、システム・パフォーマンスを大幅に拡張できる別の機能です。WebCenter Sitesデータベースに対して、任意のメカニズムによって問合せが行われると、WebCenter Sitesアプリケーションは、返す結果セットをキャッシュできます。データベース内のすべての表を追跡します。表が変更されると常に、その表のためにキャッシュされた結果セットがすべてフラッシュされます。
結果セットのキャッシングと問合せでの作業を参照してください。
アセットのキャッシング
アセットのキャッシングは、inCacheフレームワーク上に構築された、メモリーをベースにしたシステムで、そのままではデータベースに影響を与えるような負荷を占有することによって、WebCenter Sitesのパフォーマンスを最適化します。WebCenter Sitesでは、アセットのプログラム的な使用は、その属性のローディングとレンダリングで構成されます。アセットは、WebCenter Sitesデータベースに格納されているテンプレートによってロードされるため、AssetCache
はWebCenter Sitesノードでのみ使用されます。アセットのキャッシングにはAssetCache
コンテナ・コンポーネントが含まれており、そのコンポーネントは、アセットをキャッシュして既存のinCacheコンポーネントと対話することによって機能します。
『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のinCacheフレームワークの使用に関する項を参照してください。
Satellite Serverのキャッシング
Satellite Serverはキャッシング・アプリケーションです。これは、追加のページ・キャッシュを提供することによって、WebCenter Sitesのキャッシング機能を補足するものです。WebCenter SitesとSatellite Serverのキャッシュを併用すると、自動的に二重にバッファされたキャッシングとなります。
デフォルトでは、一緒に常駐するSatellite Serverは、WebCenter Sitesがインストールされているのと同じコンピュータにインストールされます。Satellite Serverをリモートにインストールし、ページおよびページレットを、想定された利用者により近い場所にキャッシュできるようにすることによって、システムのパフォーマンスをさらに向上させることができます。リモートのSatellite Serverホストは、WebCenter Sitesのページの高速で安価なキャッシュです。WebCenter Sitesホスト上の負荷が減り、サイト訪問者へのページ配信スピードが大幅にアップし、WebCenter Sitesシステムのスケールを変更する簡略で安価な手段が提供されます。
HTTPリクエスト
ページに対するHTTPリクエストをロード・バランサがSatellite Serverにルーティングすると、Satellite Serverは、ページがキャッシュの中にあるとそのページを提供し、ページがキャッシュされていないとHTTPリクエストをWebCenter Sitesに転送します。イベントのベーシックなチェーンは次のとおりです。
-
Satellite Serverがそのキャッシュをチェックします。
-
次に何を行うかは、Satellite Serverキャッシュにページが格納されているかどうかによって異なります(詳細は表1-2を参照)。
表1-2 Satellite Serverキャッシュに格納されているページと格納されていないページ
Satellite Serverキャッシュに格納されているページ | Satellite Serverキャッシュに格納されていないページ |
---|---|
Satellite Serverが、訪問者のブラウザにページを提供します。 この場合は、Satellite ServerはWebCenter Sitesデータベースにリクエストを転送する必要がないため、WebCenter Sitesデータベースにかかる負荷は軽減します。 |
|
各Satellite Serverアプリケーションは、それ以外のあらゆるSatellite Serverアプリケーションと無関係です。個々のSatellite Serverアプリケーションには、次のような特徴があります。
-
独自のキャッシュを保持します。
-
別のSatellite Serverアプリケーションからは、ページもページレットも要求できません。ページまたはページレットを要求できるのは、WebCenter Sitesコアからのみです。
Satellite Serverのサーブレット
Satellite Serverはいくつかのサーブレットで構成されています。次に示すように、ページのキャッシュと提供を行うサーブレットが1つ、キャッシュを管理するサーブレットが2つです。
-
Satellite: ページレット・レベルでページをキャッシュします。Satelliteのエレメント内にあるXMLタグまたはJSPタグは、どのページレットをキャッシュする必要があるかを示し、Satellite Serverの各種設定を制御します。
-
Inventory: Satellite Serverキャッシュを調べ、必要に応じて、キャッシュから個々のページまたはページレットを手動でフラッシュするために必要な情報を入手できるようにします。
-
FlushServer: すべてのタイプのキャッシュ・フラッシュを処理します。FlushServerでは、キャッシュ全体をフラッシュすることも、キャッシュ内の個々のアイテムをフラッシュすることもできます。
Satellite Serverのタグおよびページのキャッシングを使用したページのコーディング全般については、「ページのデザインとキャッシングの理解」を参照してください。
WebCenter Sitesのユーティリティ
WebCenter Sitesデータベースおよび様々なコードを管理できるように、GUIベースのWebCenter Sitesユーティリティが数多く用意されています。必要なユーティリティを判断してシステムにインストールします。
-
Developer Tools: WebCenter SitesとEclipse統合開発環境(IDE)を統合します。WebCenter Sitesの開発者がDeveloper Toolsキットを使用すると、Eclipseやバージョン・コントロール・システム(VCS)統合などのツールを使用して分散環境で作業ができます。
-
Sites Explorer: WebCenter Sitesデータベースで表の表示および編集を行います。
-
CatalogMover: データベース表のエクスポートおよびインポートを行います。
-
XMLPost: WebCenter Sitesデータベースにデータを増分インポートします。
-
BulkLoader: WebCenter Sitesデータベースに大量のデータを高速インポートします。
-
プロパティ管理ツール: Adminインタフェースからアクセス可能で、
wcs_properties.json
ファイル(システム構成ファイル)の表示と整理を行います。
WebCenter Sitesのインタフェース
一部のタスクでは、Adminインタフェースを使用します。ただし、ContributorインタフェースおよびWEMインタフェースについても理解しておくことをお薦めします。
-
Adminインタフェース: Adminインタフェースにより、開発者および管理者はWebCenter Sitesを管理および構成できます。
左側のツリー・パネルには、開発者と管理者が操作する必要のあるコンテンツ管理エレメントがすべて含まれています。右側の作業領域は、すべてのタスクと操作が実行される場所です。
Adminインタフェースではコードをベースにした操作がサポートされており、ベーシック・アセット・タイプの作成をグラフィカルに完了できます。たとえば、ベーシック・アセット・タイプを作成する手順は次のとおりです。
-
(アセット記述子ファイルと呼ばれる) XMLファイルを記述して、ベーシック・アセット・タイプを定義します。
-
このファイルをWebCenter Sitesにアップロードします。
-
AssetMakerユーティリティを起動します。このインタフェース(AssetMaker)の機能の1つは、アセット記述子ファイルを読み取り、そこからこのアセット・タイプの記憶域表を作成します。このインタフェースで他の機能を使用すると、アセット・タイプを構成できます(たとえば、その認可されたユーザーの名前を付ける)。
管理者は同じインタフェースを使用して、コンテンツ管理サイトの作成、システム・ユーザーの管理、それらシステム・ユーザーのコンテンツに対する権限の制御、ワークフロー・プロセスの確立、およびWebCenter Sitesの機能(Mobilityなど)の構成ができます。
-
-
Contributorインタフェース: Contributorインタフェースは、特に、コンテンツ・プロバイダおよびビジネス・ユーザー向けに設計されています。アセットのプレビュー、作成、編集、削除、承認など、WebCenter Sitesのコンテンツ管理機能のほとんどが使いやすくなり、迅速にアクセスできます。
Contributorインタフェースでアセットを操作するときには、次のWYSIWYGエディタに対応したフィールドが表示される場合があります。
-
CKEditor: CKSource社製のオープン・ソースWYSIWYGテキスト・エディタで、クライアント側にインストールしておく必要はありません。開発者はCKEditorを使用して、テキスト入力フィールドでフィールドの入力メカニズムとしてCKEditorを使用するベーシック・アセットを作成できます。開発者はまた、入力手段としてCKEditorを使用するフレックス属性に対する属性エディタを作成することもできます。
-
Clarkii Online Image Editor (Clarkii OIE): InDis Baltic社製の広く普及したサード・パーティ・イメージ・エディタです。開発者はClarkii OIEを有効にして、ユーザーがフォーム・モードでイメージを直接編集できるようにすることで、外部のイメージ・エディタが不要になります。
-
-
WEMのAdminインタフェース: WEMのAdminインタフェースは、特に、ロールを使用してアプリケーションおよびユーザーのサイトへの割当てを管理者が管理できるように設計されています。
関連項目:
『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のWebエクスペリエンス管理フレームワークの使用に関する項およびWebエクスペリエンス管理(WEM)フレームワークを使用したアプリケーションの開発に関する項。
WebCenter Sitesのユースケース・シナリオ
WebCenter Sitesでは、ビジネス・ユーザー・コンテンツの作成、大規模な動的サイトの配信、コンテンツのテーゲット設定と最適化、ユーザー生成コンテンツ、エンド・ユーザーのパーソナライズ、マーケティングとリード生成、およびモバイルWeb配信の機能があります。WebCenter Sitesは、様々な業界で使用され、マーケティング・キャンペーンを実行したり、ビジネス・リード創出したりするための、情報発信およびブランド確立を目的としたWebサイトを作成します。
次のトピックでは、WebCenter Sitesユースケースについて説明します。
情報発信(ブランド確立)用Webサイトの開発
WebCenter Sitesでは、製品およびサービスのブランド確立用Webサイトを開発するための使いやすく効率的な機能を提供します。最初に、WebCenter Sitesコアを使用して、基本インフラストラクチャを作成します。WebCenter SitesでWebサイトを設計する場合は、次の点を考慮してください。
-
コンテンツ・タイプ: 最初に、サイト・コンテンツをどのように分類してWebCenter Sitesで設計するかを決定します。どのコンテンツ・タイプを構造化してバイナリにすべきか。コンテンツ・コントリビュータがWebCenter Sitesのフォーム・モードまたはWebモードで作成するコンテンツは構造化されますが、インポートされるコンテンツ(Microsoft Wordファイルなど)はバイナリです。
コンテンツ・タイプについては、アーキテクトが次を決定します。
-
どのコンテンツ・タイプに変数属性が含まれ、どのコンテンツ・タイプに固定属性が含まれるようにするか。企業は既存の範囲の提供品を時々改善するため、コンテンツの製品モデルまたはサービス・タイプでは変数属性が必要になる場合があります。
-
どのコンテンツを水平にし、どのコンテンツを階層化するか。たとえば、イメージは通常は水平タイプまたはベーシック・タイプになります。MP3プレーヤのヘッドフォンなどの製品アクセサリ・モデルは階層化できます。
-
製品またはサービスに基づいて、どのコンテンツを他のコンテンツから継承するか。製品モデルでは、親製品から属性を継承する必要が生じる場合があります。一部のコンテンツ・タイプはスタンドアロンになる場合があります。
-
一部のコンテンツ・タイプには、関連付けられたコンテンツが必要になる場合があります。たとえば、製品モデルの記事と同様の製品モデルまたは親製品の記事を関連付ける必要が生じる場合があります。
-
障害発生時にコンテンツをどのようにリカバリするか。
これらの考慮事項では、アセット・モデルおよびその実装を決定します。一般に、Webサイトではベーシック・アセットとフレックス・アセットを組み合せる必要があります。コンテンツ・タイプがWebCenter Sitesでどのように決定および設計されるかの詳細は、「アセット・タイプおよびアセット・モデルの理解」を参照してください。
-
-
コンテンツ・ボリューム: コンテンツのボリュームを処理できるようにWebサイトを設計する必要があります。これはスケーラブルにする必要があります。
-
ページ: ページには、再利用可能な多くのページレットが含まれます。ページを設計する場合は、パフォーマンス向上のために、再利用性の利点とキャッシング戦略を考慮します。テンプレートおよびCSElementのエレメントのコーディングおよびページのデザインとキャッシングの理解を参照してください。
-
ページ・キャッシング: パフォーマンス向上のため、ページレットがいつ使用されるかを決定します。ページごとに使用される未キャッシュのページレットが少なくなるように、ページ・テンプレートを設計します。キャッシングの管理を参照してください。
-
テンプレート: テンプレートを設計する前に、テンプレート・コンポーネントが再利用されるシナリオと、ページレットが他のページで使用できるシナリオを考慮します。ページレットの一部の例: 多くのページで、上部、LeftNavおよびフッターが再利用される可能性があります。Webサイトの開発を参照してください。
-
コンテンツ・モード: WebCenter Sitesでは、フォーム・モードおよびWebモードをコンテンツ管理サイトに含めることができます。フォーム・モードはすぐ使用できますが、Webモードでは、制限されたロールを実行する使用頻度の低いユーザーが、アセットのレンダリングされた(プレビュー)バージョンから直接コンテンツを検索、編集および送信できます。Webモードでは、コンテンツ・コントリビュータが2つ以上のバージョンのWebページを比較して、どちらのバージョンが効果的かを判断することもできます。Webサイトの開発を参照してください。
-
コンテンツ管理(CM)サイト: CMサイトは、オンライン・サイトのコンテンツのソースで、オンライン・サイト全体を表すことも、そのセクションのいずれかを表すこともできます。CMサイトとそのオンライン・サイトが1つの場合、CMサイトが1つでオンライン・サイトが複数の場合、CMサイトとオンライン・サイトが複数の場合など、顧客のニーズを考慮して、CMサイトとオンライン・サイトをどのように設計するかを決定します。『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のコンテンツ管理モデルに関する項を参照してください。
-
多言語要件: 顧客が探しているものを見つけます。顧客が大抵希望するのは、マスター言語でコンテンツを作成して、関連する他のコンテンツに接続してから(マスター言語でない場合もあります)、パブリッシュして後で翻訳することです。また、コンテンツと、関連する他の部分を最初に翻訳してから、全体を1つのパッケージとしてパブリッシュすることも希望します。顧客が、レンダリングされるコンテンツに特定の国に固有のルールを適用したいと考えているかどうかを判断します。多言語サポートのサイトの構成を参照してください。
-
ユーザー権限: アクセス制御リスト(ACL)を使用して、WebCenter Sitesデータベースおよびレンダリングされるページ(WebCenter Sitesによってサイト上に表示)へのユーザー・アクセスを制限します。WebCenter Sitesでは、ユーザー・タグを提供して、ユーザーのログインとログアウト、およびアカウントの作成とユーザー・プロファイルの編集も行います。一般的なユーザー権限の例: コンテンツの作成、編集、承認、WEM、AdminおよびContributorインタフェースへのアクセス権。様々なロールに対してどのようなタイプの全権限を作成するかを考慮します。「セキュリティ: コンテンツ管理ユーザーの管理」および『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』のユーザーの作成および認可に関する項を参照してください。
-
セキュリティ: 開発者がオンライン・サイトの設計や管理システムのユーザー・インタフェースの変更の検討を開始する前に、管理者はセキュリティ・プロトコルを決定し、実装する必要があります。セキュリティ構成に関する決定は、オンライン・サイトのコード化および実装方法に影響を与えます。『Oracle Fusion Middleware Oracle WebCenter Sitesの管理』の外部セキュリティの設定に関する項を参照してください。
-
カスタマイズ: 顧客チームはContributorインタフェースを操作してWebサイトの編集と更新を行います。効率性と利便性のため、サイト・ツリー、ダッシュボード、アセット・フォーム、検索ビューなどのContributorインタフェース・コンポーネントをカスタマイズできます。Oracle WebCenter Sitesのカスタマイズを参照してください。
市場指向型Webサイトの作成
Oracle WebCenter Sitesでは、マーケティング担当者およびビジネス・ユーザーが、販売および顧客ロイヤルティ向けに、コンテキスト的に関連するWebサイト・コンテンツを簡単に作成および管理できます。パーソナライズおよびターゲット設定されたWebサイトの開発と、Webサイトの効果を分析して製品販売と新規顧客の創出を可能にするコンポーネントが提供されます。
Oracle WebCenter Sites: Engageを使用すると、サイトの訪問者および顧客に関する情報を収集するオンライン・サイトを設計できます。マーケティングでは、この情報を使用して、各訪問者に表示される製品の配置および販促用の提供品をパーソナライズできます。
Oracle WebCenter Sites: A/B Testing・モジュールでは、2つ以上のバージョンのWebページを比較して、販売を通してWebサイトの訪問者をWebサイトの顧客に変換可能な、最も効果的なバージョンを判断できる機能が提供されます。WebCenter Sitesでは、多くの方法でページ・バージョンの効果を分析できます。それらの一部には、リンクをクリックする、特定のページを訪問する。一定期間サイトに留まる、アイテムをショッピング・カートに追加するなどの行動があり、製品の販売もあります。詳細は、unresolvable-reference.htmlを参照してください。
詳細は、「Engageでのパーソナライズおよびターゲット設定されたWebサイトの開発」を参照してください。
モバイル用Webサイトの作成
WebCenter Sitesのモビリティ機能では、Webプレゼンスをモバイル・デバイスに拡張して、マルチチャネルのマーケティングおよび顧客体験を提供し、モバイル・サイトの管理の時間、コスト、労力を大幅に削減します。モビリティ機能を使用して、携帯電話やタブレットなどの様々なモバイル・デバイスでWebサイトを作成、プレビューおよび配信できます。モバイル用Webサイトの開発の詳細は、「モバイル用Webサイトの開発」を参照してください。