ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebCenter Portal管理者ガイド
11g リリース1(11.1.1.6.0)
B72085-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次
索引へ移動
索引

前
 
次
 

20 WebCenter Portalのパーソナライズの管理

この章では、WebCenter Portalのパーソナライズ・サービスを構成および管理する方法について説明します。

この章の内容は次のとおりです。

対象読者

この章の内容は、Fusion Middleware管理者(Oracle WebLogic Server管理コンソールを使用してAdminまたはOperatorロールを付与されたユーザー)を対象としています。第1.8項「管理操作、ロールおよびツールの理解」も参照してください。

20.1 WebCenter Portalのパーソナライズに関する必要な知識

WebCenter Portalのパーソナライズを使用すると、WebCenter Portalアプリケーションのユーザー・エクスペリエンスを動的に導出できます。パーソナライズは、定義された入力データ・ソースを評価し、その評価に基づいてデシジョンを生成し、この情報を宣言的に定義されたパーソナライズ・シナリオに適用します。パーソナライズでは、たとえば、人事管理データベース内のユーザーに関する情報に基づいてコンテンツを返したりアプリケーション・フローを変更することで、その特定のユーザー向けのアプリケーション・エクスペリエンスを提供できます。

パーソナライズは、WC_Utilitiesサーバーのwc_domainにアプリケーションとしてインストールされます。クライアント・アプリケーションは、リモートからHTTP経由でRESTfulサービスを使用してパーソナライズにアクセスします。簡単にアクセスできるように、Javaアプリケーションでは、用意されている一連のPOJOクライアント・ライブラリを使用できます。デザインタイムJDeveloperツールを使用してプロパティ・サービスおよびコンダクタのアーティファクトを作成し、それをリモートからRESTコールで実行できます。パーソナライズは、アプリケーションを最初に作成するときに、JDeveloper統合ドメインでパーソナライズ・テクノロジ・ライブラリを含むプロジェクトにも使用できます。評価目的および反復開発において、このドメインはパーソナライズを最もすばやく簡単に探索できる手段です。パーソナライズのアーキテクチャとサービスの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』のWebCenter Portalアプリケーションのパーソナライズに関する項を参照してください。

20.2 開始前の作業: 必要な構成の実行

パーソナライズREST APIは、WebCenter Portal: Spacesを必要とします。この項では、パーソナライズREST APIを使用するために実行する必要がある構成について説明します。

20.2.1 概要

WebCenter PortalのパーソナライズREST APIを使用するには、まず、この項で説明するサーバー側の構成を行う必要があります。2つの異なる構成を行う必要があります。アイデンティティ・アサータを構成し、必要なエントリを資格証明ストアにシードする必要があります。これにより、RESTセキュリティ・トークンが適切に機能するようになります。

これらの構成作業は、WebCenter Portal: Spacesの初回インストール時に行います。まだ行われていない場合は実行してください。

セキュリティ・トークンの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』のWebCenter Portal REST APIのセキュリティに関する考慮事項に関する項を参照してください。

20.2.2 アイデンティティ・アサータの構成

REST APIを使用する前に、まずアイデンティティ・アサータを構成する必要があります。手順の詳細は、第29.10項「RESTサービス・アイデンティティ・アサータの構成」を参照してください。

20.2.3 WebLogic Server資格証明ストアの構成

構成の第2ステップとして、WLS資格証明ストアを構成します。資格証明ストアを構成するには、サーバーの実行中に次の各コマンドを実行します。コマンドの実行後にサーバーを再起動する必要はありません。

createCred(map="o.webcenter.jf.csf.map", key="keygen.algorithm",
    user="keygen.algorithm", password="AES")
createCred(map="o.webcenter.jf.csf.map", key="cipher.transformation",
    user="cipher.transformation", password="AES/CBC/PKCS5Padding") 

20.3 パーソナライズのその他の前提条件

次の各項で、パーソナライズのシステム要件と依存性について説明します。

20.3.1 パーソナライズのインストール要件

パーソナライズ・コンダクタ・シナリオでCMISデータ・プロバイダ、アクティビティ・グラフ・データ・プロバイダまたはピープル・コネクション・ロケータを使用している場合は、WebCenter Portal: Spacesをインストールする必要があります。高可用性環境にかぎり、Coherenceも必要です。

20.3.2 パーソナライズの構成要件

CMISプロバイダ、アクティビティ・グラフ・プロバイダ、ピープル・コネクション・ロケータまたはカスタム・プロバイダを使用する場合は、これらを第20.5項「プロバイダの構成」の説明に従って構成する必要があります。

SpacesアプリケーションまたはFrameworkアプリケーションでコンテンツ・プレゼンタを使用してコンテンツを表示する場合は、第20.7項「コンテンツ・プレゼンタの構成」の説明に従ってコンテンツ・プレゼンタを構成して、シナリオの結果が表示されるようにする必要もあります。

パーソナライズでは、WebCenter Portalドメイン内の様々な管理対象サーバー間のシングル・サインオン(SSO)を実現するためにトラスト・サービスが使用されます。user_projects/applications/wc_domainディレクトリにあるWLSTスクリプトのconfigureTrustWCPS.pyconfigureConnectionsWCPS.pyを使用して、トラスト・サービスを構成する必要があります。JDeveloperの統合ドメインの場合は、DefaultDomain/scrpts-wcpsディレクトリにある単一のスクリプト(configureWCPS.py)のみを使用します。このスクリプトによるトラスト・サービスおよびシングル・サインオンの構成の詳細は、第20.8項「シングル・サインオンの構成」を参照してください。

20.3.3 パーソナライズのセキュリティ

パーソナライズは、WLSセキュリティ・レルム内で構成されているどのユーザー認証サービスのソースとも互換性があります。したがって、ドメインのデフォルトのアイデンティティ・ストアおよびポリシー・ストアと資格証明ストアを使用できます。

ピープル・コネクション・ロケータまたはアクティビティ・グラフ・データ・プロバイダを使用している場合、各ユーザーがWebCenter Portal: Spacesユーザーとしても構成されている必要があります。

パーソナライズRESTサービスには、事前構成されたパーソナライズWebアプリケーションを介してアクセスしますが、このアプリケーションはresourceIndexを除くすべてのリソース(すべてのURI)に対して認証アクセスを要求します。これらの制約を変更して、匿名アクセスが必要なシナリオを実行する際のセキュリティを下げたり、新しいシナリオを作成できないようにセキュリティを強化したりできます。デフォルトのセキュリティ設定の変更については、第20.9項「デフォルトのセキュリティ設定のオーバーライド」を参照してください。

WebCenter Portalでは、トラスト・サービスがパーソナライズRESTコールにシングル・サインオンを提供します。このため、WLS TrustServicesIdentityAsserterを構成する必要があります(事前構成されていません)。これは、WLSコンソールを使用するか、user_projects/applications/wc_domainディレクトリにあるWLSTスクリプトのconfigureTrustWCPS.pyconfigureConnectionsWCPS.pyを使用して手動で実行できます。JDeveloperの統合ドメインの場合は、DefaultDomain/scrpts-wcpsディレクトリにある単一のスクリプト(configureWCPS.py)を使用します。

