付録C.7 ポートレットグループを使用するための設定

共通情報を使用している場合は,ポートレットグループを使用するための設定をします。

ポートレットグループを使用するための設定手順を次にします。なお,DBにHiRDBを使用している場合は,この手順を実施する前に,RDエリア(RDPORTLETGROUP,RDLOBPG1,およびRDLOBPG2)を追加しておいてください。

  1. SQL文を実行し,ポートレットグループ管理テーブル(PORTLET_GROUPおよびPORTLET_ENTRY)を追加します。
    DBの種類別に,実行するSQL文を示します。
    HiRDBの場合

    CREATE TABLE PORTLET_GROUP
    (
       PORTLETGROUPNAME VARCHAR(20) PRIMARY KEY,
       LOCATION VARCHAR(20),
       PORTLETGROUPTITLES BLOB(12000) IN RDLOBPG1,
       PORTLETGROUPDESCS BLOB(12000) IN RDLOBPG2,
       PARENTPORTLETGROUP VARCHAR(20),
       GROUPUPDATECD VARCHAR(20),
       DELETEFLG VARCHAR(1)
    ) IN RDPORTLETGROUP;

    CREATE TABLE PORTLET_ENTRY
    (   ENTRYID VARCHAR(20) PRIMARY KEY,
       ENTRYNAME VARCHAR(80) NOT NULL,
       PORTLETGROUPNAME VARCHAR(20) NOT NULL,
       ENTRYUPDATECD VARCHAR(20),
       DELETEFLG VARCHAR(1)
    ) IN RDPORTLETGROUP;

    CREATE INDEX PORTLET_GROUP_INDX1 ON PORTLET_GROUP(LOCATION) IN RDPORTLETGROUP;
    CREATE INDEX PORTLET_GROUP_INDX2 ON PORTLET_GROUP(PARENTPORTLETGROUP) IN RDPORTLETGROUP;
    CREATE INDEX PORTLET_GROUP_INDX3 ON PORTLET_GROUP(GROUPUPDATECD) IN RDPORTLETGROUP;
    CREATE INDEX PORTLET_GROUP_INDX4 ON PORTLET_GROUP(DELETEFLG) IN RDPORTLETGROUP;
    CREATE INDEX PORTLET_ENTRY_INDX1 ON PORTLET_ENTRY(PORTLETGROUPNAME) IN RDPORTLETGROUP;
    CREATE INDEX PORTLET_ENTRY_INDX2 ON PORTLET_ENTRY(ENTRYUPDATECD) IN RDPORTLETGROUP;
    CREATE INDEX PORTLET_ENTRY_INDX3 ON PORTLET_ENTRY(DELETEFLG) IN RDPORTLETGROUP;

    Oracleの場合

    CREATE TABLE PORTLET_GROUP
    (
       PORTLETGROUPNAME VARCHAR(20) PRIMARY KEY,
       LOCATION VARCHAR(20),
       PORTLETGROUPTITLES BLOB,
       PORTLETGROUPDESCS BLOB,
       PARENTPORTLETGROUP VARCHAR(20),
       GROUPUPDATECD VARCHAR(20),
       DELETEFLG VARCHAR(1)
    );

    CREATE TABLE PORTLET_ENTRY
    (
       ENTRYID VARCHAR(20) PRIMARY KEY,
       ENTRYNAME VARCHAR(80) NOT NULL,
       PORTLETGROUPNAME VARCHAR(20) NOT NULL,
       ENTRYUPDATECD VARCHAR(20),
       DELETEFLG VARCHAR(1)
    );

    CREATE INDEX PORTLET_GROUP_INDX1 ON PORTLET_GROUP(LOCATION);
    CREATE INDEX PORTLET_GROUP_INDX2 ON PORTLET_GROUP(PARENTPORTLETGROUP);
    CREATE INDEX PORTLET_GROUP_INDX3 ON PORTLET_GROUP(GROUPUPDATECD);
    CREATE INDEX PORTLET_GROUP_INDX4 ON PORTLET_GROUP(DELETEFLG);
    CREATE INDEX PORTLET_ENTRY_INDX1 ON PORTLET_ENTRY(PORTLETGROUPNAME);
    CREATE INDEX PORTLET_ENTRY_INDX2 ON PORTLET_ENTRY(ENTRYUPDATECD);
    CREATE INDEX PORTLET_ENTRY_INDX3 ON PORTLET_ENTRY(DELETEFLG);

  2. Repository.xmlファイルに表示属性の構成情報を設定します。
    Repository.xmlファイルの格納ディレクトリは次のとおりです。
    Cosminexus Portal Framework 06-10以前のバージョンからのバージョンアップの場合
    {PROJECT_HOME}¥WEB-INF¥conf
    uCosminexus Portal Framework 06-11以降のバージョンからのバージョンアップの場合
    {PROJECT_HOME}¥conf
     
    Repository.xmlファイルに次の記述を追加します。

    <resource name="PORTLETGROUP-R" type="DB">
       <connection>DB-EM</connection>
       <table name="PORTLET_GROUP" key="portletgroupname"/>
    </resource>
    <resource name="PORTLETGROUP-W" type="DB">
       <connection>DB-EM</connection>
       <table name="PORTLET_GROUP" key="portletgroupname"/>
    </resource>
    <resource name="PORTLETENTRY-R" type="DB">
       <connection>DB-EM</connection>
       <table name="PORTLET_ENTRY" key="entryid"/>
    </resource>
    <resource name="PORTLETENTRY-W" type="DB">
       <connection>DB-EM</connection>
       <table name="PORTLET_ENTRY" key="entryid"/>
    </resource>

    なお,「DB-EM」には共通情報を格納するDBの接続先名称を指定してください。
  3. Repository.xmlファイルに表示属性のマッピング情報を設定します。
    Repository.xmlファイルの<portalCommon>要素内に,次の記述を追加します。

       <Mapping dest="PGPORTLETGROUPNAME_R" src="portletgroupname" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>
       <Mapping dest="PGLOCATION_R" src="location" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>
       <Mapping dest="PGPORTLETGROUPTITLES_R" src="portletgrouptitles" type="bin" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>
       <Mapping dest="PGPORTLETGROUPDESCS_R" src="portletgroupdescs" type="bin" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>
       <Mapping dest="PGPARENTPORTLETGROUP_R" src="parentportletgroup" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>
       <Mapping dest="PGGROUPUPDATECD_R" src="groupupdatecd" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>
       <Mapping dest="PGDELETEFLG_R" src="deleteflg" options="multivalue=multirecord">PORTLETGROUP-R</Mapping>

       <Mapping dest="PGPORTLETGROUPNAME_W" src="portletgroupname" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>
       <Mapping dest="PGLOCATION_W" src="location" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>
       <Mapping dest="PGPORTLETGROUPTITLES_W" src="portletgrouptitles" type="bin" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>
       <Mapping dest="PGPORTLETGROUPDESCS_W" src="portletgroupdescs" type="bin" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>
       <Mapping dest="PGPARENTPORTLETGROUP_W" src="parentportletgroup" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>
       <Mapping dest="PGGROUPUPDATECD_W" src="groupupdatecd" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>
       <Mapping dest="PGDELETEFLG_W" src="deleteflg" options="multivalue=multirecord">PORTLETGROUP-W</Mapping>

       <Mapping dest="PEENTRYID_R" src="entryid" options="multivalue=multirecord">PORTLETENTRY-R</Mapping>
       <Mapping dest="PEENTRYNAME_R" src="entryname" options="multivalue=multirecord">PORTLETENTRY-R</Mapping>
       <Mapping dest="PEPORTLETGROUPNAME_R" src="portletgroupname" options="multivalue=multirecord">PORTLETENTRY-R</Mapping>
       <Mapping dest="PEENTRYUPDATECD_R" src="entryupdatecd" options="multivalue=multirecord">PORTLETENTRY-R</Mapping>
       <Mapping dest="PEDELETEFLG_R" src="deleteflg" options="multivalue=multirecord">PORTLETENTRY-R</Mapping>

       <Mapping dest="PEENTRYID_W" src="entryid" options="multivalue=multirecord">PORTLETENTRY-W</Mapping>
       <Mapping dest="PEENTRYNAME_W" src="entryname" options="multivalue=multirecord">PORTLETENTRY-W</Mapping>
       <Mapping dest="PEPORTLETGROUPNAME_W" src="portletgroupname" options="multivalue=multirecord">PORTLETENTRY-W</Mapping>
       <Mapping dest="PEENTRYUPDATECD_W" src="entryupdatecd" options="multivalue=multirecord">PORTLETENTRY-W</Mapping>
       <Mapping dest="PEDELETEFLG_W" src="deleteflg" options="multivalue=multirecord">PORTLETENTRY-W</Mapping>