Oracle® Fusion Middleware Oracle WebCenter Portal開発者用チュートリアル 11g リリース1 (11.1.1.7.0) B55930-04 |
|
前 |
次 |
このレッスンでは、デザインタイムの開発者として、WebCenter Portal: Frameworkアプリケーションのページ階層内の特定のページのコンテンツをカスタマイズし、そのページおよびコンテンツを階層に追加して、ユーザー・アクセスおよびドキュメント・コンテンツの編集または変更の権限を設定できるようにします。
また、HTML形式のドキュメントをUCMリポジトリから新しい.jspx
ページの引渡し可能なパネル・コンポーネントにドラッグ・アンド・ドロップし、そのページを「コンテンツ・プレゼンタ」タスク・フローとしてレンダリングします。「コンテンツ・プレゼンタ」タスク・フローでは、ポータル・アプリケーションにコンテンツを追加することが可能で、このケースでは、コンテンツ・リポジトリに保存されたドキュメント・コンテンツをドキュメント・サービスを使用して表示します。ドキュメント・サービスには、実行時にドキュメントを管理、表示および検索するためのわかりやすいインタフェースが用意されています。
最後の手順では、認証済ユーザーが実行時にこれらのコンテキスト内HTMLページのコンテンツを編集できるように設定します。ポップアップ・ウィンドウで、UCMリポジトリに保存されたコンテンツを追加または変更するための編集セッションが開きます。
このレッスンの終了時には、実行時にContact UsページでHTMLコンテンツのコンテキスト内編集が有効化されると、前のレッスンで作成したホーム・ページが図7-1のようになります。
前のレッスン(第6章)の手順に基づいて、これからWebCenter Portalアプリケーションの特定のページをカスタマイズして、ページ権限およびユーザー・アクセスを設定する手順に進みます。
このタスクを完了するために、まず新しい.jspx
ページ(このケースではcontacts.jspx
)を作成してから、このページをページ階層に追加する必要があります。ページを階層に追加するとページ権限を設定できるため、セキュリティ目的でこれらのページへのユーザー・アクセスを指定できます。
ポータル・アプリケーションでページをカスタマイズしてページ権限を設定するには、次のようにします。
JDeveloperで、「アプリケーション・ナビゲータ」にあるpages
フォルダに移動します。
「新規」を右クリックして「Web層」を展開し、「JSF」を選択してから「JSFページ」を選択すると、図7-2に示すように、「JSFページの作成」ダイアログが開きます。
「ファイル名」フィールドにcontacts.jspx
と入力し、「XMLドキュメントの作成(*.jspx)」チェック・ボックスが選択されていることを確認します。
「OK」をクリックします。
contacts.jspx
を選択して、「ソース」ビューで開きます(図7-3)。
「アプリケーション・ナビゲータ」で、pages
フォルダに格納されているhome.jspx
ファイルを選択し、このファイルを「ソース」ビューで開いて、図7-4に示すように、value
属性を指定しているコード行を選択します。これは、実行時に発生するテンプレートの変更をページで取得するために必要な手順です。
図7-4で強調表示されているコード行(ページ・テンプレート・バインディングを指定するvalue
属性)をコピーして、図7-5に示すように、value属性が存在するcontacts.jspx
ファイルにこのコード行をペーストします。
図7-6に示すように、home.jspx
ファイルを選択し、ファイルを右クリックして、「ページ定義に移動」メニュー項目を選択します。homePageDef.xml
ファイルが開きます。
図7-7および例7-1に示すように、「ソース」ビューのhomePageDef.xml
ファイルで、ページ・テンプレートのviewID
属性およびページ・テンプレート・バインディングのid
を指定するコード・スニペットを選択してコピーします。
homePageDef.xml
ファイルを開いたときの図7-6のように、contacts.jspx
ファイルを選択し、ファイルを右クリックして、「ページ定義に移動」メニュー項目を選択します。
「ソース」ビューでcontactsPageDef.xml
ファイルを開き、前の手順でコピーしたコード・スニペットをペーストして、図7-8に示すコード行と置き換えます。これらのコード行は、contactsページ定義ファイルのpath
属性およびid
属性を指定しています。
contacts.jspx
ファイルを選択して「ソース」ビューで開きます。次にJDeveloperで、アプリケーションの右側の列にある「コンポーネント・パレット」(「表示」→「コンポーネント・パレット」を選択)に移動し、「コンポーザ」を選択します。
図7-9に示すように、コンポーザで、リスト内の項目をPage Customizable
コンポーネントまで移動し、このコンポーネントをcontacts.jspx
ファイルのコード行<f:facet name="content">
の後にドラッグ・アンド・ドロップします。
図7-9 contacts.jspxに追加されるPanel Customizableのコード・スニペット
図7-10に示すように、JDeveloperでUCM接続を展開し、contactus.html
ファイルをpanelCustomizable
コンポーネントにドラッグ・アンド・ドロップします。
図7-11に示すように、ポップアップ・メニューが表示されたら「作成」メニュー項目を選択し、「ドキュメント - コンテンツ・プレゼンタ」タスク・フロー・サブ・メニュー項目に移動して、HTMLコンテンツをレンダリングします。
図7-12に示すように、「タスク・フロー・バインディングの編集」ダイアログが表示されます。「入力パラメータ」セクションのdatasource
フィールドに、UCM値があります。
図7-12 データ・ソース値としてUCMドキュメント名が表示された「タスク・フロー・バインディングの編集」ダイアログ
「OK」をクリックします。
ポータル・アプリケーションに戻り、pagehierarchy
フォルダに移動します。図7-13に示すように、pages.xml
ファイルを開きます。
pages.xml
の「ページ階層」ペインが開いたら、contacts.jspx
ファイルを「ルート」ノードにドラッグ・アンド・ドロップします(図7-14)。
「ルート」ノードでcontacts
を選択し、「ページ階層」ペインで表示可能チェック・ボックスの選択を解除します(図7-14では選択されています)。
図7-15に示すように、navigationsフォルダのdefault-navigation-model.xml
ファイルに移動し、「設計」ビューで開きます。
図7-15 設計ビューで表示されたdefault-navigation-model.xmlファイル・ペイン
pages
フォルダに移動してcontacts.jspx
ファイルを選択し、default-navigation-modelノードにドラッグします(図7-16)。
「ページ・リンク」アイテムを選択し、「新しいノードを追加します」アイコンを選択してリンクをナビゲーション・モデルに追加し、Default-navigation-modelの下に新たに生成されたアイテム「Contacts」をクリックします。
図7-17に示すように、「ID」フィールドにcontacts
と入力された「ナビゲーション」ダイアログが開きます。「URL属性」ペインで、「表示値」にContact Us
と入力します。
図7-17 IDとしてContactsおよび表示値としてContact Usが指定された「ナビゲーション」ペイン
「アプリケーション・ナビゲータ」に戻り、Portalプロジェクトを選択し、「実行」を右クリックして、Webブラウザでアプリケーションを起動します。
Figure 7-18に示すように、ナビゲーション・モデルの一部としてContact Usと表示されたアプリケーションがWebブラウザで開きます。ページにコンポーザからのコンテンツが移入されます。
「コンテンツ・プレゼンタ」タスク・フローの作成と追加およびテンプレートの表示の詳細は、『Oracle Fusion Middleware Oracle WebCenter Portal開発者ガイド』の「コンテンツ・プレゼンタの表示テンプレートの作成」の章を参照してください。
図7-18 ナビゲーションにContact Usリンクが追加されてWebブラウザに表示されたMyPortalApplication
アプリケーションの連絡先ページをカスタマイズし、contacts.html
ドキュメントをUCMリポジトリからcontacts.jspx
のpanelCustomizable
コンポーネントにドラッグ・アンド・ドロップして、「コンテンツ・プレゼンタ」タスク・フローとしてレンダリングする手順が完了しましたので、ここからはドキュメントのコンテキスト内HTML編集機能を有効化するタスクに進みます。
コンテキスト内ドキュメント編集を使用すると、認証済ユーザーは、ドキュメント・コンテンツにより簡単にアクセスして管理できるようになります。ただし、この機能は実行時にのみ使用可能です。
「アプリケーション・ナビゲータ」でPortalプロジェクトを選択し、「実行」を右クリックして、Webブラウザでアプリケーションを起動します。
パスワードとしてweblogic1
を指定してweblogic
(これにより管理権限が付与されます)としてログインし(図7-19)、バナーにある「Contact Us」リンクをクリックして「Contact Us」ページに移動します。
「Contact Us」ページが表示されたら、ページのコンテンツをクリックして、キーボードで[Ctrl] + [Shift] + [C]
を押します。「Contact Us」ページは、Webブラウザの中央に表示され、破線の輪郭と、ナビゲーション・バーの下の右上角には編集アイコンが表示されます。これは「Contact Us」ページの輪郭の内側部分がドキュメント・コンテンツ用に編集可能であることを示します(図7-20参照)。
ヒント:
ページの編集またはカスタマイズには別のツールおよびプロシージャのセットが必要で、これにより、たとえばタスクフローやポートレットを追加したり、または実行時にページのドキュメント・コンテンツだけではなく、ページ自体を変更したりできるようになります。 |
図7-20 コンテンツ編集が有効化されたWebブラウザ上のMyPortalApplication
図7-21に示すように、ブラウザ・ページの枠内部分の編集アイコンに移動し、アイコンをクリックして編集を有効化します。
図7-21 ホーム・ページ・ドキュメント・コンテンツの編集を有効化するために選択された編集アイコン
図7-22に示すように、認証済ユーザーがコンテンツをcontactus.html
ページに追加し、リッチ・テキスト・エディタを使用してコンテンツを編集できる、「編集」ポップアップ・ウィンドウがページの中央に表示されます。ドキュメント・コンテンツは、アクセスおよび取得を簡単にするために、UCMコンテンツ・リポジトリに保存されます。
ユーザーは、ウィンドウの左上角にある「保存」ボタンをクリックすることにより、編集内容を保存できます(図7-23)。
図7-23 コンテキスト内HTMLドキュメント・コンテンツを保存する「編集」-「保存」ウィンドウ
このレッスンでは、WebCenter Portal: Frameworkアプリケーションのページ階層内の特定のページをカスタマイズする方法、およびそのページを階層に追加して、ユーザー・アクセス権限を設定する方法を学習しました。また、新しいコンテンツをページに追加し、実行時に編集可能にすることにより、UCMリポジトリに保存されているドキュメント・コンテンツを実行時に簡単にHTML編集できることも学習しました。