また、オプションとして、WebCenter Portalアプリケーションとパーソナライズ・サーバーおよびパーソナライズ・プロバイダとの接続をシングル・サインオンで保護することもできます。シングル・サインオンの構成の詳細は、第20.8項「シングル・サインオンの構成」を参照してください。プロパティ・データへのアクセスを事前認証するフィルタ(IPropertyPermission)の使用により、プロパティ・サービス・データへのアクセスをアプリケーションで制限することもできます。

各シナリオでは、基本ロール評価およびテストをサポートするデフォルトの関数ライブラリを使用して、シナリオへのアクセスを認証できます。

20.3.4 パーソナライズの制限事項

デフォルトでは、パーソナライズは管理対象サーバーが有効範囲のキャッシュを使用します。つまり、管理対象サーバー外にキャッシュされたデータに変更が加えられた場合、その変更はパーソナライズの追加インストールには認識されません。パーソナライズのクラスタ化された(複数の)デプロイでは、クラスタを認識するキャッシュに対してCoherenceが構成されます。

20.3.5 パーソナライズの構成オプション

この項では、WebCenter Portalのパーソナライズのデフォルトのプロバイダとその他のオプションの拡張について、およびそれらをパーソナライズ・プロジェクトに統合するために必要な構成について説明します。

デフォルトのパーソナライズ・データ・プロバイダを使用すると、既存のWebCenter Portalサービスに基づいてシナリオを記述したり、プロファイル・データにアクセスしたりできます。これらのWebCenter Portalサービスは、RESTful Webサービスを介してデータを公開します。パーソナライズ・データ・プロバイダは、これらのWebサービスのRESTクライアントとして機能するので、こうした外部データ・リソースに基づくシナリオをJDeveloper内で簡単に作成できます。独自のデータ・プロバイダおよびプロパティ・ロケータの実装を用意して、独自の外部データ・ソースを統合することもできます。

CMISプロバイダ

CMISプロバイダは、パーソナライズ・プロジェクトでオプションのデータ・ソースとして使用できるデフォルトのプロバイダです。WebCenter Portalコンテンツ・サービスは、CMIS (Content Management Interoperability Services)標準を使用して公開されます。CMIS RESTサービスはWC_Spacesサーバー上で稼働し、(別途の構成の選択に基づいて)Oracle WebCenter Content Serverへのアクセスを提供します。

パーソナライズ・ユーザーがSpacesユーザーでもある場合、Spacesアプリケーションによって格納されたユーザー・コンテンツにシナリオからアクセスできます。Content Serverの詳細は、第11章「コンテンツ・リポジトリの管理」を参照してください。CMISプロバイダの構成の詳細は、第20.5.2項「CMISプロバイダの構成」を参照してください。

アクティビティ・グラフ・データ・プロバイダ

アクティビティ・グラフ・データ・プロバイダは、パーソナライズ・プロジェクトでオプションのデータ・ソースとして使用できるデフォルトのプロバイダです。WebCenter Portalアプリケーションからのアクティビティ・ストリーム情報は、アクティビティ・グラフ・サービスを介して公開されます。アクティビティ・グラフRESTサービスはWC_Spacesサーバー上で稼働し、アクティビティ・グラフによって作成された、アクティビティ・ストリームに基づく推奨へのアクセスを提供します。

パーソナライズ・ユーザーがSpacesユーザーでもある場合、(Spacesコンテンツ・タイプの)アクティビティに関する推奨にシナリオからアクセスできます。アクティビティ・グラフ・サービスの詳細は、第12章「アクティビティ・グラフ・サービスの管理」を参照してください。アクティビティ・グラフ・プロバイダの構成の詳細は、第20.5.3項「アクティビティ・グラフ・プロバイダの構成」を参照してください。

Oracle People Connectionsロケータ

ピープル・コネクション・ロケータは、パーソナライズ・プロジェクトでオプションのデータ・ソースとして使用できるロケータです。ピープル・コネクション・サービスの情報は、ピープルWebサービスを介して公開されます。ピープル・コネクションRESTサービスはWC_Spacesサーバー上で稼働し、Spacesアプリケーションのコンテキストに作成されたソーシャル・プロファイル・データへのアクセスを提供します。パーソナライズ・ユーザーがSpacesユーザーでもある場合、ピープル・プロファイル・データにシナリオからアクセスできます。ピープル・コネクション・サービスの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』の「ピープル・コネクション・サービスの統合」の章を参照してください。他のデフォルトのデータ・プロバイダと異なり、ピープル・コネクションWebサービスへのアクセスは、汎用のプロパティ・サービス・データ・プロバイダを介してIPropertyLocator拡張インタフェースを使用して行われます。ピープル・コネクション・プロバイダの構成の詳細は、第20.5.4項「Oracle People Connectionsロケータの構成」を参照してください。

20.4 WebCenter OPSSトラスト・サービスの構成

パーソナライズでは、OPSS (Oracle Platform Security Services)の新機能をシングル・サインオンに利用します。パーソナライズの最も単純なユースケースを除くすべてのユースケースで、この機能をここで説明する構成手順に従って有効化する必要があります。

次の場合は、OPSSトラスト・サービスを構成する必要がありません。

次の場合は、OPSSトラスト・サービスを構成する必要があります。

この項の内容は次のとおりです。

20.4.1 WebCenter Portalドメインでのトラスト・サービスの構成

デフォルトのWebCenter Portalインストールにはパーソナライズ・ドメイン拡張テンプレートが含まれており、このテンプレートは2つのWLST Pythonスクリプト(configureTrustWCPS.pyconfigureConnectionsWCPS.py)を次のドメイン・ホームにインストールします。

oracle/user_projects/applications/wc_domain/scripts

これらのスクリプトおよび関連するconfigureWCPS.propertiesファイルには、使用方法の説明が記載されています。これらはサンプル・スクリプトであり、実行する前にプロパティ・ファイルを編集して、少なくともocs.server名(通常はContent Server)、spaces.server.host名およびfmwconfig.locationを指定する必要があります。これらの値はWebCenter Portalインストールごとに一意のものなので、編集する必要があります。それ以外の値もローカル環境に応じて変更が必要な場合があります(たとえば、マシン・ポート番号はそれぞれ異なる可能性があります)。

configureConnectionsWCPS.pyスクリプトは、デフォルトのパーソナライズ接続情報(つまり、アクティビティ・グラフ、CMISおよびピープル・コネクションの接続情報)を設定します。このスクリプトはWCPS.pyライブラリを使用しますが、このライブラリはWebCenter Portalドメインにのみインストールされています(統合WLSドメインにはインストールされていません)。ただし、WebCenter PortalドメインでconfigureConnectionsWCPS.pyを実行して、(t3 URLを使用して)統合WLSドメインを指すようにさせることができます。


注意:

configureTrustWCPS.pyによって設定されるトラスト・サービスの構成は、リモートから適用しないでください。このスクリプトは、WebCenter Portalドメイン(wc_domain)からのみ実行してください。


oracle/as11gr1wc/common/bin/wlst.shコマンド・ファイルを使用して、環境変数を正しく設定する必要があります(as11gr1wcスクリプトの場合)。

