Oracle® Fusion Middleware Oracle WebCenter PortalおよびOracle JDeveloperでのポータルの開発 11gリリース1 (11.1.1.8.3) E49666-03 |
|
前 |
次 |
この章では、設計時にPortal Frameworkアプリケーションにリンク機能を統合する方法について説明します。
この章の内容は、次のとおりです。
リンクの管理および組込みの詳細は、次を参照してください。
Oracle Fusion Middleware Oracle WebCenter Portalの管理の「データベース接続の設定」
Oracle Fusion Middleware Oracle WebCenter Portalによるポータルの構築の「リンク・コンポーネントの使用」
『Oracle Fusion Middleware Oracle WebCenter Portalの使用』の「WebCenter Portalの情報のリンク」
この項では、リンクの機能と要件の概要情報を説明します。次のサブセクションが含まれます:
リンクでは、関連情報を表示、アクセスおよび関連付ける方法が提供されます。たとえば、プロジェクトの割当てのリストで、割当てごとに対応する仕様にリンクできます。特定のタスクの問題に関するディスカッション・スレッドでは、そのタスクの実行方法を詳細に説明したドキュメントにリンクできます。
リンクは、アプリケーション開発者がソース・オブジェクト(ディスカッション・ツールなど)とターゲット・オブジェクト(ドキュメントなど)を設定し、これによりユーザーが2つのオブジェクト間のリンクを作成する手段を提供します。
リンクに関連するアクションには、作成、削除および管理の3つがあります。管理アクションには、作成と削除のアクションが含まれます。
リンクとともに、次のカスタムJSFコンポーネントが含まれています。
リンク詳細ボタン: これはアイコンおよびクリックで「リンク」パネルを開くハイパーリンク(オプション)を表示します。リンク詳細ボタンを使用するには、ページのリージョンの1つとして、リンク - ダイアログ・タスク・フローも含める必要があります。
リンク詳細メニュー項目: これは「リンク」パネルを開くメニュー項目を追加します。この項目はADFメニューに埋め込むことができます。リンク詳細メニュー項目を使用するには、ページのリージョンの1つとして、リンク - ダイアログ・タスク・フローも含める必要があります。
リンク・ステータス・アイコン: これには次の2つのバージョンがあります。
グレーのリンク・アイコン(図43-1)は、リンク・ダイアログにリンクがないことを示します。
ゴールドのリンク・アイコン(図43-2)は、リンク・ダイアログにリンクが存在することを示します。
次のオブジェクトからリンクできます。
お知らせ
ディスカッション
ドキュメント
イベント
リスト
ページ
カスタムJSFコンポーネント(リンク詳細ボタンなど)をバインドしたオブジェクト
次の新規オブジェクトへリンクできます。
ディスカッション
ドキュメント
イベント
ノート
URL
次の既存のオブジェクトへリンクできます。
お知らせ
ディスカッション
ドキュメント
イベント
注意: リストおよびノートは、ポータルでのみ使用できます。Frameworkアプリケーションでは使用できません。 |
メールやピープル・コネクションなどの他のWebCenter Portalコンポーネントおよびツールでは、リンクは使用できません。
リンクでは、オブジェクト間の双方向のリンクをサポートしています。たとえば、ディスカッションのトピックからドキュメントへのリンクを作成すると、ドキュメントからディスカッション・トピックへ戻るリンクも作成されます。同様に、ディスカッションのトピックからドキュメントへのリンクを削除すると、ドキュメントからディスカッション・トピックに戻るリンクも自動的に削除されます。双方向のリンクは、URL、ノートおよび特定のリストの行では使用できません。
リンクは、アプリケーション内のWebCenter Portalのツールまたはコンポーネントを自動的に認識します。ツールまたはサービスをアプリケーション内で構成すると、リンクを追加できます。ただし、リンクは保護されたページのみで機能します。リンク・アイコンは、保護されていないページには表示されません。詳細は、第43.2.3項「リンクのセキュリティ設定」を参照してください。
リンクは、ソーシャル・ネットワークで情報を簡単に共有できる方法を提供します。リンクは、情報の検索に通常かかる無駄な時間と労力を大幅に削減します。
リンクのこの機能は、「リンク」ダイアログ(図43-3)で公開されており、アプリケーションでリンク・アイコン(図43-1)が表示されているすべての場所からアクセスできます。
リンクによって、次の操作を実行できます。
オブジェクト(ページなど)を既存のオブジェクト(ディスカッションのトピックなど)にリンクするには、「リンク」アイコンをクリックし、「既存にリンク」を選択して、「ディスカッション」リソースを選択します。オプションで、特定のフォーラムを選択し、リンクを選択するトピックのリンクをクリックできます。
オブジェクト(ディスカッションのトピックなど)を新規オブジェクト(新規ノートやURLなど)にリンクするには、ディスカッションのトピックの「リンク」アイコンをクリックし、「新規にリンク」を選択して、「ノート」または「URL」を選択します。
1つのオブジェクトから複数のリンクを作成します。
リンクを削除します。
実行時のリンクの詳細は、『Oracle Fusion Middleware Oracle WebCenter Portalの使用』の「WebCenter Portalの情報のリンク」を参照してください。
この項では、アプリケーションにリンク機能を追加するために必要な手順について説明します。次のサブセクションが含まれます:
リンクには、WebCenter Portalスキーマがインストールされているデータベースへの接続が必要です。リンク・マップ(どのオブジェクトが、どのオブジェクトにリンクされているかなどの、リレーションシップのマッピング情報)はデータベースに格納されます。
データベース接続の設定の詳細は、第4.2.2項「データベース接続の設定」を参照してください。
この項では、リンク機能の基本的な組込みについて説明します。次のサブセクションが含まれます:
WebCenter Portalには、リンク・ダイアログ・タスク・フローが含まれています。
リンク・ダイアログ・タスク・フローをFrameworkアプリケーションに追加するには:
第2章「開発環境の設定」の手順に従い、カスタマイズ可能なページをアプリケーションで作成します。
WebCenter Portalスキーマのインストールにより、データベースへのデータベース接続を設定していることを確認します(第43.2.1項)。
リンク機能を追加するページを開きます。
「コンポーネント・パレット」で、「WebCenter Portal - リンク」をクリックします。
リンク詳細ボタン・コンポーネントをページのpanelGroupLayout
内にドラッグ・アンド・ドロップします。
この例では、ボタンをpanelGroupLayout
内に置きます。ボタンを常にpanelGroupLayout
内に置く必要はありません。
「リンク詳細ボタンの挿入」ダイアログ(図43-4)で、オブジェクト固有の説明、IDおよび名前を入力します。
このダイアログのプロパティは次のとおりです。
objectDescription: リンク詳細ボタンをバインドするオブジェクトの説明
objectId: リンク詳細ボタンをバインドするオブジェクトを識別する一意のID
objectName: リンク詳細ボタンをバインドするオブジェクトの名前
serviceId: アプリケーションを識別するアプリケーション全体のID
「serviceId」フィールドに、OnDemand
と入力します。
注意:
|
「OK」をクリックします。
ページ・ソースに新しいボタンが表示されます(図43-5)。
リソース・パレットで、「カタログ」を開き、「タスク・フロー」フォルダを開きます。
ページのリンク詳細ボタンの隣にあるリンク・ダイアログ・タスク・フローをドラッグ・アンド・ドロップし、ポップアップ・メニューから「リージョン」を選択します。
ページを保存し、ブラウザで実行します。
リンク機能には保護されたページが必要です。リンク・アイコンは、保護されていないページには表示されません。
WebCenter PortalのFrameworkアプリケーション・テンプレートを使用してアプリケーションを作成すると、デフォルトでADFセキュリティが構成されます。ADFセキュリティの構成の詳細は、第74.3項「ADFセキュリティの構成」を参照してください。
この項では、リンクで発生する代表的な問題と解決方法について説明します。
問題
「リンク」アイコンが表示されません。
解決方法
リンク機能では、リンク情報が格納されているWebCenter Portalスキーマへのデータベース接続が必要です。データベースへの接続を作成し、アプリケーション・ナビゲータの「アプリケーション・リソース」パネルで使用可能にしていることを確認します。接続が「リソース・パレット」で使用可能な場合は、接続を単純に「リソース・パレット」から、「アプリケーション・リソース」の「接続」フォルダにドラッグします。
問題
既存のリンクは表示されますが、新規のリンクを作成したり既存のリンクを削除できません。
解決方法
RelationshipPermission
権限は、リンク・コンポーネントが利用されると自動的に管理者に付与されます。他のユーザーにはADFセキュリティ・ポリシー・エディタを介してこの権限を付与します。詳細は、第74.3.1項「ADFセキュリティ設定の構成」を参照してください。
この項では、リンクで使用可能なオプション機能について説明します。次のサブセクションが含まれます:
WebCenter Portalでは、リンクをサポートするREST APIが提供されています。リンクREST APIは、2つのオブジェクト間のリンクを投稿するために使用します。たとえば、スペース内のイベントとドキュメント間にリンクを作成できます。
この項では、リンクに関連したREST APIメソッドについて説明します。次のサブセクションが含まれます:
REST APIの概要は、第53章「Oracle WebCenter Portal REST APIの使用」を参照してください。
各RESTサービスは、そのサービスのエントリ・ポイントを提供するリソース索引内にリンク要素を持っています。リンクのエントリ・ポイントを検索するには、次のresourceType
を使用したリンク要素を検索します。
urn:oracle:webcenter:links
対応するhref
またはtemplate
要素によって、URIエントリ・ポイントが提供されます。クライアントはこのエントリ・ポイントにHTTPリクエストを送信して、リンクを操作します。
リソース索引の詳細は、第53.5.1項「リソース索引の使用」を参照してください。
リソース・タイプの詳細は、第53.5.2.1項「リソース・タイプ」を参照してください。
クライアントがエントリ・ポイントを識別すると、リソース・タイプの分類によりナビゲートして、必要な操作を実行できます。個々のリソース・タイプの詳細は、第53.5.2.1項「リソース・タイプ」の該当の項を参照してください。
リンクの分類は、次のとおりです。
urn:oracle:webcenter:links urn:oracle:webcenter:links:results
サービス・エントリ・ポイントの他、URLテンプレートにより、クライアントは、問合せパラメータを渡してリクエストをカスタマイズしたり戻されたデータのフォームを制御できます。
認証は、リンクのREST APIのメソッドを使用する前に必要です。
一般的なセキュリティに関する考慮事項については、第53.8項「WebCenter Portal REST APIのセキュリティに関する考慮事項」を参照してください。
この項では、各リソース・タイプについて説明します。次のサブセクションが含まれます:
このリソース・タイプを使用して、URIを識別し、2つのオブジェクト間のリンク(POST
)の作成に使用します
リクエストはURLによって表され、レスポンスはリンクで、それぞれエンド・ユーザーがドリル・ダウンするアイテムを選択し、使用可能な場合は独自のRESTサービスへのリンクをクロスするうえで役立つメタデータを備えています。独自のRESTサービスが使用できない場合は、HREFリンクが提供されます。
resultsへのナビゲーション・パス
この項では、クライアントがハイパーメディアを経由してこのリソースにアクセスする方法を示します:
resourceindex links results
resourceindex spaces spaces:resourceindex spaces:links results
resultsでサポートされるメソッド
このリソースによってサポートされるメソッドは次のとおりです。
POST
リクエスト - 本体: ソースおよびターゲット・オブジェクト。それぞれにserviceId
、resourceId
およびresourceName
が含まれます。ターゲットがURLリンクの場合、ターゲット・オブジェクトにはパラメータのserviceId
、resourceId
およびresourceName
に加えてresourceUrl
も含まれます。
response - body: 成功した場合には「204 コンテンツなし」、ユーザーにリンクを作成する権限がない場合には「403 禁止」のステータスになります
ここで:
serviceId={serviceId}
オプション: services.oracle.webcenter.collab.calendar.community
などのアイテムのサービスID。
resourceId={resourceId}
s833cddc4_caa5_416c_87e9_d702ef870b43;;3b0c6edb
などのリソースID
resourceName={resourceName}
New Event
などのリソース名。
詳細は、第53.5.2.5項「テンプレート」を参照してください。
resultsからリンクされるリソース・タイプ
表43-1は、クライアントがこのリソースからリンクできるリソース・タイプを示しています。