この章の内容は次のとおりです。
権限
この章のタスクを実行するには、WebCenter PortalのAdministrator
ロールまたは次の権限を付与されているカスタム・ロールが必要です。
Portal Server: Manage All
またはPortal Server: Manage Configuration
権限の詳細は、「アプリケーション・ロールおよび権限について」を参照してください。
デバイス設定を正常に管理するには、この項で説明する概念に精通している必要があります。
エンタープライズ・ポータル・ユーザーは、スマートフォン、タブレット、デスクトップのブラウザなど様々なデバイスからポータルにアクセスします。デバイス設定および関係する機能を使用すると、ポータル・ページを様々なデバイスに正確にレンダリングする方法を制御できます。システム管理者は、新しいタイプのデバイスのサポートやポータル・ページを特定のデバイスにレンダリングする方法の変更や向上を求められる場合があります。
WebCenter Portalには、ある特定のリクエストがどのタイプのデバイスから送信されるのかを認識し、該当するデバイスにポータルを適切にレンダリングする機能があります。システム管理者は、デバイス設定を使用して、このデバイス認識を変更または調整するとともに、特定のデバイスまたはデバイス・クラスに関連付けるページ・テンプレートおよびスキンを指定します。これは、スキンとテンプレートを正確に割り当てる方法を制御するデバイス設定を通して行います。
初期設定でWebCenter Portalには、スマートフォン、タブレットまたはデスクトップのブラウザのような一般的なデバイス・クラスに合わせてレンダリングするように設計されているいくつかのページ・テンプレートが用意されています。これらのテンプレートをそのまま使用したり、必要に応じてこれらを変更したり、新しいものを作成したりできます。
システム管理者として、次の場合にデバイス設定の使用を検討します。
新しいデバイスまたはデバイス・クラスに対するレンダリングのサポートを追加する必要がある場合。
デバイスまたはデバイス・クラスにポータル・ページをレンダリングする方法で問題が検出された場合。
ポータル開発者がデバイス固有のページを作成し、これが検出されず、ターゲット・デバイスに表示されないことがわかった場合。
デバイスとは、WebCenter Portalでは、スマートフォンやタブレットなどの、ユーザーがポータルとやり取りするために使用する物理的デバイスを意味します。ポータル・ページがリクエストされるたびに、WebCenter Portalはリクエスト元のデバイスのタイプを判断します。この情報によって、ポータルは、デバイスが関連付けられているデバイスのカテゴリつまり「デバイス・グループ」を判断できます。「デバイス・グループとは何か」を参照してください。
WebCenter Portalには、iPhone、iPad、iPad mini、Samsung Galaxy Nexus、Samsung Galaxy Note 10.1など、すぐに使用できる多数の事前構成済のデバイスが付属しています。必要に応じて新しいデバイスを作成することも可能です。
図45-1に、WebCenter Portal管理にリストされたいくつかのデフォルトのデバイスを示します。
各デバイスには、3つの主要な特性(名前、表示名およびユーザー・エージェント文字列)があります。
名前: デバイスの一意の名前。特定のユースケースでは、この名前を使用することにより、式言語の式を使用して開発者がこれを検出することができます。
表示名: この名前は、WebCenter Portalのユーザー・インタフェースに表示されます。
ユーザー・エージェント: リクエスト元のデバイスを識別するために使用する正規表現の文字列。たとえば、.*iPhone.+3G.+OS.+2_2.*
などの表現は、iPhone 3Gの様々なバージョンに対応します。
注意:
ユーザー・エージェント文字列は正規表現であり、Javaプラットフォーム(java.util.regex.Pattern)によって指定された構文に準拠しています。したがって、ある特殊文字を照合する場合、これらに対してエスケープ文字を使用する必要がある場合があります。これらの文字には[\^$.|?*+()
などがあり、場合によっては中括弧文字{}
も含まれます。たとえば、丸括弧には、\(iPhone; CPU iPhone OS 5_0 like Mac OS X\)
のようにエスケープ文字「\」を使用する必要があります。詳細は、正規表現構文に関する優れたリファレンスを読むことをお薦めします。
システム管理者は、新しいデバイスの作成および既存のものの管理を実行できます。たとえば、ユーザー・エージェント文字列を変更し、新しいバージョンのデバイスを正しく識別することが必要になる場合があります。または、必要に応じて新しいデバイスを作成することが必要になる場合があります。詳細は、「デバイスの作成および管理」を参照してください。
デバイス・グループとは、同様の表示要件を共有する一連のデバイスを意味します。初期設定のWebCenter Portalには、デスクトップのブラウザ、iOSフォン、Androidフォン、iOSタブレット、Androidタブレットなどのいくつかの事前構成済デバイス・グループが付属しています。
デバイス・グループには適切なデバイスが含まれます。たとえば、iOSフォン・デバイス・グループには、iPhone、iPhone 3G、iPhone 3GS、iPhone 4、iPhone 4Sなどが含まれます。さらにデバイスを作成するとき、これらを既存のグループに追加したり、必要に応じて新しいグループを作成したりできます。
デバイス・グループの利点は、サポートされるデバイスごとに表示アセット(ページ・テンプレートおよびスキン)を構成する必要がないことです。そうではなく、複数の関連デバイスをグループに追加して、それらのデバイスが使用するアセットを指定できます。図45-2 に、デバイス・グループの「管理」ページを示します。このページを使用すると、デバイス・グループに対して、作成、編集、コピー、アップロードなどの操作を実行できます。詳細は、「デバイス・グループの作成および管理」を参照してください。
次の機能はデバイス設定と関係があります。これらには、デフォルトのデバイス・グループ、ページ・バリアントおよびフォールバック・ページなどがあります。
デフォルトのデバイス・グループ: 常に1つのデバイス・グループがデフォルトとして指定されます。初期設定では、デフォルトのデバイス・グループはデスクトップのブラウザです。つまり、デフォルトでは、新しいポータルのすべてのページはデスクトップのブラウザのデバイス・グループに関連付けられます。認識されていないデバイスからリクエストが来ると、ポータル・ページは、デフォルトのデバイス・グループ設定に従ってレンダリングされます。
注意:
ベース・ページは、常にデフォルトのデバイス・グループに属しているデバイスでレンダリングされます。
デフォルトのデバイス・グループは、ポータルのテンプレート機能と関連付けられています(ポータルのテンプレートは新しいポータルの基盤となるテンプレートです)。ポータルのテンプレートから作成されるポータルは、そのテンプレートのデフォルトのデバイス・グループを自動的に受け取ります。同様に、ポータルからポータルのテンプレートを作成する場合、そのポータルに関連付けられたデフォルトのデバイス・グループがテンプレートに配置されます。
使用するデバイス・グループをWebCenter Portalが選択する方法の詳細は、「デバイス設定を適用する方法の理解」を参照してください。
ページ・バリアント: ページ・バリアントとは、特定のデバイスで使用するために設計された、既存または「ベース」のページの代替ビューです。バリアントの派生元のベース・ページとページ・バリアント自体は、同じURI、セキュリティ設定、パラメータなどを持っていますが、これらは、ターゲット・デバイスに対して適切な特定のレンダリング特性を使用して設計されます。ページ・バリアントを作成するとき、これに関連付けるデバイス・グループおよびページ・スタイルを指定できます。
ページ・バリアントにはいくつかの使用法があります。会社のイントラネットのポータル・ページの1つが、特定のデバイスに対してエラーを返すことがわかったとします。たとえば、そのようなエラーが、フラッシュ・ビデオを含むページをAppleのデバイスでレンダリングするときに発生するとします。この場合、ページがAppleのデバイス用にリクエストされた場合のみ使用し、その他のデバイス用には使用しないようなページのバリアントを作成できます。この場合、バリアントには、おそらくフラッシュ・ビデオのかわりにイメージが含まれ、エラーは表示されなくなります。
ページ・バリアントは、通常、アプリケーションのスペシャリストによって作成されますが、管理者のみがシステム・ページのページ・バリアントを作成できます。たとえば、スマートフォンに適したログイン・ページ・バリアントを作成できます。
システム・ページのページ・バリアントの作成の詳細は、「デバイス・グループ用システム・ページのページ・バリアントの作成」を参照してください。ポータル・ページのページ・バリアントの作成の詳細は、『Oracle WebCenter Portalでのポータルの構築』のデバイス・グループのページ・バリアントの作成に関する項を参照してください。
フォールバック・ページ: もう一つの関連概念はフォールバック・ページです。ページにページ・バリアントがない場合には、常にベース・ページがデフォルトでレンダリングされますが、この動作をオーバーライドしてこの状況でページを表示しないようにできます。
注意:
ページのフォールバック動作が、「ページを表示しない」に設定されている場合、そのページへのナビゲーション・リンクはすべてビューで非表示になります。言い換えると、メッセージ「デバイスで使用できるページがありません」という結果になるすべてのナビゲーション・リンクは、ユーザーに表示されません。
個別ページまたはすべてのポータル・ページに対してフォールバックを設定できます。フォールバックの詳細は、『Oracle WebCenter Portalでのポータルの構築』のページ・バリアントが存在しない場合の特定ページのページ動作の設定に関する項を参照してください。
ここでは、管理するポータルのデバイス設定で作業する必要がある場合に理解を助けるユースケースを説明します。
現在サポートしているタブレット・デバイスとは異なる画面解像度およびサイズを備えた新しいミニタブレットがリリースされたとします。実際に、ユーザーは、会社のイントラネット・ポータルがこのデバイスで正しくレンダリングされないことに気付きます。つまり、空白が多く、会社のロゴが正しく表示されません。この新しいデバイスのサポートを求められています。この場合、基本的な手順は次のようになります。
図45-3 に、WebCenter Portalが複数の異なるデバイスからのリクエストを処理する方法のフローを説明します。
図45-3 に示すように、リクエストがサーバーに送られると、リクエストのヘッダーにあるユーザー・エージェント文字列が調べられます。次に、WebCenter Portalは、そのユーザー・エージェント(正規表現の文字列)と一致するデバイスを探します。
ユーザー・エージェントが着信ユーザー・エージェントに潜在的にマップできるデバイスが複数定義されている場合、サーバーはリクエストを最適なデバイスにマップしようとします。最適なデバイスとは、そのユーザー・エージェントに最大限の一致が含まれるデバイスです。
デバイスが特定されると、WebCenter Portalは、これがデバイス・グループにあるかどうかを確認します。複数のグループに存在する場合、ポータルのデバイス・グループのリストの最初のものを使用します。「デバイス・グループの順序付け」も参照してください。
デバイスが特定されない場合、WebCenter Portalは「デフォルトのデバイス・グループ」を現在のリクエストに割り当てます。
最後に、そのデバイス・グループに関連付けられた適切なスキン、ページ・テンプレートおよびページ・バリアント(存在する場合)が返され、ページがデバイスでレンダリングされます。ページにページ・バリアントがない場合、デフォルトではベース・ページがレンダリングされますが、この動作をオーバーライドしてこの状況でページを表示しないようにできます。詳細は、『Oracle WebCenter Portalでのポータルの構築』のページ・バリアントが存在しない場合のポータルのページ動作の設定に関する項を参照してください。
この項では、デバイスの作成および管理方法について説明します。
注意:
場合によっては、「デバイス設定」ページでデバイス構成を追加または変更した後に、ページ・バリアントを表示できないことがあります。この場合、ログアウトしてからログインしてキャッシュをクリアします。その後、デバイスは正しく認識されます。
既存のデバイスを編集するには:
注意:
場合によっては、「デバイス設定」ページでデバイス構成を追加または変更した後に、ページ・バリアントを表示できないことがあります。この場合、ログアウトしてからログインしてキャッシュをクリアします。その後、デバイスは正しく認識されます。
デバイスのコピーの作成は次のことを行うときに便利です。
デバイスのバックアップを作成するとき。
デバイスを更新するが、元のものも使用できるように保持するとき。
新しいデバイスを作成する開始点として組込みのデバイスを使用するとき。
デバイス・グループをコピーするには:
「フィルタ」フィールドでは、「デバイス」表に表示されるデバイスのリストをフィルタできます。フィルタリングは、デバイス・グループ名、表示名、説明およびユーザー・エージェントに対して検索を行います。
デバイス・グループは、類似した表示要件を共有するデバイスの集合を表します。この項では、サポートするデバイス・グループの作成および管理方法について説明します。
「基本的なユースケース: 新しいデバイスのサポートの追加」も参照してください。
注意:
場合によっては、「デバイス設定」ページでデバイス構成を追加または変更した後に、ページ・バリアントを表示できないことがあります。この場合、ログアウトしてからログインしてキャッシュをクリアします。その後、デバイスは正しく認識されます。
デバイス・グループの表示名の変更、デバイス・グループの目的を説明する説明の編集およびデバイス・グループに関連付けられたスキンおよびテンプレート(またはこれらのいずれか)の変更を実行できます。デバイス・グループを特定するために内部的に使用されるデバイス・グループの名前を変更することはできません。
デバイス・グループの基本的詳細を編集するには:
デバイス・グループのコピーを作成できます。これは次のことを行うときに便利です。
デバイス・グループのバックアップを作成するとき。
デバイス・グループを更新するが、元のものも使用できるように保持するとき。
新しいデバイス・グループを作成する開始点として組込みのデバイス・グループを使用するとき。
デバイス・グループのコピーを作成すると、元のデバイス・グループのステータスとは関係なくコピーは非表示としてマークされます。
デバイス・グループをコピーするには:
デバイス・グループ(組込みかカスタム化は不問)はすべて、非表示または使用可能としてマークできます。デバイス・グループの名前の横のチェック・マークは、デバイス・グループが使用可能であることを示しています。チェック・ボックスが空の場合、デバイス・グループをポータルで使用できないことを示しています(図45-7 )。この設定は、ページ・バリアントを作成するときに使用できる選択肢も制御します。デバイス・グループが非表示の場合、新しいページ・バリアントで使用するオプションとして表示されず、そのグループでページ・バリアントを作成できません。表示/非表示の設定は、「ポータル管理」設定から継承されますが、ポータル・マネージャによってポータル・レベルでオーバーライドできます。『Oracle WebCenter Portalでのポータルの構築』のデバイス・グループのページ・バリアントの作成に関する項も参照してください。
デフォルトでは、デバイス・グループを作成するとき、これは使用不可としてマークされます。
デバイス・グループを表示または非表示にするには:
デスクトップのブラウザという名前の組込みデバイス・グループは、WebCenter Portalのデフォルトのデバイス・グループです。作成するすべての新しいページは、デフォルトのデバイス・グループに自動的に関連付けられます。
「デバイス・グループ」タブで、Default
は、デフォルトとして設定されているデバイス・グループの横に表示されます。
デバイス・グループをデフォルトとして設定するには:
デバイスを使用してユーザーがWebCenter Portalにアクセスする場合、ポータルは、そのデバイスが属するデバイス・グループと関連付けられたページ・テンプレートやスキンなどのアセットを使用してレンダリングされます。ただし、1つのデバイスが複数のデバイス・グループに関連付けられている場合があります。そのような場合は、「デバイス・グループ」タブでのデバイス・グループの順序付けにより、デバイス・グループの優先順位が決まります。
デバイス・グループの順序を定義するには:
「フィルタ」フィールドでは、「デバイス・グループ」表に表示されるデバイス・グループのリストをフィルタリングできます。フィルタリングにより、デバイス・グループ名、表示名および説明での検索が行われます。
デバイス・グループが不要になった場合、これを削除できます。ただし、削除できるのはカスタム・デバイス・グループのみで、組込みデバイス・グループは削除できません。
注意:
デバイス・グループが削除されても、そのデバイス・グループに関連付けられたページ・バリアントはそのまま存在します(これらは削除されません)。デバイス・グループの削除に関する重要なガイドラインは、「デバイス設定のガイドラインおよびベスト・プラクティス」を参照してください。
デバイス・グループを削除するには:
デバイス・グループおよびデバイスをファイルにダウンロードし、これらを別のWebCenter Portalインスタンスにアップロードできます。たとえば、デバイス・グループをステージング・サーバーから本番サーバーに移動する場合は、次の項で説明するライフ・サイクル・メカニズムを使用します。
注意:
ダウンロードできるのは、コピーまたは作成したデバイス・グループまたはデバイスのみです。初期設定のデバイス・グループはどれもダウンロードできません。
デバイス・グループをアップロードまたはダウンロードする場合、そのデバイス・グループに関連付けられているすべてのアーティファクトが含まれます(そのグループに関連付けられているすべてのデバイスを含む)。たとえば、新しいデバイスを作成し、これをグループに追加してからそのグループをダウンロードしたとします。この場合、そのグループを別のサーバーにアップロードすると、その新しいデバイスはデバイスのリストに自動的に追加されます。
WebCenter Portalには、ページおよびページ・バリアントが特定のデバイスでどのようにレンダリングされるかをプレビューできるプレビュー機能が組み込まれています。詳細は、『Oracle WebCenter Portalでのポータルの構築』のページのモバイル・デバイス・バリアントのプレビューに関する項を参照してください。
この項では、デバイス設定での作業のベスト・プラクティスについて説明します。
本番ポータルのデフォルトのデバイス・グループを変更しない
本番ポータルのデフォルトのデバイス・グループを変更すると、予期しない動作を引き起こす場合があります。ポータルを本番にしたら、デフォルトのデバイス・グループを変更しないことが適切です。
本番ポータルのカスタムのデバイス・グループを削除しない
本番またはポータルのカスタムのデバイス・グループを削除した場合、サーバーは、既存のポータルがそのデバイス・グループを使用していることを警告せず、場合によっては正しくないページ・レンダリングが発生します。
デバイス・グループを誤って削除した場合
削除したデバイス・グループと同じデバイス・グループ名の別のデバイス・グループを作成できます。デバイス・グループが削除されても、そのページ・バリアントはシステムから削除されません。これらのページ・バリアントは、デバイス・グループの名前を使用して関連付けられています。同じ名前のデバイス・グループを再作成すると、これらすべてのページが元に戻ります。
デバイスのリクエストに関する情報が必要な場合
場合によっては、ポータルへのアクセスに使用するデバイスの情報を取得し、ポータルによるデバイスのマッピング先のデバイス設定を検出すると役に立ちます。便宜を図るために、「デバイス属性の検出: サンプル・タスク・フロー」に、このデバイス情報を返すタスク・フローを作成するために開発者が使用できるコードをリストします。
式言語の式を使用して、デバイス属性を返すことができます。この目的のために使用できるサンプル・コードは、『Oracle JDeveloperによる、WebCenter Portalアセットおよびカスタム・コンポーネントの開発』のデバイス設定に関連するEL式に関する項で示されます。開発者は、このコードを使用して、ポータルが指定のデバイスでレンダリングされる方法に関する問題のトラブルシューティングで役に立つデバイス情報を返すタスク・フローを作成できます。図45-9 は、このサンプル・コードを使用して作成したタスク・フローからの出力を示しています。