各スクリプトを実行したら、ドメイン内の全サーバーを再起動します。

構成のテスト

トラスト・サービスのシングル・サインオンの動作を確認するには、カスタムJEE Webアプリケーションから(パーソナライズ・クライアント・ライブラリを使用して)コンダクタまたはプロパティ・サービスを呼び出すか、パーソナライズ接続(アクティビティ・グラフまたはCMISデータ・プロバイダなど)を使用するシナリオを実行するか、ピープル・コネクション・ロケータを使用してピープル・コネクションのプロパティにアクセスする必要があります。

前述のいずれかを実行すると、次のようなデフォルトのログ・エントリがWC_Utilities-diagnostic.logに記録されます。

[2010-11-10T07:30:40.362-08:00] [WC_Utilities] [NOTIFICATION] [] [oracle.jps.trust] [tid: [ACTIVE].ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)']
[ecid: 0000IkqQG4NBh49LJeCCyf1CqfXw000008,0] [APP: wcps-services#11.1.1.4.0] Token issue operation

また、WC_Spaces-diagnostic.logにも次のようなデフォルトのログ・エントリが記録されます(そこでサービスにアクセスしている場合)。

[2010-11-10T07:30:40.236-08:00] [WC_Spaces] [NOTIFICATION] [] [oracle.jps.trust] [tid: [ACTIVE].ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)']
[ecid: d461d36d4a552b90:-1fe62a5d:12c365bb19b:-8000-000000000000002c,0] [APP: webcenter#11.1.1.4.0] Token validate operation.

20.4.2 統合WLSドメインでのトラスト・サービスの構成

JDeveloperインストーラには、次のディレクトリにある統合WLSドメインを構成するための別のPythonスクリプトも付属しています。

DefaultDomain\scrpts-wcps\

このスクリプトは、手動でもJDeveloperの外部スクリプトの実行機能を使用しても実行できます。

デフォルト以外のユーザーまたはパスワードを使用している場合は、プロパティ・ファイルを編集してください。統合WLSドメインを作成して起動したら、scrpts-wcpsディレクトリからスクリプトを実行します。

Oracle\MiddlewareRC8\oracle_common\common\bin\wlst.cmd configureWCPS.py configureWCPS.properties

統合WLSドメインを再起動します。

構成のテスト

トークン発行操作およびトークン検証操作を確認するには、デフォルトのロギング・レベルでは不十分です。JDeveloperの「Oracle Diagnostic Loggingの構成」機能を使用し、oracle.jps.trustログ出力に移動して、レベルを「最も詳細」に設定します。コンダクタまたはプロパティ・サービスを呼び出すカスタムJEE Webアプリケーションを含むシナリオを実行します。

20.4.3 ドメイン間トラストの構成

トラスト・サービスはドメイン間トラストをサポートしています。つまり、複数の異なるWLSドメインにキーストアが作成されている場合、クライアントはドメイン「A」でトークンを割り当て、そのトークンを使用したHTTPリクエストをドメイン「B」に対して発行し、シングル・サインオンによるドメイン「B」でのユーザー/リクエストの検証および認証をアイデンティティ・アサータに実行させることができます。ただし、重要な前提として、ドメイン「A」内のユーザーと同じユーザーがドメイン「B」に存在する必要があります。

デフォルトでは、統合WLSドメインでconfigureWCPS.pyスクリプトを実行すると、extDomain.cerという名前の証明書が生成されます。統合WLSドメインとWebCenter Portalドメインの間のドメイン間トラストを有効にする手順は次のとおりです。

extDomain.cerをWebCenter Portalドメイン(wc_domain)インストールにコピーして、そこでインポートします。extDomain.cerファイルをscriptsディレクトリにコピーします。

oracle/user_projects/applications/wc_domain/scripts

次のコマンドを入力して証明書をインポートします。

keytool -importcert -alias orakey1 -file extDomain.cer -keystore ../../../../wlserver_10.3/wc_domain/config/fmwconfig/default-keystore.jks -storepass weblogic

WebCenter Portalドメイン内の各サーバーを再起動します。

構成のテスト

ドメイン間トラストを検証する最も簡単な方法は、まず、WebCenter PortalドメインのWC_Spacesサーバーを指すピープル・コネクション・パーソナライズ接続を統合WLSドメインに作成します。次に、ピープル・コネクションのプロパティ値を取得する簡単なシナリオを作成して、統合WLSドメインにデプロイします。最後に、前述の「トークン検証操作」というメッセージがWC_Spacesサーバーのログに記録されていることを確認します。

20.5 プロバイダの構成

WebCenter Portalのパーソナライズには、アクティビティ・グラフ用およびContent Server用のデフォルトのプロバイダと、ピープル・コネクション用のロケータが用意されています。これらのプロバイダのいずれかを使用するシナリオでは、次の各項の説明に従って、WLSTスクリプトのconfigureWCPY.pyを使用してプロバイダを構成する必要があります。カスタムのプロバイダまたはロケータを使用している場合は、カスタム・プロバイダの構成に関する項の説明に従って、それらも構成する必要があります。シナリオでプロバイダやロケータを使用していない場合は、プロバイダやロケータを構成する必要はありません。

デフォルトのプロバイダを使用しないシナリオや、カスタムのプロバイダまたはOTNからダウンロードしたプロバイダのみを使用するシナリオも開発できます。また、JDeveloper統合ドメイン内のみで開発する場合は、通常、これらのWC_Spacesベースのサービスにはアクセスできません(WebCenter Portal: Spacesは統合ドメイン内では稼働しないため)。拡張構成(configureWCPS.pyでもサポートされています)を使用すれば、WC_Spacesドメイン内のWebCenter Portal: Spacesサービスに統合ドメインのパーソナライズ・サーバーからアクセスできます。これにはドメイン間トラストを使用するので、プロバイダ接続を構成する必要があります。WC_Spacesドメイン内にあるconfigureTrustWCPS.pyスクリプトとconfigureConnectionsWCPS.pyスクリプトを使用するか、DefaultDomain/scrpts-wcpsドメイン・ディレクトリにあるJDeveloperの統合WLSドメイン用のconfigureWCPS.pyスクリプトを使用して、適切なWLS管理サーバーをポイントすることにより、対応するドメインを構成します。

20.5.1 プロバイダ接続設定の作成または変更

この項では、WLST、JConsole、Fusion Middleware Controlを使用して、wcps-connections.xmlに格納されている接続情報を作成または変更する方法について説明します。また、カスタム構成クラスを記述してカスタム・プロバイダを構成する方法についても説明します。

この項の内容は次のとおりです。

20.5.1.1 パーソナライズ接続情報の概要

パーソナライズ接続情報は、ドメイン・ディレクトリ内の次の場所にあるwcps-connections.xmlに保持されています。

<domain directory>/config/fmwconfig/wcps-connections.xml

このファイルを直接編集することはお薦めできませんが、接続情報を変更するには、次のように複数の方法があります。

  • WLST: WLSTコマンドを使用してスクリプトを作成することにより、接続構成を表すシステムMBeansにアクセスできます。WLSTコマンドを使用して接続設定を構成する方法の詳細は、第20.5.1.3項「WLSTを使用した接続の構成」を参照してください。

  • JConsole: JConsoleを使用して接続JMX MBeansを作成または編集することにより、接続構成を表示または編集できます。JConsoleを使用して接続設定を構成する方法の詳細は、第20.5.1.4項「JConsoleを使用した接続の構成」を参照してください。

  • Fusion Middleware Control: Fusion Middleware Controlを使用して、パーソナライズとともにデプロイされたJMX MBeansを表示または編集できます。Fusion Middleware Controlを使用して接続設定を構成する方法の詳細は、第20.5.1.5項「Fusion Middleware Controlを使用した接続の構成」を参照してください。

20.5.1.2 接続構成の属性

wcps-connections.xmlに保持されている接続プロパティおよび接続属性で、WLST、JConsoleまたはFusion Middleware Controlを使用して変更できるものを次に示します。各接続プロパティは、接続に使用されるプロバイダまたはロケータに固有のものです。たとえば、CMISプロバイダでは、アクティビティ・グラフ・プロバイダとは異なる接続プロパティが使用されます。

  • <connection-name>: この接続の一意の名前。接続は名前によって取得できます。

  • <connection-type>: この接続の一意のタイプ。接続はタイプによって取得できます。connection-typeを指定する必要があるのは、カスタム接続の場合のみです。デフォルトのデータ・プロバイダの場合、このフィールドは内部的に設定されています。

  • <namespace>: 一般的に、アクセスするシナリオがデプロイされるネームスペースに一致する必要があります。ネームスペースでは、特定のシナリオに対する適切な<connection>を検索する方法をコンダクタが決定します。ワイルドカードの「*」を使用すると、この接続要素をすべてのネームスペースで使用可能にできます。WLSTスクリプト内で指定されない場合、namespaceのデフォルトは「*」になります。

  • <name>isDefault</name>: この接続をデフォルトの接続としてマークします(複数が定義されている場合)。複数の接続の「isDefault」フラグをtrueに設定できます。この場合、どのデフォルト接続を返すかは個々のプロバイダ次第です。

20.5.1.3 WLSTを使用した接続の構成

プロバイダ接続を簡単に構成できるように、一連のパーソナライズWLSTコマンドが用意されています。これらのコマンドを組み合せてスクリプトを作成できます。スクリプトの例が用意されおり、これをカスタマイズしたり、直接使用したりできます。このサンプル・スクリプトは、プロバイダ接続を設定し、さらにトラスト・サービスを初期化します。

パーソナライズWLSTコマンドはoracle/as11gr1wc/common/wlst/WCPS.pyにインストールされており、oracle/as11gr1wc/common/bin/wlst.sh(cmd)スクリプトを使用して呼び出します。

デフォルトの各データ・プロバイダは、次の各項で説明する特定のWLSTコマンドでサポートされています。カスタムのデータ・プロバイダについては、汎用のWLSTコマンドを使用して接続を構成します。次に例を示します。

createWCPSCustomConnection('customConnectionName', 'connectionType', properties={ 'name1': 'value1', 'name2': 'value2' })

パーソナライズWLST接続およびその他のコマンドの全リストは、Oracle Fusion Middleware WebLogicスクリプト・ツール・コマンド・リファレンスのパーソナライズに関する項を参照してください。

20.5.1.4 JConsoleを使用した接続の構成

$JAVA_HOME/jdk6/bin/jconsoleにあるJConsoleを使用して、WebCenter PortalのパーソナライズとともにデプロイされたJMX MBeans(アクティビティ・グラフ、CMISおよびピープル・コネクションの接続構成MBeans)を作成、表示または編集できます。これらの作業について、次の各項で説明します。

20.5.1.4.1 JConsoleを使用した新規接続の作成

接続を作成する手順は次のとおりです。

  1. 次に示すようにJConsoleを起動します。

    jconsole -J-Djava.class.path=$JAVA_HOME/lib/jconsole.jar:$JAVA_HOME/lib/tools.jar:$ORACLE_HOME/oracle/wlserver_10.3/server/lib/wljmxclient.jar  -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote
    
  2. JConsole Remote Connectionを開きます。

    service:jmx:iiop://example.com:7001/jndi/weblogic.management.mbeanservers.domainruntime
    Username: weblogic
    Password: welcome1
    
  3. oracle.wcps.connectionsの下のツリーで、「ConnectionConfiguration」に移動し、「操作」を選択します。

  4. 「addConnection」をクリックし、「Namespace」「タイプ」および「名前」を入力します。

    これらの接続は、デフォルトのプロバイダについては、configureConnectionsWCPS.py scriptを使用して事前定義されています。

20.5.1.4.2 JConsoleを使用した接続設定の編集

接続設定を表示または編集する手順は次のとおりです。

  1. 次に示すようにJConsoleを起動します。

    jconsole -J-Djava.class.path=$JAVA_HOME/lib/jconsole.jar:$JAVA_HOME/lib/tools.jar:$ORACLE_HOME/oracle/wlserver_10.3/server/lib/wljmxclient.jar  -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote
    
  2. JConsole Remote Connectionを開きます。

    service:jmx:iiop://example.com:7001/jndi/weblogic.management.mbeanservers.domainruntime
    Username: weblogic
    Password: welcome1
    
  3. プロバイダの接続プロパティを変更します。たとえば、アクティビティ・グラフのホスト名を変更する手順は次のとおりです。

    1. 次のツリーを開きます。

      oracle.wcps.connections->ConnectionConfiguration.Namespace.Connection->default->activity.provider.connection->ConnectionConfiguration->wcps-services->ActivityGraphConfigConnection->Attributes
      
    2. 「プロパティ」をクリックします。

    3. 右側のパネルで、先頭行の値をダブルクリックします。

      これで、コンポジット・ナビゲーションを使用して現在の値をスクロールできます。

    4. ホストの値を変更するには、ナビゲーション・ツリーで「プロパティ」をクリックし、名前と新しい値を入力して、「setProperty」をクリックします。

20.5.1.5 Fusion Middleware Controlを使用した接続の構成

Fusion Middleware Controlを使用して、WebCenter PortalのパーソナライズとともにデプロイされたJMX MBeans(アクティビティ・グラフ、Content Serverおよびピープル・コネクションの接続構成MBeans)を表示または編集できます。

接続構成MBeansを表示または編集する手順は次のとおりです。

  1. Fusion Middleware Controlを開き、「パーソナライズ・サービス(Personalization Services)」に移動します。

  2. 「WCPS-Services」をクリックします。

  3. 「アプリケーション開発」ドロップダウン・メニューから「システムMBeanブラウザ」を選択します。

  4. 「アプリケーション定義のMBean」の下の「MBeanブラウザ」でoracle.wcps.connectionsを選択し、変更する接続情報までドリルダウンします。

  5. 「属性」タブで、「プロパティ」を選択して接続属性の現在の値を表示します。

  6. 「操作」タブで、「setProperty」を選択し、「起動」をクリックして名前/値ペアを変更します。

20.5.1.6 カスタム構成クラスの記述

カスタム構成クラス(@ConnectionConfigurationという注釈付きのクラス)を実装するには、独自のデータ・プロバイダを記述します。これにより、カスタム・データ・プロバイダがパーソナライズ接続フレームワークを使用して、パーソナライズWLSTスクリプトによって構成された接続情報を取得できるようになります。

データ・プロバイダのカスタム構成クラスの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』のカスタム・データ・プロバイダに関する項を参照してください。

20.5.2 CMISプロバイダの構成

統合WLSドメイン以外(つまり、WC_Spacesドメイン内)で作業している場合、CMISプロバイダをシナリオで使用するには、まずその接続設定を構成する必要があります。

CMISプロバイダの接続設定は、wc_domainコンダクタ拡張ディレクトリにあるwcps-connections.xmlに保持されています(ドメインが有効範囲)。このファイルを直接編集することはお薦めできませんが、接続設定を変更するには、次のように複数の方法があります。第20.5.1項「プロバイダ接続設定の作成または変更」で説明している方法のいずれかを使用して、CMISプロバイダの接続設定を構成してください。

接続要素およびプロパティの説明

<connection-name>: この接続の一意の名前。接続は名前によって取得できます。

<namespace>: 一般的に、アクセスするシナリオがデプロイされるネームスペースに一致する必要があります。ネームスペースでは、特定のシナリオに対する適切な<connection>を検索する方法をコンダクタが決定します。ワイルドカードの「*」を使用すると、この接続要素をすべてのネームスペースで使用可能にできます。

<name>isDefault</name>: この接続をデフォルトの接続としてマークします(複数の接続が定義されている場合)。

<name>repositoryId</name>: 使用環境内のコンテンツ・リポジトリと一致するように、このプロパティを変更する必要があります。

<name>path</name>: 使用環境内のコンテンツ・リポジトリと一致するように、このプロパティを変更する必要があります。指定しない場合のデフォルトは/api/cmis/repository/repositoryIdです。

<name>scheme</name>: CMIS RESTサービスにアクセスするプロトコル(HTTPまたはSSL用のHTTPS)。明示的に指定しない場合、デフォルトはHTTPに設定されています。

<name>host</name>: CMIS RESTサービスをホストするマシンの名前。これは、WC_Spaces管理対象サーバーのマシン名です。

<name>port</name>: CMIS RESTサービスをホストするマシンのポート番号。これは、WC_Spaces管理対象サーバーのマシンのポート番号です。

<name>pathTrim</name>: 明示的に指定しない場合のデフォルトは切捨てなしです。

<name>rewriteUrls</name>: 「なし」「コンシューマ」または「プロデューサ」に設定できます。詳細は、RESTプロキシのページを参照してください。ドキュメント・リンクのCMISサーバーからのダイレクトURLが必要な場合、これを「なし」に設定します。デフォルトはリライトなし(「なし」)です。

<name>username</name>: (オプション) CMIS RESTサービスとの接続時に使用するユーザー名。固定のユーザー名への接続を強制するために使用できます。

<name>password</name>: (オプション) CMIS RESTサービスとの接続時に使用するパスワード。usernameと組み合せて使用されます。固定のユーザー名/パスワードへの接続を強制するために使用できます。パスワード・アクセスが保護されていないため、開発環境外で使用することはお薦めしません。

<name>timeoutInMillisecs</name>: CMIS問合せ読取りレスポンスがタイムアウトになるまでの時間(ミリ秒)。

<name>propagateTimeoutExceptions</name>: trueの場合、タイムアウト例外を伝播します。それ以外の場合は、例外をログに記録し、CMIS問合せレスポンスに対してNULLを返します。

20.5.3 アクティビティ・グラフ・プロバイダの構成

統合WLSドメイン以外(つまり、WC_Spacesドメイン内)で作業している場合、アクティビティ・グラフ・プロバイダに基づくシナリオを使用するには、ローカル環境に応じた接続情報を構成する必要があります。

アクティビティ・グラフの接続設定は、wc_domainコンダクタ拡張ディレクトリにあるwcps-connections.xmlに保持されています(ドメインが有効範囲)。このファイルを直接編集することはお薦めできませんが、接続設定を変更するには、次のように複数の方法があります。第20.5.1項「プロバイダ接続設定の作成または変更」で説明している方法のいずれかを使用して、アクティビティ・グラフ・プロバイダの接続設定を構成してください。

接続要素およびプロパティの説明

<connection-name>: この接続の一意の名前。接続は名前によって取得できます。

<namespace>: 一般的に、アクセスするシナリオがデプロイされるネームスペースに一致する必要があります。ネームスペースでは、特定のシナリオに対する適切な<connection>を検索する方法をコンダクタが決定します。ワイルドカードの「*」を使用すると、この接続要素をすべてのネームスペースで使用可能にできます。

<name>isDefault</name>: この接続をデフォルトの接続としてマークします(複数の接続が定義されている場合)。

<name>scheme</name>: CMIS RESTサービスにアクセスするプロトコル(HTTPまたはSSL用のHTTPS)。明示的に指定しない場合、デフォルトはHTTPに設定されています。

<name>host</name>: アクティビティ・グラフRESTサービスをホストするマシンの名前。これは、WC_Spaces管理対象サーバーのマシン名です。

<name>port</name>: アクティビティ・グラフRESTサービスをホストするマシンのポート番号。これは、WC_Spaces管理対象サーバーのマシンのポート番号です。

<name>rewriteUrls</name>: 「なし」「コンシューマ」または「プロデューサ」に設定できます。詳細は、RESTプロキシのページを参照してください。ドキュメント・リンクのCMISサーバーからのダイレクトURLが必要な場合、これを「なし」に設定します。デフォルトはリライトなし(「なし」)です。

<name>user</name>: (オプション)アクティビティ・グラフRESTサービスとの接続時に使用するユーザー名。

<name>password</name>: (オプション)アクティビティ・グラフRESTサービスとの接続時に使用するパスワード。usernameと組み合せて使用されます。固定のユーザー名/パスワードへの接続を強制するために使用できます。パスワード・アクセスが保護されていないため、開発環境外で使用することはお薦めしません。

<name>restResourceIndex</name>: RESTリソース索引のhost/portの後ろに追加するURI接尾辞(例: '/rest/api/resourceIndex')

20.5.4 Oracle People Connectionsロケータの構成

統合WLSドメイン以外(つまり、WC_Spacesドメイン内)で作業している場合、ピープル・コネクション・ロケータに基づくシナリオを使用するには、ローカル環境に応じた接続情報を構成する必要があります。

プロパティ・サービスでは、ピープル・コネクション・サービスとの接続にIPropertyLocator (ピープル・コネクションILocator)が使用されます。ピープル・コネクション・サービスと接続するプロパティ・プロバイダは、このILocatorを使用して特定のユーザー(または自身)に対するPC RESTコールを行い、そのRESTサービス・コールが表すPersonオブジェクトを返します。Personの各属性は、そのWebCenter Portalプロファイルの各値を表します。

ピープル・コネクションILocatorの接続設定は、wc_domainコンダクタ拡張ディレクトリにあるwcps-connections.xmlに保持されています(ドメインが有効範囲)。このファイルを直接編集することはお薦めできませんが、接続設定を変更するには、次のように複数の方法があります。第20.5.1項「プロバイダ接続設定の作成または変更」で説明している方法のいずれかを使用して、ピープル・コネクションILocatorの接続設定を構成してください。

接続要素およびプロパティの説明

<connection-name>: この接続の一意の名前。接続は名前によって取得できます。

<namespace>: 一般的に、アクセスするシナリオがデプロイされるネームスペースに一致する必要があります。ネームスペースでは、特定のシナリオに対する適切な<connection>を検索する方法をコンダクタが決定します。ワイルドカードの「*」を使用すると、この接続要素をすべてのネームスペースで使用可能にできます。

<name>isDefault</name>: この接続をデフォルトの接続としてマークします(複数が定義されている場合)。

<name>scheme</name>: CMIS RESTサービスにアクセスするプロトコル(HTTPまたはSSL用のHTTPS)。明示的に指定しない場合、デフォルトはHTTPに設定されています。

<name>host</name>: PC RESTサービスをホストするマシンの名前。これは、WC_Spaces管理対象サーバーのマシン名です。

<name>port</name>: PC RESTサービスをホストするマシンのポート番号。これは、WC_Spaces管理対象サーバーのマシンのポート番号です。

<name>user</name>: (オプション)ピープル・コネクションRESTサービスとの接続時に使用するユーザー名。固定のユーザー名への接続を強制するために使用できます。

<name>password</name>: (オプション)ピープル・コネクションRESTサービスとの接続時に使用するパスワード。usernameと組み合せて使用されます。固定のユーザー名/パスワードへの接続を強制するために使用できます。パスワード・アクセスが保護されていないため、開発環境外で使用することはお薦めしません。

<name>restResourceIndex</name>: PC RESTサービスのhost/portの後ろに追加され、resourceIndex (使用可能なRESTサービス)ページの位置を指します(例: '/rest/api/resourceIndex')。

プロパティ・プロバイダへのPersonクラスのブートストラップ

プロパティ・サービスがピープル・コネクションRESTコールの結果を認識して使用するためには、「Person」を認識する必要があります。つまり、「Person」をインスタンス化してそのプロパティを設定する前に、「Person」プロパティ・セット定義を作成するとともに、その個々の属性をプロパティ定義として設定する必要があります。

ピープル・コネクションILocatorのコードでは、このプロセスを、次の例のようにweb.xmlファイルで構成されているサーブレット・リスナーでブートストラップして実行してします。

<?xml version="1.0" encoding="UTF-8" ?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4">
 
    <!-- Allows connection config classes to be loaded from the connections.xml file -->
     <listener>
      <listener-class>oracle.wcps.connection.lifecycle.VersatileModuleLifecycleCallback</listener-class>
    </listener>
 
     <listener>
      <listener-class>oracle.wcps.people.util.BootstrapPropertiesListener</listener-class>
    </listener>
 
</web-app>

PC REST接続の構成情報へのアクセス

ピープル・コネクションILocatorは実際の「プロバイダ」ではないため、アクティビティ・グラフなどのように、プロバイダ・コード内のその接続情報にはアクセスできません。そのかわりに、内部コードではVersatileModuleLifecycleCallbackを使用して、その構成情報を使用できるようにしています。したがって、これはweb.xmlで必ず構成する必要があるリスナーとなります。このリスナーがアクティブ化されたら、コードで接続情報にアクセスするコールを行い、ILocatorコードをパラメータ化してPC RESTサーバーを指すことができます。

PC ILocatorとプロパティ・サービス・プロバイダの接続

プロパティ・サービス・プロバイダ(PSP)は、ピープル・コネクションILocatorをネームスペースによって認識します。前述のブートストラップ・プロセスでは、PropertySetDefinition (とその定義)に「people.connections.person」およびロケータ・クラス「oracle.wcps.people.property.PeoplePropertyLocator」というネームスペースが指定されています。PSPの使用時に、namespacePropertySetDefinitionがPSPに渡されます。PSPは、PropertySetDefinitionで定義されているロケータ・クラスを使用してインスタンス化し、プロパティ値(ピープル・コネクションRESTサービスからのPersonの値)に委譲します。

このプロセスではロケータとネームスペースが非常に重要です。これらは、内部クラスPropertyDefConstantsで定数として定義されています。これらを構成する必要はありません。

20.5.5 カスタム・プロバイダの構成

アクティビティ・グラフの接続設定は、wc_domainコンダクタ拡張ディレクトリにあるwcps-connections.xmlに保持されています(ドメインが有効範囲)。このファイルを直接編集することはお薦めできませんが、接続設定を変更するには、次のように複数の方法があります。第20.5.1項「プロバイダ接続設定の作成または変更」で説明している方法のいずれかを使用して、カスタム・プロバイダの接続設定を構成してください。構成ファイルの要素とプロパティの詳細は、第20.5.1.2項「接続構成の属性」を参照してください。

20.6 Coherenceの構成

インストールでCoherenceを使用してキャッシュしている場合(「高可用性」環境の要件)、ネームスペース、プロパティ定義、プロパティ・セット定義およびプロパティ・セットに対して1つずつ、計4つのキャッシュを個別に設定する必要があります。

次のサンプルwcps-cache-config.xml構成ファイルは、単純なCoherenceローカル・キャッシュの構成方法を示しています。より高度なキャッシュ・タイプについては、Coherenceのドキュメントを参照してください。Coherenceの各クラスは、パーソナライズと同じクラス・ローダーによってアクセスできる必要があります。Coherenceのwcps-cache-config.xmlファイルも同じクラス・ローダーによってアクセスできる必要があります。詳細は、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスのWebCenter PortalのJavaDocでoracle.wcps.cache.CacheFactoryクラスを参照してください。

<?xml version="1.0" encoding="UTF-8" ?>
<cache-config>
    <caching-scheme-mapping>
        <cache-mapping>
            <cache-name>com.oracle.p13n.service.property.namespaces</cache-name>
            <scheme-name>ns-local-side</scheme-name>
        </cache-mapping>
        <cache-mapping>
            <cache-name>com.oracle.p13n.service.property.propertydefinitions_*</cache-name>
            <scheme-name>pd-local-side</scheme-name>
        </cache-mapping>
        <cache-mapping>
            <cache-name>com.oracle.p13n.service.property.propertysetdefinitions_*</cache-name>
            <scheme-name>psd-local-side</scheme-name>
        </cache-mapping>
        <cache-mapping>
            <cache-name>com.oracle.p13n.service.property.propertysets_*</cache-name>
            <scheme-name>ps-local-side</scheme-name>
        </cache-mapping>
        <cache-mapping>
            <cache-name>*</cache-name>
            <scheme-name>properties-default-local</scheme-name>
        </cache-mapping>
    </caching-scheme-mapping>
 
    <caching-schemes>
                <!--    
                        The following schemes are all local.  For a clustered deployment,
                        a distributed, replcated, or other clustered scheme is recommended.
                        See Coherence documentation for more information.
                -->
 
        <local-scheme>
            <scheme-name>ns-local-side</scheme-name>
            <service-name>NamespaceCache</service-name>
 
            <eviction-policy>HYBRID</eviction-policy>
            <high-units>{back-size-limit 0}</high-units>
            <unit-calculator>FIXED</unit-calculator>
            <expiry-delay>{back-expiry 1h}</expiry-delay>
            <flush-delay>1m</flush-delay>
 
            <cachestore-scheme/>
        </local-scheme>
 
        <local-scheme>
            <scheme-name>pd-local-side</scheme-name>
            <service-name>PropertyDefinitionCache</service-name>
 
            <eviction-policy>HYBRID</eviction-policy>
            <high-units>{back-size-limit 0}</high-units>
            <unit-calculator>FIXED</unit-calculator>
            <expiry-delay>{back-expiry 1h}</expiry-delay>
            <flush-delay>1m</flush-delay>
 
            <cachestore-scheme/>
        </local-scheme>
 
        <local-scheme>
            <scheme-name>psd-local-side</scheme-name>
            <service-name>PropertySetDefinitionCache</service-name>
 
            <eviction-policy>HYBRID</eviction-policy>
            <high-units>{back-size-limit 0}</high-units>
            <unit-calculator>FIXED</unit-calculator>
            <expiry-delay>{back-expiry 1h}</expiry-delay>
            <flush-delay>1m</flush-delay>
 
            <cachestore-scheme/>
        </local-scheme>
 
        <local-scheme>
            <scheme-name>ps-local-side</scheme-name>
            <service-name>PropertySetCache</service-name>
 
            <eviction-policy>HYBRID</eviction-policy>
            <high-units>{back-size-limit 0}</high-units>
            <unit-calculator>FIXED</unit-calculator>
            <expiry-delay>{back-expiry 1h}</expiry-delay>
            <flush-delay>1m</flush-delay>
 
            <cachestore-scheme/>
        </local-scheme>
 
                <local-scheme>
            <scheme-name>properties-default-local</scheme-name>
            <service-name>DefaultCache</service-name>
 
            <eviction-policy>HYBRID</eviction-policy>
            <high-units>{back-size-limit 0}</high-units>
            <unit-calculator>FIXED</unit-calculator>
            <expiry-delay>{back-expiry 1h}</expiry-delay>
            <flush-delay>1m</flush-delay>
 
            <cachestore-scheme/>
        </local-scheme>
 
    </caching-schemes>
    
</cache-config>

20.7 コンテンツ・プレゼンタの構成

コンテンツ・プレゼンタを使用してWebCenter Portalのパーソナライズ・シナリオを実行するには、まず接続ファイル(connections.xml)を構成して、コンテンツ・プレゼンタがコンダクタ・サーバーおよびタグ付きシナリオを認識できるようにする必要があります。コンテンツ・プレゼンタの詳細は、Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイドのコンテンツ・プレゼンタによるコンテンツの公開に関する項を参照してください。

connections.xmlには、WebCenter Portal側で使用するアプリケーションの接続情報が格納されています。コンテンツ・プレゼンタは、このファイルに登録されているURL接続の全リストを取得し、「Conductor」で始まるURL接続を、コンダクタ・サーバーを指すURLとみなします。connections.xmlの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』の付録A「WebCenter Portal: Frameworkアプリケーションのファイル」を参照してください。

コンテンツ・プレゼンタ・タスク・フローの構成は、実行時に行うか、コンテンツ・プレゼンタ・タスク・フローをページに追加するときにJDeveloperから行うことができます。コンテンツ・プレゼンタのこの2種類の構成方法と、コンダクタ側の構成要件について、次の各項で説明します。

20.7.1 WebCenter PortalアプリケーションのContent Server接続の構成

WebCenter Portalアプリケーションでは、JDeveloperを使用してURL接続を設定するか、第20.7.2項「コンテンツ・プレゼンタ・タスク・フローのパラメータの構成」の説明に従ってコンテンツ・プレゼンタ・タスク・フローのパラメータを設定します。WebCenter Portal: Spacesでは、WLSTコマンドまたはFusion Middleware Controlのいずれかを使用して接続を構成できます。

この項の内容は次のとおりです。

20.7.1.1 WLSTを使用したSpacesアプリケーションの接続の構成

Spacesアプリケーションでは、WLSTコマンドのadf_createHttpURLConnectionを使用してURL接続を管理できます。次に例を示します。

adf_createHttpURLConnection('webcenter','Conductor','http://example.com:8891/wcps/api/conductor?namespace=CP_namespace&

adf_createHttpURLConnectionコマンドの詳細は、『Oracle Fusion Middleware WebLogic Scripting Toolコマンド・リファレンス』のadf_createHttpURLConnectionに関する項を参照してください。

20.7.1.2 Fusion Middleware Controlを使用したSpacesアプリケーションの接続の構成

Spacesアプリケーションでは、Fusion Middleware Controlを使用して接続を構成できます。

Fusion Middleware Controlを使用して接続を構成する手順は次のとおりです。

  1. Fusion Middleware Controlにログインし、Spacesアプリケーションのホームページに移動します。

    第6.2項「Spacesアプリケーションのホームページへの移動」を参照してください。

  2. 「WebCenterポータル」メニューから、「ADF」「ADF接続の構成」を選択します。

    「ADF接続構成」ページが表示されます(図20-1を参照)。

    図20-1 「ADF接続構成」ページ

    図20-1の説明が続きます
    「図20-1 「ADF接続構成」ページ」の説明

  3. 「接続タイプ」「URL」に設定し、「接続名」「Conductor」と入力して、「接続の作成」をクリックします。

    「URL接続」セクションが表示されます(図20-2を参照)。

    図20-2 「ADF接続構成」ページ(URL接続)

    図20-2の説明が続きます
    「図20-2 「ADF接続構成」ページ(URL接続)」の説明

  4. 「編集」(鉛筆)アイコンをクリックします。

    「URL接続」ダイアログが表示されます(図20-3を参照)。

    図20-3 「URL接続」ダイアログ

    図20-3の説明が続きます
    「図20-3 「URL接続」ダイアログ」の説明

  5. URLを編集して、Spacesアプリケーションが使用するContent ServerインスタンスをURLが指すようにします。次に例を示します。

    http://example.com:8891/wcps/api/conductor?namespace=CP_namespace&repoId=myhost-ucm11g
    
  6. 必要に応じて、その他のフィールドをローカル接続に合わせて更新し、「OK」をクリックします。

20.7.2 コンテンツ・プレゼンタ・タスク・フローのパラメータの構成

コンテンツ・プレゼンタのインスタンスは、そのタスク・フロー・パラメータによって構成できます。これらのパラメータは、実行時に「コンテンツ・プレゼンタ構成」ダイアログで設定するか、コンテンツ・プレゼンタ・タスク・フローの追加時にJDeveloperから設定できます。これを手動で行うには、2つのパラメータを設定する必要があります。Data Source TypeパラメータをdsTypeScenarioResultsに設定し、Data Sourceパラメータを次のように設定してください。

conductor-connection-name=ConductorConnectionName,namespace=
ScenarioNamespace,scenario-name=ScenarioName,inputparam1=value1,inputparam2=value2

conductor-connection-nameの値は、有効なコンダクタ・サーバーを指すURL接続と一致する必要があります。また、使用するネームスペースには、指定のシナリオが属しているネームスペースの名前を指定してください。最後に、シナリオで要求される任意の入力パラメータを追加できます。それには、前述のように名前/値ペアをカンマで区切って指定します。

パーソナライズ用のコンテンツ・プレゼンタの構成の詳細は、次の項を参照してください。

  • 実行時に構成する場合: Oracle Fusion Middleware Oracle WebCenter Portal: Spacesユーザーズ・ガイドのコンテンツ・プレゼンタ・タスク・フローのプロパティ設定に関する項

  • JDeveloperで構成する場合: 『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』のコンテンツ・プレゼンタ・タスク・フロー・パラメータおよび初期設定の表示テンプレートに関する項

20.7.3 コンダクタのシナリオ・タグの構成

コンダクタ側では、シナリオをコンテンツ・プレゼンタに認識させるための適切なタグがシナリオに必要です。コンテンツ・プレゼンタでは、ContentPresenterScenarioというタグを使用します。したがって、コンテンツ・プレゼンタに認識させる必要があるシナリオはすべて、このタグの関連付けが必要です。

コンダクタ側とWebCenter Portalアプリケーション側の両方ですべての設定が完了したら、後は簡単です。「コンテンツ・プレゼンタ構成」ダイアログを開くと、「コンテンツ・ソース」選択リストに「シナリオ結果」が表示されます。これを選択すると、コンテンツ・プレゼンタを使用するようにタグ付けされているすべてのシナリオが表に表示されます。最初のシナリオが必ず選択されており、そのシナリオに入力パラメータが定義されている場合は、入力パラメータが表の下に入力フィールドとともに表示されます。

表で別のシナリオを選択すると、下の入力パラメータが更新されます。シナリオを選択して入力パラメータを指定したら、コンテンツ・プレゼンタをプレビューまたは保存して結果を取得できます。結果は、他の複数値コンテンツ・ソースと同様に表示されます。最終的には、表示用に選択したテンプレートに基づいて表示されます。


注意:

シナリオから返され、コンテンツ・プレゼンタ内で使用される結果は、有効なCMIS問合せであることが必要です。コンテンツ・プレゼンタは戻り値を取得し、それを(CMIS問合せとして)コンダクタURL内で指定されているリポジトリに対して実行するからです。


20.8 シングル・サインオンの構成

シングル・サインオンの構成は、configureTrustWCPS.pyスクリプトとconfigureConnectionsWCPS.pyスクリプトを実行してWebCenter Portalドメインを構成する一環として行われるか、またはconfigureWCPS.pyスクリプトを実行してJDeveloperの統合WLSドメインを構成する一環として行われます。これらのスクリプトを実行すると、トラスト・サービス・シングル・サインオンも設定されます。これにより、クライアントJEE Webアプリケーション、パーソナライズWebアプリケーション、およびデフォルトのデータ・プロバイダで使用されるWC_Spaces WebアプリケーションRESTサービスの間でREST HTTPリクエストのシングル・サインオンが可能になります。これらのWebCenter Portalアプリケーションはすべて、OAM/OSSOが提供するシングル・サインオン・トークンもサポートするように構成されます。追加のパーソナライズ固有の構成は必要ありません。詳細は、第20.4.3項「ドメイン間トラストの構成」を参照してください。

20.9 デフォルトのセキュリティ設定のオーバーライド

デフォルトでは、パーソナライズRESTリソース(resourceIndexを除く)へのすべてのアクセスには認証が要求されます。ほとんどの場合、開発用にはこれで十分です。ただし、本番環境では、このデフォルトのセキュリティ制約を変更する場合があります。次の各項では、匿名アクセスが必要なシナリオを実行する際のセキュリティを下げる方法や、新しいシナリオを作成できないようにセキュリティを強化する方法について説明します。

この項の内容は次のとおりです。

20.9.1 シナリオの匿名実行の許可

次のセキュリティ制約をドメインのconductor-extensions-library\WEB-INF\web.xmlファイルに追加すると、デフォルトの記述子の(認証を要求する)セキュリティを遵守しながら、匿名のアプリケーションまたはネームスペースから作成またはデプロイされたシナリオに対する匿名GET/POSTが許可されます。

<security-constraint>
  <web-resource-collection>
    <web-resource-name>ConductorJerseyWebApplication</web-resource-name>
    <url-pattern>/api/conductor/namespaces/anonymous/scenarios/*</url-pattern>
    <http-method>GET</http-method>
    <http-method>POST</http-method>
  </web-resource-collection>
  <!-- Allow anonymous user access&nbsp; in this namespace -->
  <!--auth-constraint>
     <role-name>Users</role-name>
   </auth-constraint-->
</security-constraint>

20.9.2 匿名ユーザーによるシナリオの作成の禁止

簡単なフィルタをドメインのconductor-extensions-library\WEB-INF\web.xmlに追加することで、匿名ユーザーに対してシナリオの作成を禁止できます。フィルタの例(AnonymousScenarioFilter)を次に示します。

<filter>
    <filter-name>AnonymousScenarioFilter</filter-name>
    <filter-class>oracle.wcps.samples.AnonymousScenarioFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>AnonymousScenarioFilter</filter-name>
    <url-pattern>/api/conductor/namespaces/PublicPersonalization/scenarios</url-pattern>
  </filter-mapping>
  <security-constraint>
      <web-resource-collection>
          <web-resource-name>ConductorJerseyWebApplication</web-resource-name>
          <url-pattern>/api/conductor/namespaces/PublicPersonalization/scenarios/*</url-pattern>
          <http-method>GET</http-method>
          <http-method>POST</http-method>
      </web-resource-collection>
      <!--
        Commented out to allow anonymous user access  in this namespace
      <auth-constraint>
      <role-name>Users</role-name>
      </auth-constraint>
      -->
  </security-constraint>

このフィルタは、匿名ユーザーでないかどうか(httpRequest.getUserPrincipal() == null)、およびシナリオを作成するRESTリソースのURL (/api/conductor/namespaces/PublicPersonalization/scenarios)に対するHTTP POST操作でないかどうかを明示的にチェックします。

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
        throws IOException, ServletException
    {
        if (request instanceof HttpServletRequest)
        {
            HttpServletRequest httpRequest = (HttpServletRequest)request;
            String method = httpRequest.getMethod();
            if ("POST".equalsIgnoreCase(method) && httpRequest.getUserPrincipal() == null)
            {
              throw new ServletException("Anonymous users cannot create scenarios.");
            }
        }
        chain.doFilter(request, response);
    }

20.9.3 認証されたユーザーによるシナリオの作成の禁止

第20.9.2項「匿名ユーザーによるシナリオの作成の禁止」で説明したフィルタに簡単な変更を加えると(httpRequest.getUserPrincipal() checkを削除)、すべてのユーザーに対してシナリオの作成を禁止できます。HTTP POST操作はシナリオの実行のリクエストにも使用されますが、その場合のURIは異なります(また、フィルタ<url-pattern>ではなく、<security-constraint>内で保護されています)。