Oracle® Fusion Middleware Oracle WebCenter PortalおよびOracle JDeveloperでのポータルの開発 11gリリース1 (11.1.1.8.3) E49666-03 |
|
前 |
次 |
この章では、WebCenter Portal APIを使用して、Portal Frameworkアプリケーションにポータル機能を公開する方法について説明します。このAPIを使用すると、新しいポータルの作成、ポータル・メンバーシップの管理、ポータル情報の取得などをご使用のPortal Frameworkアプリケーションから実行できます。この章では、ポータル内のPortal Frameworkアプリケーションなど、他のアプリケーションからの情報を公開する方法も説明します。
この章には次の項が含まれます。
注意: WebCenter Portal API(この章で説明)を実装するカスタム構築されたタスク・フローは、Portal Frameworkアプリケーションにデプロイできますが、ポータルにはデプロイできません。 |
この項には次のサブセクションが含まれます:
第56.1.3項「事例2: カスタマ・サポート・センター・アプリケーションでポータルを使用してカスタマ・エスカレーションを話し合う」
第56.1.4項「WebCenter Portal APIを使用するようにFrameworkアプリケーションを設定する方法」
ユーザーは、Portal Frameworkアプリケーションを使用中に、特定のタスクを完了するためにポータル機能が役立つと思われる状況に直面することがあります。そのようなケースでは、WebCenter Portalに切り替えるよりも、現在のアプリケーションのコンテキスト内に留まるほうがはるかに混乱が少ない場合があります。そのために、WebCenter Portalは、APIを介した該当の機能のサブセットへのアクセスを提供しています。APIのクラスとメソッドを使用すると、強力なポータルの機能をFrameworkアプリケーションに統合できます。
WebCenter Portal APIを使用すると、次のことを実行できます。
ポータルおよびポータル・テンプレートの作成および管理。ポータルを作成および削除でき、カスタム属性を追加できます。詳細は、第56.1.5.1項「ポータルおよびポータル・テンプレートの管理」を参照してください。
ポータル・メンバーシップの管理。ポータル・メンバーを追加および削除できます。詳細は、第56.1.5.2項「ポータル・メンバーシップの管理」を参照してください。
ポータルおよびポータル・テンプレートに関する情報の取得。たとえば、ポータルのURLや特定のポータルのURLを取得できます。また、ポータルおよびポータル・テンプレート・メタデータも取得できます。詳細は、第56.1.5.3項「ポータルおよびポータル・テンプレートの情報の取得」を参照してください。
ポータルのメソッドは、いくつかのクラス内に含まれています。表56-1では、様々なクラスをリストし、各クラスのメソッドの目的を説明しています。
表56-1 WebCenter Portal APIのクラス
クラス | 含まれているメソッドの用途 | 詳細 |
---|---|---|
|
ポータルおよびポータル・テンプレートの作成および管理 ポータル・メンバーシップの管理 ポータル情報の取得 |
第56.1.5項「Portal FrameworkアプリケーションでのWebCenter Portal機能の提供」 |
|
他のAPIメソッドをコールする前のコンテキストの確立 |
第56.1.4.4項「WebCenter Portalクライアント・コンテキストの設定」 |
|
APIから発生した例外の管理 |
第56.1.6項「WebCenter Portal APIから発生した例外を処理する方法」 |
|
ポータル・メンバーに関する情報の取得 |
第56.1.5.3項「ポータルおよびポータル・テンプレートの情報の取得」 |
|
ポータル情報の取得 |
第56.1.5.3項「ポータルおよびポータル・テンプレートの情報の取得」 |
Portal Framework開発者の視点から、APIを介してWebCenter Portalを構築し、使用するシナリオを示す事例を2つ紹介します。
購買アプリケーションでは、購買マネージャは、新しいサプライヤの適性を話し合うポータルを作成できます。詳細は、第56.1.2項「事例1: 購買アプリケーションでポータルを使用してサプライヤを評価する」を参照してください。
カスタマ・サポート・センター・アプリケーションでは、サポート・アナリストが、カスタマ・エスカレーションに関して他のユーザーと共同作業をするためのポータルを作成できます。詳細は、第56.1.3項「事例2: カスタマ・サポート・センター・アプリケーションでポータルを使用してカスタマ・エスカレーションを話し合う」を参照してください。
WebCenter Portal Frameworkを使用して構築された購買アプリケーションについて考えてみます。このアプリケーションでは、サプライヤ、価格設定、リードタイムの要件、概算出荷時間、および実績を追跡します。
購買アプリケーションのユーザーは、サプライヤの候補を選択し評価できなければなりません。サプライヤの評価は共同プロセスで、会社の様々な領域からの人々が必要です。たとえば、設計エンジニアと製造担当者は購入するアイテムが必要な技術仕様を満たしていることを確認する必要があります。購買エージェントは価格、物流および契約について交渉できます。さらにマネージャまたはエグゼクティブは取引を承認する必要があります。購買アプリケーションはサプライヤ評価をどのように開始するでしょうか。
通常、購買マネージャが、製造部門から購買請求書を受け取ります。場合によっては、製造部門が必要とする期限内に、その必要分を従来のサプライヤが納品できないため、発注を完了できないことがあります。したがって、納期および価格設定要件を満たす新しいサプライヤを判別する必要があります。購買マネージャは、候補となるサプライヤをシステムに追加できますが、購買マネージャは、サプライヤを評価できるように、情報を整理して共有し、彼のチームの内外の人々と共同する方法を必要としています。
ポータルは、この共同作業環境を提供できます。そのために、購買アプリケーションにはcreateGroupSpace
メソッドへのコールが含まれており、それにより、図56-1に示すように、購買マネージャが、「ポータルの作成」ダイアログを表示するリンク(「新規ポータルの作成」)を、購買アプリケーションから直接クリックできます。
購買マネージャがそのリンクをクリックすると、カスタム・ダイアログからいくつかの情報を要求されます。購買マネージャは、ポータルの名前および説明を入力し、図56-2に示すようにテンプレート(Purchasing Projects)も選択します。Purchasing Projectsテンプレートによって、ポータルは迅速に設定され、すぐに使用できます。たとえば、このテンプレートによって、どのサービスが必要であるか(イベント、ドキュメント・ライブラリなど)、および必要なカスタム・ページが定義されます。このAPIで、独自の「ポータルの作成」ダイアログを作成できるため、独自のルック・アンド・フィールおよび用語を適用できます。
このシナリオでは、購買マネージャは、テンプレート・リストからPurchasing Projectsテンプレートを選択します。別の方法は、購買アプリケーションがデフォルト・テンプレート値を渡すようにすることです。この追加のデフォルトにより、購買マネージャが検討すること(どのテンプレートを使用するか)が1つ減ります。サプライヤIDからポータルの名前を生成し、購買マネージャが詳細を何も入力しなくてもよいようにすることもできます。そうすれば、リンクのクリックのみでポータルを作成できます。
購買マネージャが「OK」をクリックすると、図56-3に示すような新しいサプライヤ評価ポータルが表示されます。
図56-3は、イベント・カレンダ、グループに役立つことのあるドキュメント、お知らせの領域などを含むサプライヤ評価ポータルのホーム・ページを示しています。これらの各領域はPurchasing Projectsテンプレートによって決定されます。さらに、ポータルの作成元の購買アプリケーション・トランザクション・インスタンスへのリンクも提供されます。このリンク(ベンダーの追加/更新)をクリックすると、サプライヤShaker Distributionのベンダーの追加/更新トランザクション画面が表示されます。
ポータルでは、購買マネージャが自動的にそのポータルのモデレータになります。モデレータは、ポータルへのコンテンツの追加、ディスカッションの開始、メンバーの招待、関連するパーティとのコラボレーションを実行できます。サプライヤに関してコンセンサスを得られたら、購買マネージャは、当該サプライヤを承認または却下できます。
Oracle WebCenter Portal Frameworkを使用して構築された、お客様からの電話および問題を追跡するカスタマ・サポート・センター・アプリケーションを考えてみます。
サポート・アナリストは、そのアナリストが対応しているサービス・リクエストがお客様によってエスカレートされたことを通知されます。アナリストは、社内の様々な部署に所属する他の人々が関与できれば、その問題の解決策を迅速に見つけられることを認識しています。例:
プロジェクトを実行したチームのプロジェクト・マネージャは、そのプロジェクトに関する詳しい知識を提供できます。
お客様と定期的に連絡を取っているアカウント・マネージャは、お客様のサイトでのプロジェクトの実行に関する具体的な情報を提供できます。
以前、似たようなエスカレーションに対応したことがある別のアナリストは、そのエスカレーションを解決した方法に関する情報を提供できます。
この問題は、ポータルを使用して共同で解決できます。サポート・アナリストは、カスタマ・サポート・センター・アプリケーション内からポータルを作成し、必要なメンバーを追加します。それらのメンバーは通知を受け取り、ポータルを使用してお客様の状況についてディスカッションを開始します。サポート・アナリストは、彼らのポータルへの更新内容をサポート・アプリケーション内で表示し、より具体的な詳細を知る必要がある場合はポータルに移動します。彼女はポータルの他のメンバーから入手する情報に基づいて、問題を診断し、お客様に非常に迅速に解決策を提示できます。
WebCenter Portal APIを使用するには、その前に、WebCenter Portalが起動されていて実行中であることと、プロジェクトがJDeveloperで適切に設定されていることを確認する必要があります。
この項には次のサブセクションが含まれます:
WebCenter Portal APIを使用する場合、WebCenter Portalが起動されていて実行中であることが必要です。
WebCenter Portalが起動されていて実行中であることを確認するには:
WebCenter Portalを起動します。URLは次のとおりです。
http://host:port/webcenter
ログインする必要はありません。
WebCenter Portal Webサービスが起動されていて実行中であることを確認します。URLは次のとおりです。
http://host:port/webcenter/SpacesWebService?WSDL
図56-4に示すようなページが表示されます。このページが表示されない場合は、Fusion Middleware管理者にお問い合せください。
WebCenter Portalの設定の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理の「WebCenter Portalの起動と実行」を参照してください。
Portal FrameworkアプリケーションでWebCenter Portal APIをコールするには、その前にアプリケーションに適切なライブラリが含まれていることと、WebCenter Portal Webサービスへの接続が存在することを確認する必要があります。
WebCenter Portal APIを使用するようにアプリケーションを設定するには:
JDeveloperを起動します。
「アプリケーション・ナビゲータ」で、WebCenter Portalの機能を提供する対象となるアプリケーションを開きます。
アプリケーションは、「WebCenterポータル・アプリケーション」テンプレートに基づいている必要があります。
ビュー・コントローラ・プロジェクトを右クリックし、「プロジェクト・プロパティ」を選択します。
「ライブラリとクラスパス」を選択します。
プロジェクト内で次のライブラリが使用可能であることを確認し、必要に応じて任意のものを追加します。
ADF DVT Facesランタイム
ADFモデル汎用ランタイム
ADFモデル・ランタイム
JAX-RPCクライアント
JAX-WSクライアント
JAXB
Oracle JEWT
ポータル・クライアント
JDEV_HOME
/jdeveloper/oracle_common/modules/oracle.adf.model_11.1.1/adfm.jar
JDEV_HOME
/jdeveloper/oracle_common/modules/oracle.xdk_11.1.1/xml.jar
「OK」をクリックします。
アプリケーション・ナビゲータの「アプリケーション・リソース」パネルで、「接続」を右クリックし、「接続の作成」→「URL」を選択します。
「名前」フィールドにSpacesWebServiceEndpoint
と入力します。
「URLエンドポイント」フィールドに、次のWebCenter Portal WebサービスのURLを入力します。
http://host:port/webcenter/SpacesWebService
「OK」をクリックします。
接続情報が、アプリケーションのMETA-INF
ディレクトリのconnections.xml
ファイルに追加されます。たとえば、次のとおりです。
C:\JDeveloper\mywork\mySpacesApplication\.adf\META-INF
connections.xml
ファイルが存在しない場合、それが作成されます。
connections.xml
ファイルを開き、例56-1に示されているコードが表示されることを確認します。
例56-1 ポータルWebサービス・エンドポイントURL接続
<Reference name="SpacesWebServiceEndpoint" className="oracle.adf.model.connection.url.HttpURLConnection"> <Factory className="oracle.adf.model.connection.url.URLConnectionFactory"/> <RefAddresses> <XmlRefAddr addrType="SpacesWebServiceEndpoint"> <Contents> <urlconnection name="SpacesWebServiceEndpoint" url="http://host:port/webcenter/SpacesWebService"/> </Contents> </XmlRefAddr> </RefAddresses> </Reference>
実行時にWebCenter Portal Webサービス・エンドポイントを設定する必要がある場合は、setGroupSpaceWebServiceEndpoint
メソッドを使用できます(例56-2)。パラメータとしてエンドポイントを取るラッパー・メソッドを作成し、setGroupSpaceWebServiceEndpoint
をコールして、そのパラメータを渡すことができます。エンドポイントがconnections.xml
で設定されていない場合は、例外がINFOとしてログ・ファイルでレポートされます。
Portal FrameworkアプリケーションでWebCenter Portal APIを使用する前に、アプリケーション(コンシューマ)とWebCenter Portal(プロデューサ)との間の通信がセキュリティで保護されていることを確認する必要があります。これは、APIを呼び出したユーザーのアイデンティティがセキュアな方法でWebCenter Portalに伝播され、通信の整合性と機密性が保たれるようにするためです。
これを実行するため、WebCenter Portal APIはメッセージ保護とともにSAMLベースのトークンのポリシーを使用します。管理者は、WebCenter Portalがアプリケーションから受信したセキュリティ・トークンの真正性を確認できるように、Javaキーストアを作成し資格証明ストアを更新する必要があります。その後、JDeveloperを使用して、このキーストアを登録し資格証明ストアを更新する必要があります。
管理者が実行する必要のある手順の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理のWS-Securityによる、WebCenter PortalクライアントAPIを使用するアプリケーションのためのWebCenter Portalの保護に関する項を参照してください。
アプリケーション・コード内でWebCenter Portal APIメソッドをコールする前に、いくつかのセットアップ手順が必要です。
WebCenter Portalクライアント・コンテキストを設定するには:
WebLogic Server (WLS)にデプロイされたアプリケーションからWebCenter Portal APIをコールすると、特にオーバーライドするように選択していないかぎり、ドメイン全体の構成設定が使用されます。セキュリティ構成パラメータをオーバーライドまたは設定するには、GroupSpaceWSContext
クラスによって提供されているメソッドを使用します。
特に、データの暗号化に必要なSAMLの発行者名およびWebCenter Portalの公開鍵の別名を設定する必要があります。WebCenter Portal Webサービス・エンドポイントがconnections.xml
ファイルに設定されていない場合、これも設定できます。
例:
GroupSpaceWSContext context = new GroupSpaceWSContext(); context.setEndPoint("endPointUrl"); context.setSamlIssuerName("samlIssuer"); context.setRecipientKeyAlias("producer"); groupSpaceWSClient = new GroupSpaceWSClient(context);
ここで:
endPointUrl
はWebCenter Portal Webサービス・エンドポイントです(たとえば、http://xmlns.oracle.com:8912/webcenter/SpacesWebService
)。
samlIssuer
は、このSAMLアサーティング・パーティのアサーションを発行するSAML認証局の発行者URIです(たとえば、www.oracle.com
)。デフォルトのwww.oracle.com
が唯一信頼できるSAML発行者です。
producer
は、WebCenter Portalの公開鍵の別名です。たとえば、単純なトポロジを使用している場合はorakey
となります。
管理者が実行する必要のある手順の詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理のWS-Securityによる、WebCenter PortalクライアントAPIを使用するアプリケーションのためのWebCenter Portalの保護に関する項を参照してください。
GroupSpaceWSContext
クラスによって提供されるメソッドの完全なリストは、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスを参照してください。
コンテキストを渡すことでWebCenter Portalクライアントを初期化します。例:
GroupSpaceWSClient client = new GroupSpaceWSClient(context);
クライアントを初期化したら、次のものをコールすることによってすべてが適切に設定されていることを確認します。
getWebCenterSpacesURL();
適切なURLが返された場合、すべてが適切に設定されており、WebCenter Portal APIの使用を開始できます。
WebCenter Portal APIによって、Frameworkアプリケーション内で一般的なポータル関連の操作を実行できます。APIのメソッドの大部分は、GroupSpaceWSClient
クラスによって提供されます。WebCenter Portal APIメソッドは、次の3つのメイン・カテゴリに分類できます。
表56-2は、GroupSpaceWSClient
クラスのメソッドを示してします。
表56-2 一般的なポータルの操作を実行するためのメソッド
ポータル・メソッド | カテゴリ | 説明 |
---|---|---|
|
ポータルおよびポータル・テンプレートの管理 |
テンプレートに基づいて新しいポータルを作成します。第56.1.5.1.1項「ポータルの作成」を参照してください。 |
|
ポータルおよびポータル・テンプレートの管理 |
ポータルのカスタム属性を1つ以上作成します。第56.1.5.1.2項「カスタム属性の作成」を参照してください。 |
|
ポータルおよびポータル・テンプレートの管理 |
Portalからポータルを完全に削除します。第56.1.5.1.4項「ポータルの削除」を参照してください。 |
|
ポータルおよびポータル・テンプレートの管理 |
既存のポータルに基づいて新しいポータル・テンプレートを作成します。第56.1.5.1.3項「ポータル・テンプレートの作成」を参照してください。 |
|
ポータル・メンバーシップの管理 |
ユーザー(またはグループ)を特定のロールを持つポータル・メンバーにします。第56.1.5.2.1項「ポータルへのメンバーの追加」を参照してください。 |
|
ポータル・メンバーシップの管理 |
リストのユーザーを、ポータルのメンバーになるように招待します。第56.1.5.2.2項「ユーザーをポータルに参加するように招待」を参照してください。 |
|
ポータル・メンバーシップの管理 |
ポータル・メンバーシップを取り消します。第56.1.5.2.3項「ポータルからのメンバーの削除」を参照してください。 |
|
ポータル・メンバーシップの管理 |
特定のポータルのすべてのロールを取得します。第56.1.5.2.4項「ロール情報の取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
指定した問合せ文字列に対してポータルのリストを取得します。第56.1.5.3.1項「ポータルのリストの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
指定した問合せ文字列に対してパブリック・ポータルのリストを取得します。第56.1.5.3.2項「パブリック・ポータルのリストの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
指定した問合せ文字列に対して検出可能ポータルのリストを取得します。第56.1.5.3.3項「検出可能ポータルのリストの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
ポータルに関する情報(メタデータ)を取得します。第56.1.5.3.4項「ポータル・メタデータの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
ポータルのGUIDを指定してポータルに関する情報(メタデータ)を取得します。第56.1.5.3.4項「ポータル・メタデータの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
指定した問合せ文字列に対してポータル・テンプレートのリストを取得します。第56.1.5.3.5項「ポータル・テンプレートのリストの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
ポータル・テンプレートに関する情報(メタデータ)を取得します。第56.1.5.3.6項「ポータル・テンプレート・メタデータの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
テンプレートのGUIDを指定してポータル・テンプレートに関する情報(メタデータ)を取得します。第56.1.5.3.6項「ポータル・テンプレート・メタデータの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
PortalアプリケーションのURLを取得します。第56.1.5.3.7項「PortalのURLの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
ポータルのURLを取得します。第56.1.5.3.8項「ポータルのURLの取得」を参照してください。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
指定したポータル・サービスのRSSフィードURLを取得します。 |
|
ポータルおよびポータル・テンプレートの情報の取得 |
GUIDによって指定したポータルおよび指定したサービスのRSSフィードURLを取得します。 |
次のWebCenter Portal APIメソッドを使用して、ポータルおよびポータル・テンプレートを管理します。
createGroupSpace
setCustomAttribute
createGroupSpaceTemplate
deleteGroupSpace
始める前に
これらのメソッドを使用するには、その前に第56.1.4項「WebCenter Portal APIを使用するようにFrameworkアプリケーションを設定する方法」に記載されているすべての手順を完了する必要があります。
この項には次のサブセクションが含まれます:
createGroupSpace
メソッドを使用して、既存のポータル・テンプレートに基づいたポータルを作成します。
このメソッドを使用するには、次を指定します:
新しいポータルの内部名。この名前には、空白を含めることができます。
新しいポータルの表示名。
ポータルの説明。これは必須ではありませんが、ユーザーがこのポータルの目的を識別できるように説明を入力することをお薦めします。
使用するポータル・テンプレートの名前。これは、テンプレートの表示名ではなく内部名にする必要があります。
オプションで、ユーザーが検索でポータルを見つけられるようにキーワードのカンマ区切りリストを入力できます。
例56-3では、CommunityofInterestテンプレートに基づいたDatabasesという名前のポータルを作成します。この例では、2つの検索キーワード(databasesおよびOracle)も指定します
例56-3 ポータルの作成
//create the portal GroupSpaceWSMetadata gsMetadata = client.createGroupSpace("Databases", "Databases" "A community for people interested in databases", "databases, oracle", "CommunityofInterest"); //print the portal GUID to provide confirmation of creation System.out.println("GUID: " + gsMetadata.getGuid());
新しいポータルに対してカスタム属性を指定する方法の例は、第56.1.5.1.2項「カスタム属性の作成」を参照してください。
すべてのポータルには、名前、説明、作成日、アイコンなどの組込み属性が備わっています。さらに、ポータルに固有の追加情報(メタデータ)およびその特性を格納するカスタム属性を定義できます。
setCustomAttribute
メソッドを使用して、ポータルのカスタム属性を指定します。このメソッドを使用するには、ポータルの名前と、カスタム属性の名前、説明、タイプおよび値を指定します。
例56-4では、Databasesポータルを作成し、そのポータルのカスタム属性を作成します。属性はVendorsという名前で、List of vendorsという説明が付いています。その属性は、OracleやIBMという文字列値を取ります。
例56-4 カスタム属性の作成
//create the portal client.createGroupSpace("Databases", "Databases", "A community for people interested in databases", null, "CommunityofInterest"); //create the custom attribute client.setCustomAttribute("Databases", "Vendors", "List of vendors", "java.lang.String", "Oracle, IBM");
createGroupSpaceTemplate
メソッドを使用して、既存のポータルに基づいたポータル・テンプレートを作成します。このメソッドを使用するには、テンプレートの名前、表示名および説明と、テンプレートを作成するために使用するポータルの名前を指定します。
例56-5では、Databasesポータルに基づいたポータル・テンプレートを作成します。
例56-5 ポータル・テンプレートの作成
GroupSpaceWSMetadata templMetadata = client.createGroupSpaceTemplate("DatabasesTemplate", "Databases Template", "A template based on the Databases portal", "Databases"); //print the template GUID to provide confirmation of creation System.out.println("GUID: " + templMetadata.getGuid());
deleteGroupSpace
メソッドを使用して、WebCenter Portalからポータルを完全に削除します。このメソッドを使用するには、削除するポータルの名前を指定します。このメソッドは、削除が正常に実行されたかどうかを示すブール値を返します。
例56-6では、Databasesという名前のポータルを削除します。この例では、メソッドによって返されるブール値を使用して、操作の成功または失敗に関するメッセージを出力します。
次のWebCenter Portal APIメソッドを使用して、ポータル・メンバーシップを管理します。
addMember
inviteMember
removeMember
getRoles
始める前に
これらのメソッドを使用するには、その前に第56.1.4項「WebCenter Portal APIを使用するようにFrameworkアプリケーションを設定する方法」に記載されているすべての手順を完了する必要があります。
この項には次のサブセクションが含まれます:
addMember
メソッドを使用して、ユーザー(およびグループ)にポータル・メンバーシップを与え、新しいメンバーを特定のロールに割り当てます。このメソッドを使用するには、ポータルの名前およびユーザーまたはグループのリストを指定します。リストには、ユーザーまたはグループの名前およびポータル内でそのユーザーまたはグループに付与するロールを指定するタイプGroupSpaceWSMembers
のオブジェクトが含まれている必要があります。
WebCenter Portalアイデンティティ・ストアに存在する有効なユーザーまたはユーザー・グループの名前を指定する必要があります。ロールの場合は、デフォルト・ロール(モデレータ、参加者、ビューア)のいずれか、またはカスタム・ロール(ある場合)を選択します。ポータルで使用可能なロールのリストを取得するには、getRoles
メソッドを使用します。詳細は、第56.1.5.2.4項「ロール情報の取得」を参照してください。ロールの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portalの使用』のポータルのロールと権限の管理に関する項を参照してください。
例56-7では、PatおよびVickiという名前のユーザーとSalesおよびMarketingユーザー・グループの各人のユーザー(タイプGroupSpaceWSMembers
)をDatabasesポータルのメンバーとして作成しています。PatとSalesおよびMarketingの全員には、Viewerロールを付与します。Vickiには、Participantロールを割り当てます。
注意: ユーザーのグループを追加しようとしている場合は、 |
例56-7 ポータルへのメンバーの追加
//create the list of users List addMem = new ArrayList(); //create the GroupSpaceWSMembers objects GroupSpaceWSMembers mem1 = new GroupSpaceWSMembers("pat", "Viewer"); GroupSpaceWSMembers mem2 = new GroupSpaceWSMembers("vicki", "Participant"); GroupSpaceWSMembers grp1 = new GroupSpaceWSMembers("Sales", "Viewer"); grp1.setGroup(true); GroupSpaceWSMembers grp2 = new GroupSpaceWSMembers("Marketing", Viewer"); grp2.setGroup(true); //add the GroupSpaceWSMembers objects to the list of users addMem.add(mem1); addMem.add(mem2); addMem.add(grp1); addMem.add(grp2); //add the users to the Portal client.addMember("Databases", addMem); //print a list of members to confirm the new members were added GroupSpaceWSMetadata memMetData = client.getGroupSpaceMetadata("Databases"); for (GroupSpaceWSMembers mems: memMetData.getMembers()) { System.out.println(mems.getMember()); System.out.println(mems.getRole()); }
inviteMember
メソッドを使用して、ポータルのメンバーになるようにユーザーを招待します。このメソッドを使用するには、ポータルの名前および招待するユーザーのリストを指定します。リストには、ユーザーの名前およびポータル内でそのユーザーに付与するロールを指定するタイプGroupSpaceWSMembers
のオブジェクトが含まれている必要があります。ポータルへの参加の招待は、各ユーザーに送信され、各ユーザーはその招待を受け入れるか拒否できます。
WebCenter Portalアイデンティティ・ストアに存在する有効なユーザーの名前を指定する必要があります。ロールの場合は、デフォルト・ロール(モデレータ、参加者、ビューア)のいずれか、またはカスタム・ロール(ある場合)を選択します。ポータルで使用可能なロールのリストを取得するには、getRoles
メソッドを使用します。詳細は、第56.1.5.2.4項「ロール情報の取得」を参照してください。ロールの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portalの使用』のポータルのロールと権限の管理に関する項を参照してください。
例56-8では、PatおよびVickiという名前のユーザー(タイプGroupSpaceWSMembers
)を、それぞれViewerとParticipantのロールを持つ、Databasesポータルのメンバーになるように招待します。
例56-8 ポータルに参加するようにユーザーを招待
//create the list of users List inviteMem = new ArrayList(); //create the GroupSpaceWSMembers objects GroupSpaceWSMembers mem1 = new GroupSpaceWSMembers("pat", "Viewer"); GroupSpaceWSMembers mem2 = new GroupSpaceWSMembers("vicki", "Participant"); //add the GroupSpaceWSMembers objects to the list of users inviteMem.add(mem1); inviteMem.add(mem2); //invite the list of users to join the portal client.inviteMember("Databases", inviteMem);
removeMember
メソッドを使用して、ポータル・メンバーシップを取り消します。このメソッドを使用するには、ポータルの名前およびユーザーのリストを指定します。リストには、ユーザー名を指定するタイプGroupSpaceWSMembers
のオブジェクトが含まれている必要があります。現在のポータル・メンバーのリストを取得するには、getGroupSpaceMetadata
メソッドを使用します。詳細は、第56.1.5.3.4項「ポータル・メタデータの取得」を参照してください。
例56-9では、ユーザー(タイプGroupSpaceWSMembers
の)PatおよびVickiをDatabasesポータルのメンバーシップから削除します。
例56-9 ポータルからのメンバーの削除
//create the list of users List remMem = new ArrayList(); //create the GroupSpaceWSMembers objects GroupSpaceWSMembers mem1 = new GroupSpaceWSMembers("pat"); GroupSpaceWSMembers mem2 = new GroupSpaceWSMembers("vicki"); 2 lines //add the GroupSpaceWSMembers objects to the list of users remMem.add(mem1); remMem.add(mem2); //remove the users from the portal client.removeMember("Databases", remMem); //print a list of members to confirm the members were removed GroupSpaceWSMetadata memMetData = client.getGroupSpaceMetadata("Databases"); for (GroupSpaceWSMembers mems: memMetData.getMembers()) { System.out.println(mems.getMember()); System.out.println(mems.getRole()); }
getRoles
メソッドを使用して、指定されたポータルのすべてのロールを取得します。これは、メンバーをポータルに追加または招待するときにどのロールを使用可能であるかの判断に役立ちます。ロールには、そのままで使用できるロール(モデレータ、参加者、ビューア)およびカスタム・ロール(必要な場合)があります。このメソッドを使用するには、ポータルの名前を指定します。
例56-10では、Databasesポータルのロール情報を取得および表示します。
次のPortalメソッドを使用して、ポータル情報を取得します。
getGroupSpaces
getPublicGroupSpaces
getDiscoverableGroupSpaces
getGroupSpaceMetadata
getGroupSpaceMetadataByGuid
getGroupSpaceTemplates
getGroupSpaceTemplateMetadata
getGroupSpaceTemplateMetadataByGuid
getWebCenterSpacesURL
getGroupSpaceURL
始める前に
WebCenter Portal APIメソッドを使用するには、その前に第56.1.4項「WebCenter Portal APIを使用するようにFrameworkアプリケーションを設定する方法」に記載されているすべての手順を完了する必要があります。
この項の内容は、次のとおりです
getGroupSpaces
メソッドを使用して、指定した問合せ文字列に一致するポータルのリストを取得します。このメソッドを使用するには、問合せ文字列を指定します。NULL値の問合せ文字列では、現在のユーザーがアクセス可能なすべてのポータルのリストが返されます。
このメソッドでは、現在のユーザーがアクセス可能なポータルが最大500個返されます。
例56-11では、文字列Databaseを含むポータルのリストが返されます。
例56-12では、現在のユーザーがアクセス権を持つすべてのポータルのリストが返されます。それには、nullの問合せ文字列を指定します。
getPublicGroupSpaces
メソッドを使用して、指定した問合せ文字列に一致するパブリック・ポータルのリストを取得します。このメソッドを使用するには、問合せ文字列を指定します。NULL値の問合せ文字列では、すべてのパブリック・ポータルのリストが返されます。
このメソッドでは、WebCenter Portalアプリケーションにログインしていないユーザーも含めてすべてのユーザーがアクセス可能なポータルを、最大500個返します。
例56-13では、文字列Databaseを含むパブリック・ポータルのリストが返されます。
例56-13 特定のパブリック・ポータルのリストの取得
List<String> allPublicGroupSpaces = client.getPublicGroupSpaces("Database");
例56-14では、すべてのパブリック・ポータルのリストが返されます。それには、nullの問合せ文字列を指定します。
getDiscoverableGroupSpaces
メソッドを使用して、指定した問合せ文字列に一致する検出可能ポータルのリストを取得します。このメソッドを使用するには、問合せ文字列を指定します。NULL値の問合せ文字列では、すべての検出可能ポータルのリストが返されます。
このメソッドでは、WebCenter Portalにログインしているすべてのユーザーがアクセス可能なポータルを、最大500個返します。
例56-13では、文字列Databaseを含む検出可能ポータルのリストが返されます。
例56-15 検出可能ポータルのリストの取得
List<String> allDiscoverableGroupspaces = client.getDiscoverableGroupspaces("Database");
例56-14では、すべての検出可能ポータルのリストが返されます。それには、nullの問合せ文字列を指定します。
getGroupSpaceMetadata
またはgetGroupSpaceMetadataByGuid
メソッドを使用して、特定のポータルに関する情報(メタデータ)を取得します。これには、ポータルの説明、それを作成したユーザーの名前、それが最後に更新された日付などの情報が含まれます。
getGroupSpaceMetadata
メソッドを使用するには、ポータルの名前を指定します。getGroupSpaceMetadataByGuid
メソッドを使用するには、ポータルのGUIDを指定します。ポータル名はそのポータルが存在している間に変更できますが、GUIDは常に同じです。ポータルのGUIDは、次のようにして取得できます。
getGroupSpaceMetadata("spaceName").getGuid();
どちらのメソッドでも、ポータル・メタデータの取得に使用できる、より多くのメソッドが含まれたBeanオブジェクトが返されます。これらのメソッドは、GroupSpaceWSMetadata
クラスによって提供されます。表56-3は、このBeanオブジェクトによって返されるメソッドを示しています。
表56-3 ポータル・メタデータを取得するためのメソッド
ポータル・メソッド | 説明 |
---|---|
|
ポータルの作成者の名前を返します。 |
|
ポータルのカスタム属性を返します。 |
|
ポータルの説明を返します。 |
|
ポータルの表示名を返します。 |
|
ポータルの状態(active、offline、deleted)を返します。 |
|
ポータルのGUIDを返します。 |
|
ポータル・アイコンの場所を返します。 |
|
ポータルの説明に使用されるキーワードのカンマ区切りリストを返します。 |
|
ポータルが最後に更新された日付を返します。 |
|
ポータル・ロゴの場所を返します。 |
|
ポータルのメーリング・リストを返します。 |
|
ポータル・メンバーの現在のリストを返します。 |
|
ポータルの内部名を返します。 |
|
ポータルのメンバーではないユーザーによって行われた検索でそのポータルが返されるかどうかを返します。 |
|
ログインしていないユーザーに対してそのポータルが使用可能かどうかを返します。 |
例56-17では、ポータルの名前を指定してDatabasesポータルの説明、キーワードおよび最後に更新された日付の情報を取得します。
例56-17 ポータル名を使用したポータル・メタデータの取得
//get the exact name of the portal List<String> myGroupSpace = client.getGroupSpaces("Databases"); //check that the API returns a single result if(myGroupSpace.size() == 1) { //retrieve the metadata GroupSpaceWSMetadata metadata = client.getGroupSpaceMetadata(myGroupSpace); //get portal description System.out.println("Description: " + metadata.getDescription()); //get portal keywords System.out.println("Keywords: " + metadata.getKeywords()); //get the date the portal was last updated System.out.println("Last Updated Date: "+ metadata.getLastUpdated().toString()); }
例56-18では、ポータルのGUIDを指定してDatabasesポータルの表示名、作成者および最後に更新された日付の情報を取得します。
例56-18 ポータルのGUIDを使用したポータル・メタデータの取得
GroupSpaceWSMetadata metadata = client.getGroupSpaceMetadataByGuid("Guid"); //get portal display name System.out.println("Display Name: " + metadata.getDisplayName()); //get the name of the user who created the portal System.out.println("Created By: " + metadata.getCreatedBy()); //get the date the portal was last updated System.out.println("Last Updated Date: " + metadata.getLastUpdated().toString());
例56-19では、Databasesポータルと関連付けられたすべてのカスタム属性の名前、説明、タイプおよび値を取得します。
例56-19 カスタム属性メタデータの取得
//get the exact name of the portal List<String> myGroupSpace = client.getGroupSpaces("Databases"); //check that the API returns a single result if(myGroupSpace.size() == 1) { //retrieve the metadata GroupSpaceWSMetadata metadata = client.getGroupSpaceMetadata(myGroupSpace); //get list of custom attributes List<GSCustomAttribute> attributes = metadata.getCustomAttributes(); //get name, description, type, and value for each custom attribute for(GSCustomAttribute attribute: attributes) { System.out.println("Name :" + attribute.getName()); System.out.println("Description :" + attribute.getDescription()); System.out.println("Type :" + attribute.getType()); System.out.println("value.toString() :" + attribute.getValue().toString()); } }
例56-20では、Databasesポータルのメンバーのリストを取得します。
例56-20 メンバーシップ情報の取得
//get the exact name of the portal List<String> myGroupSpace = client.getGroupSpaces("Databases"); //check that the API returns a single result if(myGroupSpace.size() == 1) { //retrieve the metadata GroupSpaceWSMetadata metadata = client.getGroupSpaceMetadata(myGroupSpace); //get the list of members for(String member: metadata.getMembers()) { System.out.println("Member UID: " + member); } }
getGroupSpaceTemplates
メソッドを使用して、指定した問合せ文字列に一致するポータル・テンプレートのリストを取得します。このメソッドを使用するには、問合せ文字列を指定します。NULL値の問合せ文字列では、現在のユーザーがアクセス可能なすべてのテンプレートのリストが返されます。
このメソッドでは、現在のユーザーがアクセス可能なテンプレートが最大500個返されます。
例56-21では、文字列Interestを含むポータル・テンプレートのリストが返されます。
例56-21 特定のポータル・テンプレートのリストの取得
List<String> allGroupSpaceTemplates = client.getGroupSpaceTemplates("Interest");
例56-22では、現在のユーザーがアクセス権を持つすべてのポータル・テンプレートのリストが返されます。それには、nullの問合せ文字列を指定します。
getGroupSpaceTemplateMetadata
およびgetGroupSpaceTemplateMetadataByGuid
メソッドを使用して、特定のポータル・テンプレートに関する情報(メタデータ)を取得します。これには、テンプレートの説明、それを作成したユーザーの名前などの情報が含まれます。
getGroupSpaceTemplateMetadata
メソッドを使用するには、テンプレートの名前を指定します。getGroupSpaceTemplateMetadataByGuid
メソッドを使用するには、テンプレートのGUIDを指定します。ポータル・テンプレート名はそのテンプレートが存在している間に変更できますが、GUIDは常に同じです。
どちらのメソッドでも、ポータル・テンプレート・メタデータの取得に使用できる、より多くのメソッドが含まれたBeanオブジェクトが返されます。これらのメソッドは、GroupSpaceWSMetadata
クラスによって提供されます。表56-4は、このBeanオブジェクトによって返されるメソッドを示しています。
表56-4 ポータル・テンプレート・メタデータを取得するためのメソッド
ポータル・メソッド | 説明 |
---|---|
|
テンプレートの作成者の名前を返します。 |
|
テンプレートの説明を返します。 |
|
テンプレートの表示名を返します。 |
|
テンプレートのGUIDを返します。 |
|
テンプレート・アイコンの場所を返します。 |
|
テンプレートの説明に使用されるキーワードのカンマ区切りリストを返します。 |
|
テンプレート・ロゴの場所を返します。 |
|
テンプレートの内部名を返します。 |
例56-23では、テンプレート名を指定してCommunityofInterestポータル・テンプレートのGUID、説明および作成者の情報を取得します。
例56-23 テンプレート名を使用したテンプレート・メタデータの取得
GroupSpaceWSMetadata metadata = client.getGroupSpaceTemplateMetadata(myGroupSpaceTemplate); //get the exact name of the portal template List<String> myGroupSpaceTemplate = client.getGroupSpaceTemplates("CommunityofInterest"); //check that the API returns a single result if(myGroupSpaceTemplate.size() == 1) { //retrieve the metadata -- get GUID System.out.println("GUID: " + metadata.getGuid()); //get template description System.out.println("Description: " + metadata.getDescription()); //get name of user who created the template System.out.println("Keywords: " + metadata.getCreatedBy()); }
例56-24では、テンプレートGUIDを指定してポータル・テンプレートの名前を取得します。
getWebCenterSpacesURL
メソッドを使用して、WebCenter PortalインスタンスのURLを取得します。
例56-25では、WebCenter Portalの現在実行中のインスタンスのURLを取得します。
getGroupSpaceURL
メソッドを使用して、特定のポータルのURLを取得します。これは、ポータルのハイパーリンクを作成する場合、または絶対URLにすることが必要な相対URLがある場合に便利です。このメソッドを使用するには、ポータルの名前を指定します。
例56-26では、DatabasesポータルのURLを取得します。
例56-27では、ポータルのリストをハイパーリンクとして出力します。
例56-27 ハイパーリンクとしてのポータルのリストの出力
//get the list of portals List<String> spaces = client.getGroupSpaces(""); //print the list of portals as hyperlinks for (String spaceName : spaces) { print("<a href =""" + client.getGroupSpaceURL(spaceName) + "">" + spaceName + "</a><br>"); }
ポータル内に特定のページのURLを作成するには、ポータルURLを取得し、ページ情報を追加します。ポータル・ページのプリティURLを作成する方法の詳細は、『Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築』のWebCenter PortalのプリティURLに関する項を参照してください。
WebCenter Portalメンバーは、様々なRSSニュース・フィードを介してポータル内で起きていることを把握できます。次のポータルRSSフィードを使用できます。
お知らせのRSS - ポータルのお知らせの表示
ディスカッションのRSS - ディスカッション・フォーラムへの投稿の追跡
リストのRSS - リストに対する改訂の監視
最近のアクティビティのRSS - 最近のアクティビティの監視
WebCenter PortalからのRSSフィードURLは、次のWebCenter Portal APIメソッドを使用して取得できます。
getServiceRSSFeedURL
getServiceRSSFeedURLbyGuid
RSSフィードのURLを取得するには、ポータルを(名前またはGUIDで)特定し、必要なサービスを(サービスIDで)指定する必要があります。サービスIDは、次のようにGroupSpaceWSClient
の定数として使用できます。
お知らせ - GroupSpaceWSClient.ANNOUNCEMENT_SERVICE_ID
ディスカッション - GroupSpaceWSClient.DISCUSSION_FORUM_SERVICE_ID
リスト - GroupSpaceWSClient.LIST_SERVICE_ID
最近のアクティビティ - GroupSpaceWSClient.RECENT_ACTIVITY_SERVICE_ID
getServiceRSSFeedURL
を使用したポータルRSSニュース・フィードURLの取得
getServiceRSSFeedURL
メソッドを使用し、ポータル名を指定することによって特定のポータルのサービス関連のRSSニュース・フィードURLを取得します。
getServiceRSSFeedURL
を使用してサービスのRSSニュース・フィードURLを取得するには、次を使用します:
String service_URL = client.getServiceRSSFeedURL("groupspace_name",service_ID);
ここで:
service_URLは、取得されるサービス・パラメータです
groupspace_nameは、ポータルの名前です
service_IDは、RSSニュース・フィードURLを取得するサービスのIDです。ANNOUNCEMENT_SERVICE_ID
、DISCUSSION_FORUM_SERVICE_ID
、RECENT_ACTIVITY_SERVICE_ID
、LIST_SERVICE_ID
のいずれかを使用します。
したがって、必要なサービスに応じて、次のものを使用できます。
String
service_URL
= client.getServiceRSSFeedURL(
"groupspace_name
", GroupSpaceWSClient.ANNOUNCEMENT_SERVICE_ID)
String
service_URL
= client.getServiceRSSFeedURL("
groupspace_name
", GroupSpaceWSClient.DISCUSSION_FORUM_SERVICE_ID)
String
service_URL
= client.getServiceRSSFeedURL("
groupspace_name
", GroupSpaceWSClient.LIST_SERVICE_ID)
String
service_URL
= client.getServiceRSSFeedURL("
groupspace_name
", GroupSpaceWSClient.RECENT_ACTIVITY_SERVICE_ID)
例56-28では、Finance_Projectという名前のポータルの最近のアクティビティのRSSフィードURLを取得します。
例56-28 最近のアクティビティのRSSフィードURLの取得
String recentActivityURL = client.getServiceRSSFeedURL("Finance_Project", GroupSpaceWSClient.RECENT_ACTIVITY_SERVICE_ID);
GetServiceRSSFeedURLbyGuid
を使用したRSSニュース・フィードURLの取得
getServiceRSSFeedURLbyGuid
メソッドを使用し、ポータルのGUIDを指定することによって特定のポータルのサービス関連のRSSニュース・フィードURLを取得します。
getServiceRSSFeedURLbyGuid
を使用してサービスのRSSニュース・フィードURLを取得するには、次を使用します:
String service_URL = client.getServiceRSSFeedURLbyGuid("groupspace_GUID",service_ID);
ここで:
service_URLは、取得されるサービス・パラメータです
groupspace_GUIDはポータルGUIDです。ポータルのGUIDの取得の詳細は、第56.1.5.3.4項「ポータル・メタデータの取得」を参照してください。
service_IDは、RSSニュース・フィードURLを取得するサービスのIDです。ANNOUNCEMENT_SERVICE_ID
、DISCUSSION_FORUM_SERVICE_ID
、RECENT_ACTIVITY_SERVICE_ID
、LIST_SERVICE_ID
のいずれかを使用します。
例56-29では、GUID: s2201fa44_b441_4bdd_950e_47307f6f9800のポータルの最近のアクティビティRSSフィードURLを取得します。
GroupSpaceWSException
クラスは、WebCenter Portal APIメソッドから発生した例外を処理するためのメソッドを提供します。
表56-5 GroupSpaceWSExceptionクラスのPortalメソッド
メソッド | クラス | 説明 |
---|---|---|
|
GroupSpaceWSException |
ローカライズされたエラー・メッセージを作成します。 |
|
GroupSpaceWSException |
標準エラー・ストリームに例外およびそのバックトレースを出力します。 |
この項には次のサブセクションが含まれます:
場合によっては、WebCenter Portal APIによって提供されるデフォルトのエラー・メッセージが、自身の特定のアプリケーションに対しては具体性に欠けると思われることがあります。このような場合、独自のエラー・メッセージを提供できます。
getLocalizedMessage
メソッドを使用して、アプリケーション固有のエラー・メッセージを作成できます。
例56-30は、ポータルを作成するためのコードを組み込んだサーブレットを示しています。作成プロセス中に例外が発生した場合、ローカライズされたメッセージが出力されます。
例56-30 ローカライズされたエラー・メッセージの出力
servlet1.java doGet() { ... print("<b>Output</b>"); try { GroupSpaceWSClient client = new GroupSpaceWSClient(context); client.createGroupSpace("Databases", "Databases, "A community for people interested in databases", "databases, oracle", "CommunityofInterest"); print("Successfully created portal"); } catch(GroupSpaceWSException ex) //For example: { if(ex instanceof GroupSpaceNameNullException) print(ex.getLocalizedMessage()); else if (ex instanceof GroupSpaceDescNullException) print(ex.getLocalizedMessage()); } ... }
これは、デバッグ目的で、最終的にどのエラーが特定の操作の失敗につながるのかを調べて問題の根底にある原因を発見するために役立ちます。printStackTrace
メソッドを使用して、特定の例外を発生させたエラーをすべてリストします。
例56-31では、例外およびその原因になったエラーすべてを出力します。
例56-31 エラー・スタックのリスト
servlet1.java doGet() { ... print("<b>Output</b>"); try { GroupSpaceWSClient client = new GroupSpaceWSClient(context); client.createGroupSpace("Databases", "Databases", "A community for people interested in databases", "databases, oracle", "CommunityofInterest"); print("Successfully created portal"); } catch(GroupSpaceWSException ex) { ex.printStackTrace(); } ... }
APIリファレンス・ドキュメント |
---|
WebCenter Portal APIの詳細な構文情報は、Oracle Fusion Middleware Oracle WebCenter Portal Java APIリファレンスを参照してください。 |
WebCenter Portal APIで問題が発生した場合は、次のことを確認してください。
WebCenter PortalとクライアントFrameworkアプリケーションの両方の資格証明ストアが適切に構成されていることを確認してください。
Oracle Fusion Middleware Oracle WebCenter Portalの管理のポリシーと資格証明ストアの構成に関する項も参照してください。
context.setRecipientKeyAlias
に渡される別名をチェックして、WebCenter Portalクライアント・コンテキストがPortal Frameworkアプリケーションで正しく設定されていることを確認します。この別名は、次のようにプロデューサ(Portal)の公開鍵の別名である必要があります。
GroupspaceWSContext context = new GroupspaceWSContext();
context.setEndPoint(endPointUrl);
context.setRecipientKeyAlias("orakey");
groupspaceInternalWSClient = new GroupspaceWSInternalClient(context);
この例では、プロデューサの公開鍵の別名はorakeyです。第56.1.4.4項「WebCenter Portalクライアント・コンテキストの設定」も参照してください。
接続の両端にキーストアが存在していることを確認してください。例:
- webcenter.jks
(Portalの側にコピーされている)
- clientapi.jks
(Portal Frameworkアプリケーションの側にコピーされている)
たとえば、単純なトポロジの場合、次のコマンドではclientapi.jks
およびwebcenter.jks
が生成されます。
keytool -genkeypair -keyalg RSA -dname "cn=spaces,dc=example,dc=com"
-alias orakey -keypass mypassword -keystore webcenter.jks -storepass mypassword
-validity 360keytool -exportcert -v -alias orakey -keystore webcenter.jks -storepass mypassword -rfc -file webcenter.cerkeytool -importcert -alias webservice_client_api -file webcenter.cer -keystore clientapi.jks -storepass mypasswordkeytool -genkeypair -keyalg RSA -dname "cn=clientapi,dc=example,dc=com" -alias clientapi -keypass mypassword -keystore clientapi.jks -storepass mypassword -validity 360 keytool -exportcert -v -alias clientapi -keystore clientapi.jks -storepass mypassword -rfc -file clientapi.cer keytool -importcert -alias clientapi -file clientapi.cer -keystore webcenter.jks -storepass mypassword
第56.1.4.3項「Portal FrameworkアプリケーションとWebCenter Portal間の接続のセキュリティ保護」も参照してください。
WebCenter Portalは、様々なポータル関連操作をサポートするREST APIを提供します。REST APIメソッドを使用して、ポータル内で次のアクションを実行できます。
アプリケーション内のすべてのポータルをリスト、パブリック・ポータルのみをリスト、参加しているポータルをリスト、検出可能ポータルをリストします。
1つのポータルの詳細を表示します。
ポータルのメンバーをリストします。
ポータル・メンバーに対するロールの割当てをリストします。
1つのポータルに対して定義されているカスタム属性をリストします。
特定のカスタム属性の詳細を表示します。
1つのポータルのリストを表示および追加します。
1つのリストのリスト・アイテム(行)を表示および更新します。
リスト・アイテム詳細(列)を表示、更新および削除します。
この項では、Portal REST APIについて説明します。次のサブセクションが含まれます:
REST APIの概要は、第53章「Oracle WebCenter Portal REST APIの使用」を参照してください。
各RESTサービスは、そのサービスのエントリ・ポイントを提供するリソース索引内にリンク要素を持っています。WebCenter Portal REST APIのエントリ・ポイントを見つけるには、次のresourceType
を持つリンク要素を見つけます。
urn:oracle:webcenter:spaces
対応するhref
またはtemplate
要素によって、URIエントリ・ポイントが提供され、それによって現在のユーザーがアクセスできるポータルのリストが返されます。クライアントはこのエントリ・ポイントにHTTPリクエストを送信して、WebCenter Portalを操作します。
リソース索引の詳細は、第53.5.1項「リソース索引の使用」を参照してください。
リソース・タイプの詳細は、第53.5.2.1項「リソース・タイプ」を参照してください。
クライアントがエントリ・ポイントを識別すると、リソース・タイプの分類によりナビゲートして、必要な操作を実行できます。個々のリソース・タイプの詳細は、第56.2.4項「Portalのリソース・タイプ」の該当の項を参照してください。
Portalの分類は、次のとおりです。
urn:oracle:webcenter:spaces urn:oracle:webcenter:spaces:siteresources urn:oracle:webcenter:spaces:resource:templates urn:oracle:webcenter:spaces:resource:template urn:oracle:webcenter:space:attributes urn:oracle:webcenter:space:roles urn:oracle:webcenter:space urn:oracle:webcenter:space:icon urn:oracle:webcenter:space:members urn:oracle:webcenter:space:member urn:oracle:webcenter:space:attributes urn:oracle:webcenter:space:attribute urn:oracle:webcenter:space:roles urn:oracle:webcenter:space:role urn:oracle:webcenter:space:resourceindex urn:oracle:webcenter:space:lists urn:oracle:webcenter:space:list urn:oracle:webcenter:space:rows urn:oracle:webcenter:space:row urn:oracle:webcenter:space:columns urn:oracle:webcenter:space:column
このサービスでは、セキュリティに関する特定の考慮事項はありません。一般的なセキュリティに関する考慮事項については、第53.8項「WebCenter Portal REST APIのセキュリティに関する考慮事項」を参照してください。
次の項では、各リソース・タイプについて知っておく必要がある情報をすべて提供します。
ポータルのリストの表示(GET
)および新しいポータルの作成(POST
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、各ポータルが含まれており、各ポータルには、そのポータルに対して操作するためのリンクが含まれています。
portalsへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces
spacesでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
: すべてのポータルに関する情報を返します。
リクエスト - 本体: なし
問合せパラメータ:
startIndex
itemsPerPage
projection
- 許可されている値はsummary
およびdetails
です。デフォルトはsummary
です。
visibility
- すべてのポータル、パブリック・ポータルのみ、参加しているポータルまたは検出可能ポータルのうちどのポータルがリストに含まれるのかを決定します。
使用可能な値は、all
、public
、joined
およびdiscoverable
です。デフォルトはjoined
です。
レスポンス - 本体: ポータルのコレクション
POST
: 新しいポータルを作成します。
リクエスト - 本体: スペース
<space> <name>aName</name> <description>aDescription</description> <templateName>aTemplate</templateName> </space>
注意:
Basic CommunityOfInterest ProjectSpace |
spacesからリンクされるリソース・タイプ
表56-6は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
サイト・リソースのリストの取得(GET
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、すべてのサイト・リソース名のリストが含まれています。サイト・リソース名を取得する主な目的は、そのポータル内で使用可能なすべてのリソースを把握するためです。
返されるリストには、WebCenter Portalの管理コンソールの「リソース」タブの下にあるリソースが含まれ、ページ・テンプレート、ナビゲーション、スキン、ページ・スタイルなどのリソースが含まれます。
siteresourcesへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces siteresources
siteresourcesでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ:
projection
- 許可されている値はsummary
およびdetails
です。デフォルトはsummary
です。
q
- siteResourceType
またはseeded
、あるいはその両方で検索できます。
siteResourceType
が指定されている場合、問合せによって、そのサイト・リソース・タイプのすべてのサイト・リソース名が返されます。
形式: q
= siteResourceType:equals:<
value>
使用可能な値は、siteTemplate
、contentPresenter
、pageStyle
、navigation
、resourceCatalog
またはskin
です。
例:
q=siteResourceType:equals:siteTemplate
seeded
がtrue
に指定されている場合、この問合せによってシードされているすべてのサイト・リソース名が返されます。
形式: q=seeded:equals:<
value>
使用可能な値は、true
またはfalse
です。
例:
q=seeded:equals:false
(シードされていないリソースをすべて返します)
シードされていないサイト・テンプレートが必要な場合、問合せは次のようになります。
siteResourceType:equals:siteTemplate;
seeded:equals:false
レスポンス - 本体: 指定された範囲のすべてのサイト・リソース・タイプのすべてのサイト・リソース名のリスト。siteResourceType
が指定されている場合、そのサイト・リソース・タイプのすべてのサイト・リソース名が返されます。
siteresourcesの読取り専用要素
表56-7に、siteresourcesの読取り専用要素をリストします。
表56-7 urn:oracle:webcenter:siteresourcesの読取り専用要素
要素 | タイプ | 説明 |
---|---|---|
guid |
String |
サイト・リソースのグローバルID。 |
displayName |
String |
エンド・ユーザーに表示されるサイト・リソースの名前。 |
name |
String |
サイト・リソースの名前。名前によるすべてのサイト・リソースの完全なリストは、表56-8に示します。 |
description |
String |
サイト・リソースの説明。 |
siteResourceType |
String |
サイト・リソースのタイプ。 |
scopeName |
String |
スペースの名前またはアプリケーション・レベルのデフォルト範囲のいずれか。 |
seeded |
Boolean |
サイト・リソースが事前に移入されている場合はtrueに設定します。 |
visible |
Boolean |
このサイト・リソースがユーザー・インタフェースに表示される場合はtrueに設定します。 |
createdBy |
String |
サイト・リソースを作成したユーザーのユーザー名。 |
createdDate |
日付 |
サイト・リソースが作成された日付。 |
modifiedBy |
String |
サイト・リソースを更新したユーザーのユーザー名。 |
modifiedDate |
日付 |
サイト・リソースが変更された日付。 |
version |
String |
サイト・リソースのバージョン。 |
名前によるサイト・リソースのリスト
表56-8は、名前によるサイト・リソースのリストであり、各リソースのタイプおよび説明を示します。
表56-8 WebCenter Portalによって提供される名前によるサイト・リソースのリスト
名前 | タイプ | 説明 |
---|---|---|
アコーディオン・ビュー |
contentPresenter |
複数のコンテンツ・アイテムをアコーディオン(積み重ねた)形式で表示できます。アイテムをクリックすると、その他のアイテムが閉じて、選択されたアイテムの詳細が表示されます。 |
空白 |
pageStyle |
「空白」ページ・スタイル |
空白 |
taskFlowStyle |
空白 |
ブログ |
pageStyle |
「ブログ」ページ・スタイル |
箇条書きビュー |
contentPresenter |
複数のコンテンツ・アイテムを箇条書きリストで表示します。コンテンツ・アイテムのみが表示され、サブフォルダは省略されます。 |
フォルダ・ラベルを使用した箇条書きビュー |
contentPresenter |
複数のコンテンツ・アイテムを箇条書きリストで表示します。親フォルダの名前を、リストの上にラベルとして表示します。コンテンツ・アイテムのみが表示され、サブフォルダは省略されます。 |
カルーセル・ビュー |
contentPresenter |
カルーセル形式で複数のコンテンツ・アイテムを表示します。ユーザーは、スライダ・バーを使用してアイテムを左から右に参照します。 |
デフォルトのドキュメント詳細ビュー |
contentPresenter |
作成日、変更日、作成者、アイテムを最後に変更したユーザー、パス、コメントなど1つのコンテンツ・アイテムに関する詳細情報を表示します。 |
デフォルトのホーム・ポータル・カタログ |
resourceCatalog |
ホーム・ポータルでアプリケーションレベルのページおよびタスク・フローを編集するときに使用します。 |
デフォルトのリスト・アイテム・ビュー |
contentPresenter |
単一のコンテンツ・アイテム・ビューで使用されます。このビューでは、1行に対するアイコンとアイテム名が表示され、アイテム名をクリックすると、アイテムが表示またはダウンロードされます。 |
フォルダのデフォルトのリスト・アイテム・ビュー |
contentPresenter |
単一のコンテンツ・アイテム・ビューで使用されます。このビューでは、1行に対するアイコンとアイテム名が表示され、アイテム名をクリックすると、アイテムが表示またはダウンロードされます。 |
デフォルトのページ・テンプレート・カタログ |
resourceCatalog |
ページ・テンプレートを編集するときに使用します |
デフォルト・ポータル・カタログ |
resourceCatalog |
ポータルレベルのページおよびタスク・フローを編集するときに使用します |
デフォルトのビュー |
contentPresenter |
1つのコンテンツ・アイテムを表示します。イメージおよびHTMLコンテンツ・アイテムは、ブラウザに直接表示されます。その他のアイテム・タイプの場合は、詳細は関連するファイルをダウンロードするためのリンクとともに表示されます。 |
フュージョンFX |
スキン |
|
Fusionサイド・ナビゲーション |
siteTemplate |
サイド・ナビゲーション付きストレッチ・ページ・レイアウト。Fusion FXスキンを使用します。 |
Fusionトップ・ナビゲーション |
siteTemplate |
トップ・ナビゲーション付きストレッチ・ページ・レイアウト。Fusion FXスキンを使用します。 |
ホームページ |
pageStyle |
ホーム・ページのスタイル |
アイコン表示 |
contentPresenter |
サブフォルダおよびコンテンツ・アイテムを表すアイコンを使用して、タイル・レイアウトに複数のコンテンツ・アイテムを表示します。 |
左を狭く |
pageStyle |
「左を狭く」ページ・スタイル |
リスト・ビュー |
contentPresenter |
複数のコンテンツ・アイテムを簡易リストに表示します。 |
詳細パネルを使用したリスト・ビュー |
contentPresenter |
左側のリストに複数のコンテンツ・アイテムを表示します。右側のパネルには、選択したアイテムの詳細が表示されます。 |
パラメータ・フォーム |
taskFlowStyle |
|
右を狭く |
pageStyle |
|
ソート可能な表ビュー |
contentPresenter |
複数のコンテンツ・アイテムを、ドキュメント名、作成日および変更日を含むソート可能な表に表示します。 |
HTMLページ |
pageStyle |
HTMLページ・スタイル |
スペース・デフォルト・ナビゲーション・モデル |
ナビゲーション |
ポータル内の現在のページを表示するナビゲーション・モデル |
ブログ/Wiki/リストのサブメニューがあるポータル・ナビゲーション |
ナビゲーション |
ブログ、Wiki、リストの現在のページおよびサブメニューを表示するナビゲーション・モデル |
ストレッチ |
taskFlowStyle |
|
タブ・ビュー |
contentPresenter |
複数のコンテンツ・アイテムをタブとして表示します。タブをクリックすると、関連するアイテムの詳細が表示されます。 |
3列 |
pageStyle |
「3列」ページ・スタイル |
Webページ |
pageStyle |
「Webページ」ページ・スタイル |
パブリック・ページ・テンプレート |
siteTemplate |
パブリック・ページのデフォルト・ページ・テンプレート |
トップ・ナビゲーション付きの共同 |
siteTemplate |
フロー・レイアウトおよびトップ・ナビゲーション付きの、共同ポータル用ページ・テンプレート。WebCenter Portals FXスキンを使用します。 |
Portal FX |
スキン |
Portal FXスキン |
トップ・ナビゲーション付きのポータル中心 |
siteTemplate |
フロー・レイアウトおよびトップ・ナビゲーション付きの、ポータル中心サイト用ページ・テンプレート。Portal FXスキンを使用します。 |
サイド・ナビゲーション |
siteTemplate |
サイド・ナビゲーション付きフロー・ページ・レイアウト。Portal FXスキンを使用します。 |
サイド・ナビゲーション(ストレッチ) |
siteTemplate |
サイド・ナビゲーション付きストレッチ・ページ・レイアウト。Portal FXスキンを使用します。 |
トップ・ナビゲーション |
siteTemplate |
フロー・レイアウトとトップ・ナビゲーション付きデフォルト・ページ・テンプレート。Portal FXスキンを使用します。 |
トップ・ナビゲーション(ストレッチ) |
siteTemplate |
トップ・ナビゲーション付きストレッチ・ページ・レイアウト。Portal FXスキンを使用します。 |
Wiki |
pageStyle |
Wikiページ・スタイル |
siteresourcesの書込み可能要素
このリソースに書込み可能要素はありません。
ポータル・テンプレートのリストの取得(GET
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、テンプレート名のリストが含まれています。テンプレート名を取得する主な目的は、ポータルの作成コマンドのtemplateName
パラメータの値を指定することです。
templatesへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resource templates
templatesでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ:
startIndex
projection
- 許可されている値はsummary
およびdetails
です。デフォルトはsummary
です。
q
- 検索を実行します。
itemsPerPage
レスポンス - 本体: テンプレート名のリスト
問合せパラメータの詳細は、第53.5.2.5項「テンプレート」を参照してください。
templatesからリンクされるリソース・タイプ
表56-9は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-9 urn:oracle:webcenter:spacesに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
1つのポータルの詳細の表示(GET
)、ネストされたポータルの作成(POST
)またはポータルの削除(DELETE
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、その作成者、説明、メンバー、カスタム属性などURIによって識別される特定のポータルが含まれています。
注意: このリソースからのレスポンスには、そのポータルのメッセージ・ボードへのリンクも含まれています。 |
spaceへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space
spaceでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ:
projection
- 使用可能な値はsummary
およびdetails
です。デフォルトはdetails
です。メンバーおよびカスタム属性詳細を除外するには、summary
を選択します。
レスポンス - 本体: スペース
POST
: 指定したポータルの子(サブポータル)である新しいポータルを作成します。この機能では、階層化されたポータルまたはネストされたポータルの作成がサポートされています。
リクエスト - 本体: スペース
<space> <name>FooSpace</name> <description>foobar</description> <templateName>CommunityOfInterest</templateName> </space>
注意:
Basic CommunityOfInterest ProjectSpace |
DELETE
: 指定されたポータルを削除します。
リクエスト - 本体: なし
削除の際に、204ステータス・コードが返されます。ポータルが存在していないか、ユーザーにポータルを削除する権限がない場合に、「403 禁止」ステータスが返されます。
問合せパラメータの詳細は、第53.5.2.5項「テンプレート」を参照してください。
spaceの書込み可能要素
表56-10に、このリソースの書込み可能な要素を示します。
表56-10 urn:oracle:webcenter:spaceの書込み可能要素
要素 | タイプ | 説明 |
---|---|---|
|
String |
ポータルの説明。 |
|
String |
ポータルの内部名。 |
|
String |
urn:oracle:webcenter:spaces:resource:templatesから返される有効なテンプレート名にする必要があります。たとえば、デフォルトのテンプレート名は次のとおりです。 Basic CommunityOfInterest ProjectSpace |
spaceの読取り専用要素
表56-11に、このリソースの読取り専用要素を示します。
表56-11 urn:oracle:webcenter:spaceの読取り専用要素
要素 | タイプ | 説明 |
---|---|---|
|
String |
ポータルのグローバルID。 |
|
String |
ポータルを作成したユーザーのID。 |
|
|
ポータルを作成したユーザーに関するユーザー情報。GUID、ID、表示名およびプロファイル・アイコンへのリンクで構成されます( |
|
String |
メンバーに表示される、ポータルの名前。 |
|
String |
ポータルのアイコン・イメージの完全修飾URL。 |
|
String |
ポータルのロゴ・イメージの相対URL。 |
|
Boolean |
ポータルがオフラインであるかオンラインであるかを示します。 |
|
Boolean |
ポータルが検出可能かどうかを指定します。 |
|
Boolean |
ポータルがパブリックかどうかを指定します。 |
|
String |
ポータルのキーワードをリストします。 |
|
String |
ポータルにメーリング・リスト電子メールがある場合は、それをリストします。 |
|
String |
ポータルが子ポータルであり、親がある場合は、その親の表示名を表示します。この場合、親ポータルの権限が子ポータルによって継承されているかどうかを示す |
|
String |
このポータルに基づいて作成されるときに、新しいポータルまたはテンプレートにコピーされるデータのサービスIDのリスト。 |
|
String |
デフォルト言語。 |
|
String |
指定されている場合は、ポータルのランディング・ページのURI。 |
|
Boolean |
これがテンプレートであるかどうかを指定します。 |
|
Boolean |
サブスクライブ解除のために承認が必要かどうかを指定します。 |
|
Boolean |
ポータルに関連付けられたRSSフィードがあるかどうかを指定します。 |
|
Boolean |
ポータルが閉じられているかどうかを指定します。 |
|
Boolean |
ポータルへのすべてのアクセスがブロックされるかどうかを指定します(これがどのように起きるかは不明)。 |
|
String |
ポータルのmembers要素を返します。 |
|
String |
ポータルのattributes要素を返します。 |
spaceからリンクされるリソース・タイプ
表56-12は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-12 urn:oracle:webcenter:spaceに関連するリソース・タイプ
Portalリソース索引の表示に使用するURIを識別するには、このリソース・タイプを使用します。
resourceindexへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space
resourceindexでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: リソース索引
resourceindexからリンクされるリソース・タイプ
表56-13は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-13 urn:oracle:webcenter:space:resourceindexに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
|
|
|
指定されたポータルのロールのリストを取得(GET
)するには、このリソース・タイプを使用します。このコールから返された結果を使用して、urn:oracle:webcenter:space:membersのポータルに新しいメンバーを追加できます。
space:rolesへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space roles
rolesでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
: 指定したポータルに割り当てられているロールのリストを返します。
rolesからリンクされるリソース・タイプ
表56-14は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-14 urn:oracle:webcenter:spaces:rolesに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
urn:oracle:webcenter:space:role |
|
urn:oracle:webcenter:parent |
|
指定されたロールを取得(GET
)するには、このリソース・タイプを使用します。
指定されたポータルのロールのリストを取得(GET
)するには、このリソース・タイプを使用します。このコールから返された結果を使用して、urn:oracle:webcenter:space:membersのポータルに新しいメンバーを追加できます。
space:roleへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space role
roleでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
: 指定したロールを返します。
roleからリンクされるリソース・タイプ
表56-14は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-15 urn:oracle:webcenter:spaces:rolesに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
urn:oracle:webcenter:space:role |
|
urn:oracle:webcenter:parent |
|
指定したポータルで使用されるアイコンを取得(GET
)するには、このリソース・タイプを使用します。
注意: このリソース・タイプは、ポータルのレスポンスではなく、ポータルの参照に使用されます。このリソースは、ポータルが参照される任意の場所(アクティビティ・ストリームやポータル・イベント内など)で使用できます。 |
space:iconへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space icon
iconでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
: 指定したポータルに使用されるアイコンを返します。
iconからリンクされるリソース・タイプ
表56-14は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-16 urn:oracle:webcenter:spaces:rolesに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
urn:oracle:webcenter:parent |
|
あるポータルに対して定義されているカスタム属性のリストの表示(GET
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、そのポータルの各カスタム属性が含まれており、各属性には、その属性に対して操作するためのリンクが含まれています。また、このリソース・タイプは、ポータルにカスタム属性を追加(POST
)するためにも使用します。
attributesへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space attributes
attributesでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: 属性のコレクション
POST
: 指定したポータルにカスタム属性を追加します。
リクエスト - 本体:
<attribute> <name>anAttribute</name> <value>aValue</value> </attribute>
attributesの書込み可能要素
表56-17に、このリソースの書込み可能な要素を示します。
attributesからリンクされるリソース・タイプ
表56-18は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-18 urn:oracle:webcenter:space:attributesに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
|
|
urn:oracle:webcenter:parent |
|
1つのポータル属性の名前と値の表示(GET
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、URIで識別される特定の属性が含まれています。
attributeへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space attributes
attributeでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: 属性
attributeの読取り専用要素
表56-19に、このリソースの読取り専用要素を示します。
表56-19 urn:oracle:webcenter:space:attributeの読取り専用要素
要素 | タイプ | 説明 |
---|---|---|
name |
String |
カスタム属性の名前。 |
description |
String |
カスタム属性の説明。 |
type |
String |
カスタム属性のデータ型。 |
value |
String |
カスタム属性の値。 |
attributeからリンクされるリソース・タイプ
表56-20は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-20 urn:oracle:webcenter:space:attributeに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
urn:oracle:webcenter:parent |
|
ポータルのメンバーのリストの表示(GET
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、ポータルの各メンバーが含まれており、各メンバーには、そのメンバーに対して操作するためのリンクが含まれています。
注意: REST APIを使用するポータル・メンバーのユーザーを一覧に記載するか追加することのみが可能です。ポータル・メンバーのエンタープライズ・グループの追加や一覧への記載は、このリリースではサポートされていません。 |
membersへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space
membersでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: メンバーのコレクション
POST
: ポータルにメンバーを追加します。
リクエスト - 本体: メンバー
<member> <name>vicki</name> <role>Participant</role> </member>
DELETE
: 指定したメンバーをポータルから削除します。urn:oracle:webcenter:space:memberでメンバーのGUIDを取得できます。
リクエスト - 本体: なし
DELETE http://hostname:portnum/rest/api/spaces/spacename/members/member_guid
spaces:space:membersの書込み可能要素
表56-21 spaces:space:membersの書込み可能要素
要素 | タイプ | 説明 |
---|---|---|
name |
String |
メンバーの名前。 |
role |
String |
メンバーのロール。この値はurn:oracle:webcenter:space:rolesから取得します。 |
membersからリンクされるリソース・タイプ
表56-22は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-22 urn:oracle:webcenter:space:membersに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
|
|
urn:oracle:webcenter:parent |
|
ポータルのメンバーおよびその現在のロール割当ての詳細の表示(GET
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、そのURIによって識別された特定のメンバーが、そのメンバーのプロファイルへのハイパーリンクとともに含まれています。
memberへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces space members
memberでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: メンバー
memberの読取り専用要素
表56-23に、このリソースの読取り専用要素を示します。
表56-23 urn:oracle:webcenter:space:memberの読取り専用要素
要素 | タイプ | 説明 |
---|---|---|
guid |
String |
ポータル・メンバーのグローバルID。 |
name |
String |
ポータル・メンバーのユーザーID。 |
role |
String |
メンバーに割り当てられているロール。 |
displayName |
String |
メンバーの表示名。 |
memberからリンクされるリソース・タイプ
表56-24は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-24 urn:oracle:webcenter:space:memberに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
|
|
urn:oracle:webcenter:people:icon |
|
ポータルのリストの表示(GET
)および追加(POST
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、ポータル内の各リストが含まれており、各リストには、そのリストに対して操作するために使用されるリンクが含まれています。POST
操作からのレスポンスには、リストのこのコレクション内に作成されたリストおよびそのリストに対して操作するためのリンクが含まれています。
listsへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resourceindex space lists
listsでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ:
startIndex
itemsPerPage
q
name
、title
、description
、creator
、created
、modifier
およびmodified
で検索できます。
文字列タイプの要素(name
、title
、description
、creator
およびmodifier
)で使用できる、サポートされているオペランドは、equals
、not.equals
およびcontains
です。例:
q=name:contains:issues q=creator:equals:monty
日付タイプの要素(created
およびmodified
)で使用できる、サポートされているオペランドは、equals
、not.equals
、greater.than
、greater.than.or.equals
、less.than
、less.than.or.equals
です。例:
q=created:greater.than:10-SEP-2009
projection
- 許可されている値はsummary
およびdetails
です。デフォルトはsummary
です。
レスポンス - 本体: リストのコレクション
POST
リクエスト - 本体: リスト
レスポンス - 本体: リスト
問合せパラメータの詳細は、第53.5.2.5項「テンプレート」を参照してください。
listsからリンクされるリソース・タイプ
表56-25は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-25 urn:oracle:webcenter:space:listsに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
|
ポータルに属するリストの表示(GET
)、更新(PUT
)および削除(DELETE
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、そのURIによって識別される特定のリストが含まれています。PUT
操作からのレスポンスには、そのURIによって識別されるリストの変更されたバージョンが含まれています。DELETE
操作へのレスポンスは、204ステータス・コードです。
listへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resourceindex lists list
listでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: リスト
PUT
リクエスト - 本体: リスト
レスポンス - 本体: リスト
DELETE
リクエスト - 本体: なし
レスポンス - 本体: なし
listの書込み可能要素
表56-26に、このリソースの書込み可能な要素を示します。
表56-26 urn:oracle:webcenter:space:listの書込み可能要素
要素 | タイプ | 必須 | 制約 | 説明 |
---|---|---|---|---|
name |
String |
はい |
1文字以上の文字 |
ポータル・リストの名前。 |
description |
String |
いいえ |
0文字以上の文字 |
リストの説明。 |
columns |
urn:oracle:webcenter:space:list:columns |
はい |
1文字以上の文字 |
リストを構成する列。 |
listの読取り専用要素
表56-27に、このリソースの読取り専用要素を示します。
表56-27 urn:oracle:webcenter:listの読取り専用要素
要素 | タイプ | 説明 |
---|---|---|
id |
String |
リストのID。 |
name |
String |
リストの名前。 |
description |
String |
リストの説明。 |
scopeguid |
String |
親ポータルのグローバルID。 |
scopename |
String |
親ポータルの名前。 |
creator |
String |
リストを作成したユーザーのID。 |
author |
|
リストを作成したユーザーに関するユーザー情報。GUID、ID、表示名およびプロファイル・アイコンへのリンクで構成されます( |
created |
日付 |
リストが作成された日付。 |
modifier |
String |
リストを最後に変更したユーザーのID。 |
modifiedByUser |
|
リストを最後に変更したユーザーに関するユーザー情報。GUID、ID、表示名およびプロファイル・アイコンへのリンクで構成されます( |
modified |
日付 |
リストが最後に変更された日付。 |
columns |
String |
リストを構成する列。 |
listからリンクされるリソース・タイプ
表56-28は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-28 urn:oracle:webcenter:space:listに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
|
|
|
リストの行(リスト・アイテム)の表示(GET
)および作成(POST
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、このリストの各行が含まれており、各行には、その行に対して操作するためのリンクが含まれています。POST
操作からのレスポンスには、このリストに作成された行と、その行に対して操作するためのリンクが含まれています。
rowsへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resourceindex lists list rows
rowsでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ:
startIndex
itemsPerPage
q
name
、title
、description
、creator
、created
、modifier
およびmodified
で検索できます。
文字列タイプの要素(name
、title
、description
、creator
およびmodifier
)で使用できる、サポートされているオペランドは、equals
、not.equals
、contains
およびstarts.with
です。例:
q=name:contains:issues q=creator:equals:monty
日付タイプの要素(created
およびmodified
)で使用できる、サポートされているオペランドは、equals
、not.equals
、greater.than
、greater.than.or.equals
、less.than
、less.than.or.equals
です。例:
q=created:greater.than:10-SEP-2009
レスポンス - 本体: 行のコレクション
POST
リクエスト - 本体: 行
レスポンス - 本体: 行
問合せパラメータの詳細は、第53.5.2.5項「テンプレート」を参照してください。
rowsからリンクされるリソース・タイプ
表56-29は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-29 urn:oracle:webcenter:space:list:rowsに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
parent |
|
|
リスト行(リスト・アイテム)の表示(GET
)、更新(PUT
)および削除(DELETE
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、そのURIで識別される特定の行が含まれています。PUT
操作からのレスポンスには、そのURIで識別される行の変更されたバージョンが含まれています。DELETE
操作へのレスポンスは、204ステータス・コードです。
rowへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resourceindex lists list rows row
rowでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: 行
PUT
リクエスト - 本体: 行
レスポンス - 本体: 行
DELETE
リクエスト - 本体: なし
レスポンス - 本体: なし
問合せパラメータの詳細は、第53.5.2.5項「テンプレート」を参照してください。
rowの書込み可能要素
表56-30に、このリソースの書込み可能な要素を示します。
表56-30 urn:oracle:webcenter:space:list:rowの書込み可能要素
要素 | タイプ | 必須 | 制約 | 説明 |
---|---|---|---|---|
columns.column.id |
String |
はい |
1文字以上の文字 |
列のID(リスト・アイテムの詳細を含む)。 |
columns.column.name |
String |
いいえ |
1文字以上の文字 |
列の名前。 |
columns.column.value |
String |
はい |
1文字以上の文字 |
列の値。 |
rowの読取り専用要素
表56-31に、このリソースの読取り専用要素を示します。
表56-31 urn:oracle:webcenter:space:list:rowの読取り専用要素
要素 | タイプ | 説明 |
---|---|---|
id |
String |
行(リスト・アイテム)のID。 |
listId |
String |
リストのID。 |
scope |
String |
親ポータルのグローバルID。 |
creator |
String |
リスト・アイテムを作成したユーザーのID。 |
author |
|
リスト・アイテムを作成したユーザーに関するユーザー情報。GUID、ID、表示名およびプロファイル・アイコンへのリンクで構成されます( |
created |
日付 |
リスト・アイテムが作成された日付。 |
modifier |
String |
リスト・アイテムを最後に変更したユーザーのID。 |
modifiedByUser |
|
リスト・アイテムを最後に変更したユーザーに関するユーザー情報。GUID、ID、表示名およびプロファイル・アイコンへのリンクで構成されます( |
modified |
日付 |
リスト・アイテムが最後に変更された日付。 |
rowからリンクされるリソース・タイプ
表56-32は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-32 urn:oracle:webcenter:space:list:rowに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
リストの列(リスト・アイテム詳細)の表示(GET
)および作成(POST
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、このリストの各列が含まれており、各列には、その列に対して操作するためのリンクが含まれています。POST
操作からのレスポンスには、このリストに作成された列と、その列に対して操作するためのリンクが含まれています。
columnsへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resourceindex lists list columns
columnsでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ:
startIndex
itemsPerPage
q
- 検索パラメータSTARTS.WITH
およびEND.WITH
はサポートされていません。
レスポンス - 本体: 列のコレクション
POST
リクエスト - 本体: 列
レスポンス - 本体: 列
問合せパラメータの詳細は、第53.5.2.5項「テンプレート」を参照してください。
columnsからリンクされるリソース・タイプ
表56-33は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-33 urn:oracle:webcenter:space:list:columnsに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
parent |
|
|
リストの列(リスト・アイテム詳細)の表示(GET
)、更新(PUT
)および削除(DELETE
)に使用するURIを識別するには、このリソース・タイプを使用します。GET
操作からのレスポンスには、そのURIで識別される特定の列が含まれています。PUT
操作からのレスポンスには、そのURIによって識別される列の変更されたバージョンが含まれています。DELETE
操作からのレスポンスは、204ステータス・コードです。
columnへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex spaces resourceindex lists list columns column
columnでサポートされるメソッド
次のメソッドは、このリソースによりサポートされています:
GET
リクエスト - 本体: なし
問合せパラメータ: なし
レスポンス - 本体: 列
PUT
リクエスト - 本体: 列
レスポンス - 本体: 列
DELETE
リクエスト - 本体: なし
レスポンス - 本体: なし
columnで書込み可能な要素
表56-34に、このリソースの書込み可能な要素を示します。
表56-34 urn:oracle:webcenter:space:list:columnの書込み可能要素
要素 | タイプ | 必須 | 制約 | 説明 |
---|---|---|---|---|
columns.column.id |
String |
はい |
1文字以上の文字 |
列のID(リスト・アイテムの詳細を含む)。 |
columns.column.name |
String |
いいえ |
1文字以上の文字 |
列の名前。 |
columns.column.value |
String |
はい |
1文字以上の文字 |
列の値。 |
columnの読取り専用要素
表56-35に、このリソースの読取り専用要素を示します。
columnからリンクされるリソース・タイプ
表56-28は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。
表56-36 urn:oracle:webcenter:space:list:columnに関連するリソース・タイプ
rel | リソース・タイプ |
---|---|
self |
|
ポータル内で、次のものなど様々なエンタープライズ・アプリケーションを公開できます。
Portal Frameworkアプリケーション - WebCenter Portal Frameworkを使用して開発されたアプリケーション。
WebCenter Suite内の他のポータル - たとえば、Oracle Portal。
Oracle Applications Unlimited製品 - たとえば、E-Business Suite、Siebel、PeopleSoftおよびJDEdwardsです。
他のカスタム・アプリケーション - Oracle以外のプラットフォームを使用して開発されたアプリケーション。
WSRP、Oracle JSF Portlet Bridge、ADFタスク・フロー、外部アプリケーション向けのWebCenter Portalサポートなどのテクノロジによって、WebCenter Portalは、統合された方式でアプリケーション・データを使用および定義できます。次の項で、その方法を説明します。
この項には次のサブセクションが含まれます:
WebCenter Portal Frameworkを使用して構築したPortal Frameworkアプリケーションを、ポータルでポートレットおよびタスク・フローとして公開できます。
ポートレット: コンテナ内にデプロイされ動的コンテンツを生成するWebコンポーネント。詳細は、第57章「ポートレットの概要」を参照してください。
Oracle JSF Portlet Bridge: 既存のADFアプリケーションおよびタスク・フローをJSR 168ポートレットとして簡単に公開することを可能にするテクノロジ。詳細は、第58章「Oracle JSF Portlet Bridgeを使用したJSFアプリケーションからのポートレットの作成」を参照してください。
タスク・フロー: マネージドBeanのコール・メソッドの使用、EL式の評価などで状態およびアクティビティ間の移行を定義するADFナビゲーション・コンポーネント。詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のADFタスク・フローのスタート・ガイドを参照してください。
次のようにして、Oracle以外のプラットフォームを使用して開発されたWebアプリケーションをWebCenter Portalで公開できます。
外部アプリケーションのサポート: 外部アプリケーションによって、資格証明ストアから、マップされたユーザー・アイデンティティを独自の認証が必要なWebアプリケーションに渡すことができます。詳細は、Oracle Fusion Middleware Oracle WebCenter Portalの管理の外部アプリケーションの登録に関する項および『Oracle Fusion Middleware Oracle WebCenter Portalの使用』の「外部アプリケーションの使用」を参照してください。
コンポーザのiframeレベルの統合: コンポーザのWebページ・ページ・スタイルおよびコンポーネントでは、異なるWebテクノロジを使用して構築されたアプリケーションのページなど任意のWebページ・コンテンツを表示できます。詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のWebページ・コンポーネントの使用に関する項を参照してください。
コンポーザでのRaw HTMLマークアップの注入: コンポーザのHTMLマークアップ・レイアウト・コンポーネントによって、HTMLまたはJavaScriptスニペットがPortalのページに注入されます。このコンポーネントを使用して、外部ソースからのコンテンツを表示できます。詳細は、Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築のHTMLマークアップ・コンポーネントの使用に関する項を参照してください。
OmniPortlet: 様々なレイアウトを使用して様々なデータ・ソースからのデータを公開するポートレット。詳細は、第64章「OmniPortletを使用したポートレットの作成」を参照してください。