一般的に、ページ・グループ内で作成したオブジェクトは、そのページ・グループ内でのみ使用できます。ページ・グループ間でオブジェクトを共有する場合、オブジェクトを「共有オブジェクト」ページ・グループに作成するか、ページ・グループから「共有オブジェクト」ページ・グループに移動する必要があります。
この項では、「共有オブジェクト」ページ・グループについて説明し、コンテンツを他のページ・グループから「共有オブジェクト」ページ・グループに移動する方法について解説します。この項の内容は次のとおりです。
「共有オブジェクト」ページ・グループは、Portalのページ・グループ間で共有可能なオブジェクトを含むページ・グループです。
共有可能なオブジェクトのタイプには、属性、アイテム・タイプ、ページ・タイプ、カテゴリ、パースペクティブ、テンプレート、ナビゲーション・ページおよびスタイルが含まれます。これらのオブジェクトの大部分は、ページ・グループから「共有オブジェクト」ページ・グループに移動できます。ただし、テンプレートとナビゲーション・ページは移動できません。ページ・グループ間でテンプレートとナビゲーション・ページを共有するには、それらを「共有オブジェクト」ページ・グループに作成する必要があります。
ページも、「共有オブジェクト」ページ・グループには移動できません。ただし、ページをポートレットとして公開し、共有することは可能です。詳細は、8.5項「別のページへのページの配置」を参照してください。
「共有オブジェクト」ページ・グループのデフォルト言語は英語です。ページ・グループを英語以外の言語で作成する場合、未翻訳のオブジェクトを「共有オブジェクト」ページ・グループから英語以外のページ・グループ内のページに追加すると、エラーが表示されます。共有オブジェクト用に他の言語による翻訳を用意するか、少なくともページ・グループのデフォルト言語の翻訳を用意する必要があります。詳細は、第19章「Portalコンテンツの翻訳」を参照してください。
このことは、特に基本言語が英語以外のページ・グループ間でテンプレートを共有する場合に問題となる可能性があります。たとえば、「共有オブジェクト」ページ・グループによって所有されるテンプレートに含まれるオブジェクトがあるとします。これらのオブジェクトには、翻訳が存在しません。ここで、基本言語が英語以外のページ・グループのページにこのテンプレートを適用します。対応する翻訳が存在しないテンプレートのオブジェクトは、表示されません。これらのオブジェクトを表示するには、まずオブジェクトの翻訳バージョンをテンプレートに追加する必要があります。詳細は、19.3.1項「翻訳されたアイテムの追加」を参照してください。
これらの内容は、ナビゲーション・ページでも同様です。つまり、「共有オブジェクト」ページ・グループのナビゲーション・ページを英語以外のページ・グループで使用するには、そのナビゲーション・ページが英語以外のページ・グループのデフォルト言語に翻訳されている必要があります。
「共有オブジェクト」ページ・グループでオブジェクトを作成または管理するには、対象の「共有オブジェクト」ページ・グループに対する適切なページ・グループ権限を持っている必要があります。たとえば、共有カテゴリを作成または編集するには、共有オブジェクト・ページ・グループに対するページ・グループ権限「クラスの管理」を保持している必要があります。権限の詳細は、付録B「ページ・グループ・オブジェクト権限」および第17章「コンテンツの保護」を参照してください。
ページ・グループ間で既存のオブジェクトを共有する場合は、それを共有オブジェクト・ページ・グループに移動できます。異なるタイプのオブジェクトを移動すると、その移動の結果、様々な追加操作が発生する可能性があります。たとえば、カテゴリを移動すると、そのカテゴリに関連するサブカテゴリもすべて移動されます。関連するカテゴリ・ページは再生成され、元のカテゴリ・ページ上のコンテンツは失われます。
「共有オブジェクト」ページ・グループに、移動されたオブジェクトと同じ名前を持つオブジェクトがすでに含まれる場合、その移動されたオブジェクトの名前(内部名)に値が追加されます。これにより、ページ・グループ内で名前の一意性が確保されます。
たとえば、共有オブジェクト・ページ・グループにsample_categoryという名前のカテゴリが含まれているとします。別のページ・グループであるDivisionにも、sample_categoryという名前のカテゴリが含まれています。sample_categoryをDivisionページ・グループから共有オブジェクト・ページ・グループに移動します。Oracle Portalによって、移動されたカテゴリにsample_category_AABkUWAAJAABpiAACなどの値が追加されます。内部名は変更できますが、「共有オブジェクト」ページ・グループの他のオブジェクトと同じ名前を付けることはできません。
デフォルト言語が英語である「共有オブジェクト」ページ・グループに英語以外のページ・グループからオブジェクトを移動できるのは、そのオブジェクトにすでに英語の翻訳が存在する場合のみです。このことは、すべての昇格可能オブジェクト(アイテム・タイプ、ページ・タイプ、カテゴリ、パースペクティブ、属性およびスタイル)に適用されます。
オブジェクトを元のページ・グループから「共有オブジェクト」ページ・グループに移動するには、次のようにします。
Oracle Portalにログインします。
「構築」タブをクリックして、前面に表示します。
「ページ・グループ」ポートレットの「作業場所」ドロップダウン・リストで、オブジェクトを移動するページ・グループを選択します。
デフォルトでは、「ページ・グループ」ポートレットは「Portalビルダー」ページの「構築」タブにあります。
選択したページ・グループの横の「ブラウズ」リンクをクリックします。
Portalナビゲータが表示されます。
ナビゲータで、移動するオブジェクトのタイプをクリックします。
たとえば、「カテゴリ」リンクをクリックします。
移動するオブジェクトの横の「共有に移動」リンクをクリックします。
ページ、テンプレートまたはナビゲーション・ページは、「共有オブジェクト」ページ・グループに移動できないことに注意してください。これらのオブジェクトをページ・グループ間で共有するには、「共有オブジェクト」ページ・グループ内に作成する必要があります。
「共有オブジェクト」ページ・グループにオブジェクトを移動する際に、同じ名前を持つ同じタイプのオブジェクトが別のページ・グループに存在する場合、すべてのページ・グループ間で名前の一意性を確保するために、(「共有オブジェクト」ページ・グループの)オブジェクト名の最後に値が追加されます。たとえば、salesというカテゴリが複数のページ・グループに存在し、その1つを共有オブジェクト・ページ・グループに移動した場合、その名前は、たとえばsales_AAAYq2AAJAAAeqAAACのように、ページ・グループ間で一意になるよう共有オブジェクト・ページ・グループ内で自動的に変更されます。
Oracle Portalでのオブジェクト命名規則の詳細は、付録D「Oracle Portalのオブジェクト命名規則」を参照してください。
確認のページで、「はい」をクリックします。
移動したオブジェクトは、元の親ページには表示されなくなります。「共有オブジェクト」ページ・グループを調べて、移動したオブジェクトの場所を確認してください。