ヘッダーをスキップ
Oracle® Fusion Middleware WebCenter Sites開発者ガイド
11gリリース1 (11.1.1.8.0)
E49681-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

15 ベーシック・アセット・タイプの設計

第11章「データ・デザイン: アセット・モデル」で説明されているように、ベーシック・アセット・タイプのデータ・モデルとはアセット・タイプごとに用意された1つのデータベース表を意味します。その表には、該当するタイプの各アセットが格納されています。

AssetMakerユーティリティを使用して、ベーシック・アセット・タイプを新規作成します。これらは通常、開発システム上で作成し、準備が整ったら開発システムから管理システムと配信システムに移行します。

この章には次の項が含まれます。

15.1 AssetMakerユーティリティ

AssetMakerは、新しいベーシック・アセット・タイプを作成する際に使用するユーティリティです。

最初に、ベーシック・アセット・タイプをWebCenter Sitesの外で定義します。それには、AssetMakerのXMLタグを使用して、アセット記述子ファイルというxmlファイルをコーディングします。アセット記述子ファイルでは、新しいアセット・タイプのプロパティが定義されます。プロパティという用語は、データベース表の列とWebCenter Sitesの入力フォームのフィールドの両方を意味します。

次に、ファイルをWebCenter SitesにアップロードしてAssetMakerで2つのアイテムを作成します。1つは、新しいアセット・タイプのデータベース表、もう1つは、新しいタイプのアセットで作業(作成、編集、コピーなど)する際に使用するフォームを生成するWebCenter Sitesエレメントです。図15-1に、データベース表のフォーム(この例のコンテンツ入力フォームなど)との関係、およびフォームがレンダリングされる際に列がフィールドとして認識される方法を示します。

この項の内容は、次のとおりです。

15.1.1 AssetMakerの仕組み

AssetMakerを使用して新しいベーシック・アセット・タイプを作成するには、次の4つの一般的な手順に従います。

  1. アセット記述子ファイルをコーディングします。

    この章では、アセット記述子ファイルとそのコーディングについて説明します。Oracle Fusion Middleware WebCenter Sitesタグ・リファレンスには、すべてのAssetMakerのタグを説明している情報があります。

  2. ファイルをアップロードします。

    アセット記述子ファイルをアップロードする際に、AssetMakerによってAssetType表に行が作成され、その行にアセット記述子ファイルがコピーされます。

  3. 表を作成します。

    「アセット表の作成」ボタンをクリックすると、AssetMakerによって次の操作が実行されます。

    • アセット記述子ファイルを解析します。

    • 該当するタイプのアセットに対応するプライマリ記憶域表を作成します。表の名前は、アセット記述子ファイルで特定されたアセット・タイプの名前と一致します。各列のデータ型もファイルに記述される文で定義されます。

      アセット記述子ファイルで定義された列に加えて、WebCenterが正常に機能するために必要なデフォルトの列がAssetMakerによって作成されます。

    • 新しく作成された表の行をSystemInfo表に追加します。

      すべてのアセット表はオブジェクト表であるため、systable列の値はobjに設定されます。

      すべてのアセット表にURL列が存在するため、defdir列の値は、アセット・タイプを作成する際に、アセット記述子ファイルで指定した値、または「アセット表の作成」フォームの「DefDir」フィールドで指定した値に設定されます。

    • 「「一般」カテゴリの追加」オプションを選択してある場合には、Asset MakerによってCategory表に、新しいアセット・タイプに対応する行が1つ追加され、そのカテゴリにGeneralという名前が付けられます。

  4. エレメントを登録します。

    エレメントを登録すると、AssetMakerによって次の操作が実行されます。

    • OpenMarket/Xcelerate/AssetTypeディレクトリの下にあるElementCatalog表に、新しいアセット・タイプに対応するサブディレクトリを作成します。

    • AssetStubCatalog表のエレメントを、ElementCatalog表の新しいサブディレクトリにコピーします。これらのエレメントは、このタイプのアセットを操作できるようにWebCenter Sitesのフォームをレンダリングし、WebCenter Sitesの機能に処理ロジックを提供します。

    • 検索フォームの個々のフィールドに対する検索機能を実装したSQL文を作成します。これらの文はSystemSQL表に配置されます。

WebCenter Sitesをこのタイプのアセット(作成、編集、調査など)で稼働させる場合、AssetMakerによってAssetType表に配置されているアセット記述子ファイルが解析され、このフォームがアセット・タイプに固有になるよう、WebCenter Sitesにその値が渡されます。アセット記述子ファイル内の文により、フィールドの入力タイプが決まり、フィールドの長さの制限が指定され、フィールドを検索フォームと検索結果フォームに表示するかどうかが決まります。

アセット・タイプを作成して使用できるようにするには、このアセット・タイプを使用する必要のあるサイトでのアセット・タイプの有効化やスタート・メニューのショートカットの作成など、いくつかの構成手順を実行しておく必要があります。

図15-2のフロー・チャートには、AssetMakerの仕組みや、ベーシック・アセット・タイプが作成される際に使用するデータベース表がまとめてあります。

図15-1 アセット・タイプ: データベース表とWebCenter Sitesのフォーム

図15-1の説明が続きます
「図15-1 アセット・タイプ: データベース表とWebCenter Sitesのフォーム」の説明

図15-2 AssetMakerの仕組み

図15-2の説明が続きます
「図15-2 AssetMakerの仕組み」の説明

15.1.2 アセット記述子ファイル

AssetMaker XMLタグを使用して、システムに設計するアセット・タイプを定義するアセット記述子ファイルをコーディングします。

この項の内容は、次のとおりです。

15.1.2.1 アセット記述子ファイルとは

アセット記述子ファイルとは、開発者がAssetMakerのタグを使用してベーシック・アセット・タイプを定義した有効なXML文書のことです。アセット記述子ファイルは、次の2つの事項を行います。

  • データ構造の観点からアセット・タイプを説明します。データベース表名、列名、列のデータ型、WebCenter Sitesフォームのフィールド・サイズを指定します。

  • 指定されたタイプのアセットをユーザーが操作する際に、WebCenter Sitesによって表示されるHTMLフォームの書式設定を行います。HTMLフォームの書式設定とは、フォーム上のフィールドに名前を付け、必要なフォーマットでフィールド(チェック・ボックス、ラジオ・ボタン、ドロップダウン・リストなど)を表示し、フィールドの仕様(テキスト・フィールドに入力できる文字数など)を指定することなどです。

AssetMakerはアセット記述子ファイルを使用して、新しいアセット・タイプのデータベース表を作成します。指定されたタイプのアセットをコンテンツ・プロバイダが操作(作成や編集など)すると、AssetMakerはアセット記述子ファイルを解析し、ファイル内のデータを使用して、WebCenter Sitesが表示するフォームをカスタマイズします。


注意:

参照用に、AssetMakerのサンプル記述子コードがWebCenter Sitesインストール媒体に提供され、「Samples」フォルダに格納されます。同じフォルダには、サンプル記述子ファイルを説明するreadme.txtファイルが格納されています。


15.1.2.2 フォーマットと構文

すべてのアセット記述子ファイルの基本的なフォーマットは、次のとおりです。AssetMakerのそれぞれのタグの右側に、そのタグについての簡単な説明が示されています。

<?xml version="1.0" ?>
<ASSET ...> Names the asset type (storage table) 
<PROPERTIES> Starts the properties specification section
  <PROPERTY ...> Specifies column and field name for the property
    <STORAGE .../> Specifies data type for the column
    <INPUTFORM .../> Specifies field format on New, Edit, Inspect forms
    <SEARCHFORM .../> Specifies field format on Advanced Search form
    <SEARCHRESULTS .../> Specifies which fields are shown in search results
  </PROPERTY>
  <PROPERTY ...>
    <STORAGE .../>
    <INPUTFORM .../>
    <SEARCHFORM .../>
    <SEARCHRESULTS .../>
  </PROPERTY>
  <PROPERTY ...>
...
</PROPERTIES> Ends the properties specification section
</ASSET> Ends the asset descriptor file

次の例は、AssetMakerのタグが使用できるパラメータの一部を示す、アセット記述子ファイルの構文です。

<?xml version="1.0" ?>
<ASSET NAME="assetTypeName" DESCRIPTION=""assetTypeName" ...>
<PROPERTIES>
  <PROPERTY NAME="fieldName1" DESCRIPTION="fieldName1"/>
    <STORAGE TYPE="VARCHAR" LENGTH="36"/>
    <INPUTFORM TYPE="TEXT" DESCRIPTION="fieldName1".../>
    <SEARCHFORM TYPE="TEXT" DESCRIPTION="fieldName1".../>
    <SEARCHRESULTS INCLUDE="TRUE"/>
  </PROPERTY>
  <PROPERTY NAME="fieldName2" DESCRIPTION="fieldName2"/>
    <STORAGE TYPE="INTEGER" LENGTH="4"/>
    <INPUTFORM TYPE="TEXT" DESCRIPTION="fieldName2".../>
    <SEARCHFORM TYPE="TEXT" DESCRIPTION="fieldName2".../>
   <SEARCHRESULTS INCLUDE="TRUE"/>
  </PROPERTY>
...
</PROPERTIES>
</ASSET>

アセット記述子ファイルのタグの概要については、ガイドのこの項に記載されています。タグとそのパラメータの詳細情報は、サンプル・コードとともにOracle Fusion Middleware WebCenter Sitesタグ・リファレンスに記載されています。

15.1.2.3 AssetMakerのタグの概要

  • アセット記述子ファイルは、次のように標準のXMLバージョンのタグで始まります。

    <?xml version="1.0" ?>

  • XMLバージョン・タグの後に続くASSETタグが、アセット・タイプ、つまりWebCenter Sitesデータベースの記憶域表の名前を付けます。また、ASSETタグはアセット・タイプの一部の動作属性や表示属性を設定します。たとえば、ASSETタグは必須フィールドを指定するグラフィック表記を決定したり、アセットをプレビューできるかどうかを決定します。

    開始タグの<ASSET>は常にコードの1行目にあり、終了タグの<\ASSET>は常にアセット記述子ファイルの最後の行にあります。アセット記述子ファイルごとにアセット・タイプは1つのみ作成されるため、各アセット記述子ファイルには一対のASSETタグしか存在しないことに注意してください。

  • PROPERTIESタグは、プロパティの説明が保持されているファイルのセクションをマークします。開始タグの<PROPERTIES>は、常にアセット記述子ファイルの2番目の文になります。各アセット記述子ファイルには一対のPROPERTIESしか存在しません。


    注意:

    PROPERTIESタグは、PROPERTYタグが不要な場合でも、アセット記述子ファイルごとに必要です。


  • PROPERTYタグは、対になったPROPERTIESタグ内にネストされていて、このタイプのアセットの列とフィールドを指定します。各PROPERTYタグは、このプロパティに対してユーザーが入力する値を保持する列のデータベース名、および列の表示名(そのフィールド名)を指定します。この表示名は、このタイプのアセットを使用するユーザーに対してレンダリングされるフォーム上に表示されます。

  • PROPERTYタグの各ペアの中にネストされるタグは、次のとおりです。

    • STORAGE: このプロパティによって構築されている列のデータ型を指定します。STORAGEタグ内のデータ型は、futuretense.iniファイルの「データベース」タブのプロパティが定義するデータ型の1つにマップする必要があります。

    • INPUTFORM: 「新規」、「編集」、「調査」の各フォームのフィールドの名前とフォーマットを指定します。たとえば、そのフィールドは、ドロップダウン・リストですか、チェック・ボックスですか、テキスト・フィールドですか。そのフィールドの入力タイプは、STORAGE文で指定されたように、データベース列のデータ型と互換性がある必要があります。

    • SEARCHFORM: 「詳細検索」フォームに表示される際のフィールド(プロパティ)のフォーマットを指定します。SEARCHFORM文がPROPERTYセクションから削除されると、定義されているフィールドは「詳細検索」フォームに表示されません。

      TYPEパラメータの値がTableまたはDateの場合には、ドロップダウン・リストはアセット・タイプの「詳細検索」フォームには表示されますが、「標準検索」フォームには表示されません。

    • SEARCHRESULTS: 検索実行後に検索結果フォームに表示されるフィールドを指定します。このフィールド値は、INCLUDEパラメータがtrueに設定されている場合にも表示されます。(このタグはオプションです。)

      標準フィールドを変更する場合には、SEARCHRESULTSを名前や説明に対してtrueに設定しないでください。

これらのタグとそのパラメータの詳細は、Oracle Fusion Middleware WebCenter Sitesタグ・リファレンスのAssetMakerのタグに関する項を参照してください。その項には、STORAGE TYPEINPUTFORM TYPEおよびSEARCHFORM TYPEの各パラメータ間の依存性や制限についても記載されています。

15.1.3 アセット・タイプのデータベース表の列

AssetMakerにより新しいアセット・タイプに対してデータベース表が作成されると、アセット記述子ファイルのPROPERTYタグで定義されたすべてのプロパティに対して列が作成され、その基本的な機能についてWebCenter Sitesで必要となるデフォルトの列が作成されます。各アセット・タイプの表内のデフォルトの列のリストについては、第11.2.4.2項「ベーシック・アセット・タイプのデータベース表のデフォルトの列」を参照してください。

この項の内容は、次のとおりです。

15.1.3.1 ソース列: 特殊な場合

すべてのアセット・タイプ表には、source列を入れることも可能です。WebCenter Sitesには、Source表に行を追加する際に使用する「管理」タブに、Source表と「ソース」フォームが用意されています。この機能を使用して、アセットが最初に作成された場所を特定できます。たとえば、Burlington Financialのサンプル・サイトではSourceを使用して記事アセットを提供したワイヤー・フィード・サービスを特定します。

ただし、前述の表に記載された列とは異なり、source列はAssetMakerによるアセット・タイプ表の作成時に自動的に作成されません。ソース列を表に追加してアセット・フォームに表示させるには、そのPROPERTYの説明をアセット記述子ファイルに追加する必要があります。例については、第15.2.3.2項「例: ソース列とフィールドの追加」を参照してください。

15.1.3.2 列の記憶域のタイプ

STORAGE TYPEパラメータは列のデータ型を指定します。このデータ型は、futuretense.iniファイルに格納されたWebCenter Sitesデータベース・プロパティによって定義されています。

次の表は、アセット・タイプの表の列に対応できるデータ型を示しています。

表15-1 STORAGE TYPEパラメータ

タイプ(汎用ODBC/JDBCデータ型) プロパティ

CHAR

cc.char

VARCHAR

cc.varchar

SMALLINT

cc.smallint

INTEGER

cc.integer

BIGINT

cc.bigint

DOUBLE

cc.double

TIMESTAMP

cc.datetime

BLOB

cc.blob

LONGVARCHAR

cc.bigtext


15.1.3.3 フィールドの入力タイプ

INPUT TYPEパラメータは、WebCenter Sitesのフォームにデータが表示される際にフィールドへ入力する方法を指定します。次の表は、すべての入力タイプを示しています。フィールドへの入力タイプは、列のデータ型に対応している必要があることに注意してください。

表15-2 INPUT TYPEパラメータ

入力タイプ 説明

TEXT

単一行のテキスト。

TEXTという名前のHTML入力タイプに対応します。

TEXTAREA

スクロール・バー付きのテキスト・ボックスで、複数行のテキストに対応します。

TEXTAREAという名前のHTML入力タイプに対応します。

大量のテキストをフィールドに入力する可能性がある場合、URL列のコンテンツを表示するテキスト・ボックスを作成すると便利です。そうするには、PROPERTY NAMEに対してurlで始まる文字列を指定し、STORAGE TYPEVARCHARに設定する必要があります。

ユーザーが「保存」をクリックすると、この種類のフィールドに入力されたテキストはこのアセット・タイプのデフォルトの記憶域ディレクトリとして指定されたファイル・ディレクトリに保存されます。デフォルトの記憶域ディレクトリ(defdir)は、アセット記述子ファイル、またはアセット・タイプ作成時のAssetMakerフォームで指定できます。

注意:

  • URLフィールドの無制限サイズは、MAXLENGTHパラメータの値を指定するのではなく、TEXTAREAフィールドで編集して指定できます。

  • PROPERTY NAMEに対してurlという文字で始まる文字列を指定する場合、接尾辞として_type_size_folderおよび_fileを使用しないでください。

UPLOAD

ファイル名(URL)を入力して「参照」ボタンを表示するフィールドです。それにより、ファイルへのパスとファイル名を入力するか参照して選択できるようになります。

フィールドがアップロード・フィールドであることを指定した場合、PROPERTY NAMEに対してurlで始まる文字列を設定し、STORAGE TYPE(プロパティのデータ型)をVARCHARに設定します。

アップロード・フィールドにBLOB記憶域タイプを使用することも可能です。この場合、PROPERTY NAMEの文字列をurlで開始する必要はありません。

ユーザーが「保存」をクリックすると、WebCenter Sitesでは選択したファイルがアップロードされ、このアセット・タイプのデフォルト記憶域ディレクトリとして指定されたファイル・ディレクトリに保存されます。デフォルトの記憶域ディレクトリ(defdir)は、アセット記述子ファイル、またはファイルのアップロード時のAssetMakerフォームで指定できます。

注意:

  • アップロード・フィールドで選択されたファイルのサイズは最大30 MBです。

  • PROPERTY NAMEに対してurlという文字で始まる文字列を指定する場合、接尾辞として_type_size_folderおよび_fileを使用しないでください。

SELECT

選択可能なオプションのドロップダウン・リストが表示されるフィールドです。

リストに表示されるオプションを指定することも、オプションをデータベース(または外部の表)から選択して動的に表示するように問合せを指定することも可能です。

HTML入力タイプSELECTに対応します。

CHECKBOX

チェック・ボックスのフィールドです。

チェック・ボックスのオプション名を指定することも、オプション名をデータベース(または外部の表)から選択して動的に表示するように問合せを指定することも可能です。この入力タイプにより、複数のオプションを選択できるようになります。

HTML入力タイプCHECKBOXに対応します。

RADIO

ラジオ・ボタンの制御です。

ラジオ・ボタンのオプション名を指定することも、オプション名をデータベース(または外部の表)から選択して動的に表示するように問合せを指定することも可能です。この入力タイプにより、オプションを1つだけ選択できるようになります。

HTML入力タイプRADIOに対応します。

CKEDITOR

CKEditorテキスト・エディタを使用してコンテンツを編集するフィールドです。

CKEditorフィールドを指定するには、フィールドをURLフィールドにすることをお薦めします。つまり、「url」接頭辞でPROPERTY NAMEに対する文字列を設定し、STORAGE TYPE(プロパティのデータ型)をVARCHARに設定します。

「url」接頭辞で始まるPROPERTY NAMEに文字列を指定する場合には、接尾辞として_type、_size、_folder、_fileは使用しないでください。

ELEMENT

ContentFormContentDetailsSearchFormいずれかのフォームにフィールドを表示する際に作成するエレメントをコールします。カスタム・エレメントは、次の場所のいずれかにあります。

  • ContentFormフォーム上のフィールドの場合:

OpenMarket/Xcelerate/AssetType/myAssetType/ ContentForm/fieldname

  • ContentDetailsフォーム上のフィールドの場合:

OpenMarket/Xcelerate/AssetType/myAssetType/ContentDetails/fieldname

  • SearchFormフォーム上のフィールドの場合:

OpenMarket/Xcelerate/AssetType/myAssetType/SearchForm/fieldname

myAssetTypeはカスタム・フィールドを作成しているアセット・タイプであり、fieldnameはカスタム・フィールドの名前です。

ELEMENTフィールドには、BLOBなど、どのような記憶域のタイプでも指定できます。


15.1.3.4 標準アセット・フィールドのデータ型

WebCenter Sitesの標準アセット・フィールドの外観をカスタマイズできます。その他の変更内容はすべて下記のとおりフィールドのタイプに対応しています。

  • すべての標準フィールド。表示名を変更できます。

  • システム・フィールドではない標準フィールド。次の例外を除いて、データ型を変更しないでください。例外: データ型がVARCHARの場合には、その長さのみを変更できます。

  • システム・フィールド。データ型(VARCHARタイプのフィールドの長さも含めて)を変更しないでください。

    次の表は、標準フィールドのデータ型を示しています(フィールドがシステム・フィールドであるかどうかも示しています)。

表15-3 標準アセット・フィールドのデータ型

標準フィールド システム・フィールド データ型

ID

はい

NOT NULL NUMBER(38)

NAME

なし

NOT NULL VARCHAR(64)

DESCRIPTION

なし

VARCHAR(128)

TEMPLATE

はい

VARCHAR(64)

SUBTYPE

なし

VARCHAR(24)

FILENAME

なし

VARCHAR(64)

PATH

なし

VARCHAR(255)

STATUS

はい

NOT NULL VARCHAR(2)

EXTERNALDOCTYPE

はい

VARCHAR(64)

URLEXTERNALDOCXML

はい

VARCHAR(255)

URLEXTERNALDOC

はい

VARCHAR2(255)

CREATEDBY

はい

NOT NULL VARCHAR(64)

UPDATEDBY

はい

NOT NULL VARCHAR(64)

CREATEDDATE

はい

NOT NULL DATE

UPDATEDDATE

はい

NOT NULL DATE

STARTDATE

なし

DATE

ENDDATE

なし

DATE


15.1.4 アセット・タイプに対応したエレメントとSQL文

アセット記述子ファイルをアップロードした後、エレメントを「登録」します。エレメントを登録すると、AssetMakerによりAssetStubElementCatalog表のエレメントがElementCatalog表内のこのアセット・タイプに対応するディレクトリにコピーされます。

さらに、このタイプのアセットに対する「簡易検索」フォームと「詳細検索」フォームに、WebCenter Sites検索を実装する複数のSQL文がコピーされます。

必要に応じて、SQL文、アセット・タイプ固有のエレメント、また場合によってはAssetStubElementCatalog表のエレメントをカスタマイズできます。


注意:

いかなる状況においても、その他のWebCenter Sitesエレメントを変更しないでください。


エレメントのカスタマイズの詳細は、第15.2.9項「手順7: (オプション)アセット・タイプのエレメントのカスタマイズ」を参照してください。

この項の内容は、次のとおりです。

15.1.4.1 エレメント

AssetMakerによって、次のネーミング規則に従って新しいアセット・タイプのエレメントがElementCatalog表に格納されます。

OpenMarket/Xcelerate/AssetType/YourNewAssetType

たとえば、サンプル・アセット・タイプImageFileのエレメントは、次の場所にあります。

OpenMarket/Xcelerate/AssetType/ImageFile

次の表にAssetMakerによって各アセット・タイプについてコピーされたエレメントを示します。

表15-4 AssetMakerのエレメント

エレメント 説明

ContentForm

このタイプのアセットに対する「新規」フォームと「編集」フォームをレンダリングします。

この機能が起動されると、AssetMakerによってアセット記述子ファイルでINPUTFORM文を使用してこれらのフォームが書式設定されます。

ContentDetails

このタイプのアセットに対する「調査」フォームを書式設定します。

この機能が呼び出されると、アセット記述子ファイルでINPUTFORM文を使用してこれらのフォームがカスタマイズされます。

SimpleSearch

このタイプのアセットに対する「簡易検索」フォームをレンダリングします。

この機能が呼び出されると、AssetMakerでは、アセット記述子ファイル内のSEARCHFORM文を使用して、これらのフォームを書式設定します。

SearchForm

このタイプのアセットに対する「詳細検索」フォームを書式設定します。

この機能が呼び出されると、AssetMakerでは、アセット記述子ファイル内のSEARCHFORM文を使用して、これらのフォームを書式設定します。

AppendSelectDetails

「詳細検索」フォームの個々のフィールドにSQL問合せを作成します。

「詳細検索」フォームがレンダリングされると、アセット記述子ファイルでSEARCHFORM文を使用してそのフォームがカスタマイズされます。

AppendSelectDetailsSE

システムで外部の検索エンジンが使用されると、「詳細検索」フォームの個々のフィールドでSQL文が作成されます。

この機能が呼び出されると、アセット記述子ファイルでSEARCHFORM文を使用してSQL問合せが作成されます。

IndexAdd

IndexAddエレメントとIndexReplaceエレメントは、検索エンジンの使用時に検索エンジンで索引付されるフィールド(列)を設置します。デフォルトでは、標準フィールドのみが索引付されます。その他のフィールドを索引付するには、これらのフォームをカスタマイズする必要があります。詳細は、第15.2.9項「手順7: (オプション)アセット・タイプのエレメントのカスタマイズ」を参照してください。

IndexReplace

IndexAddの説明を参照してください。

Tile

「検索結果」ページを書式設定します。このページには、このタイプのアセットに対して、検索基準に適合するアセットが示されています。

このページがレンダリングされると、アセット記述子ファイルでSEARCHRESULTS文を使用してこの結果が表示されます。

LoadTree

このタイプのアセットが、「サイト・プラン」タブ以外の、ツリーの任意のタブに表示される際の外観を決定します。

LoadSiteTree

このタイプのアセットが「サイト・プラン」タブに表示される際の外観を決定します。

PreUpdate

データベースに書き込む機能が完了する前にコールされます。つまり、アセットが保存される前の作成、編集、削除またはXMLPostの機能が稼働中に、このエレメントがコールされます。

このエレメントは、アセット記述子ファイルからは何も入力しません。ただし、直接カスタマイズできます。

PostUpdate

データベースへの書込みが終了した後でコールされます。つまり、XMLPostでアセットが作成、編集、削除またはインポートされた後、このエレメントがコールされます。

このエレメントをカスタマイズできます。


15.1.4.2 SQL文

AssetMakerによって、次のネーミング規則に従ってSQL文がSystemSQL表に格納されます。

OpenMarket/Xcelerate/AssetType/YourNewAssetType

たとえば、サンプル・アセット・タイプImageFileのエレメントは、次の場所にあります。

OpenMarket/Xcelerate/ImageFile

次の表は、AssetMakerによって作成されるSQLエレメントを示しています。

表15-5 SQLのエレメント

説明

SelectSummary

このタイプのアセットに対する「簡易検索」フォームと「詳細検索」フォームで使用される問合せを定義するSQL文です。

SelectSummarySE

使用されません。


15.2 ベーシック・アセット・タイプの作成

新しいアセット・タイプの作成にかかる時間の長さは、アセット・タイプの複雑さに応じて幅広い範囲に及びます。

単純なアセット・タイプでは、1つの単純なアセット記述子ファイルをコーディングしてアップロードする必要があります。より複雑なアセット・タイプでは、アセット・タイプに対して作成されたエレメント内のコードを変更するか、ドロップダウン・リストに表示する情報を保持するためにデータベース表を追加する必要があります。

この項の内容は、次のとおりです。

15.2.1 新しいアセット・タイプの作成と構成の概要

新しいアセット・タイプの作成と構成のプロセスに関する概要は、次のとおりです。この章では、下記の場合を除き、各手順を説明してあります。

  1. アセット記述子ファイルをコーディングします。第15.2.3項「手順1: アセット記述子ファイルのコーディング」を参照してください。

  2. WebCenter Sitesの「管理」タブでAssetMakerを使用して、アセット記述子ファイルをアップロードします。第15.2.4項「手順2: アセット記述子ファイルのWebCenter Sitesへのアップロード」を参照してください。

  3. データベース表を作成し、アセット・タイプのエレメントをAssetStubElementCatalog表からElementCatalog表の適切なディレクトリにコピーして登録します。第15.2.5項「手順3: アセット表の作成」を参照してください。

  4. アセット・タイプを構成します。第15.2.6項「手順4: アセット・タイプの構成」を参照してください。

  5. アセット・タイプをアセットの開発に使用しているサイトで有効にし、「スタート・メニュー」のショートカットを作成してアセット・タイプを使用できるようにします。第15.2.7項「手順5: サイトのアセット・タイプの有効化」を参照してください。

  6. 「新規」「編集」「調査」「検索」および「検索結果」の各フォームを調べます。必要に応じて、アセット記述子ファイルを微調整してアセット・タイプのエレメントを再登録します。第15.2.8項「手順6: アセット記述子ファイルの微調整」を参照してください。

  7. (オプション)必要に応じて、アセット・タイプのエレメントをカスタマイズします。第15.2.9項「手順7: (オプション)アセット・タイプのエレメントのカスタマイズ」を参照してください。

  8. (オプション)新しいアセット・タイプに「サブタイプ」エントリを追加します。第15.2.10項「手順8: (オプション)サブタイプの構成」を参照してください。

  9. (オプション)新しいアセット・タイプにアセットの「アソシエーション」フィールドを作成します。第15.2.11項「手順9: (オプション)アソシエーション・フィールドの構成」を参照してください。

  10. (オプション)新しいアセット・タイプに「カテゴリ」エントリを追加します。第15.2.12項「手順10: (オプション)カテゴリの構成」を参照してください。

  11. (オプション)新しいアセット・タイプに「ソース」エントリを追加します。第15.2.13項「手順11: (オプション)ソースの構成」を参照してください。

  12. (オプション)新しいアセット・タイプに「MIMEタイプ」を追加します。第15.2.14項「手順12: (条件付き)MIMEタイプの追加」を参照してください。

  13. (オプション) WebCenter Sitesデータベース検索ユーティリティではなく検索エンジンを使用して検索フォームの背後にある論理を実行し、新しいアセット・タイプにそれを使用する場合、検索エレメントを編集して索引付された検索機能を有効にします。第15.2.15項「手順13: (オプション)索引付き検索を有効にするための検索エレメントの編集」を参照してください。

  14. Contributorインタフェースのナビゲーション・ツリー(「サイト・ツリー」「コンテンツ・ツリー」および「ワーク」ツリー)でアセット・タイプを表すアイコンを作成して割り当てます。第15.2.16項「手順14: アセット・タイプのアイコンの作成と割当て(Contributorインタフェースのみ)」を参照してください。

  15. このタイプのアセットのテンプレートをコーディングします。第15.2.17項「手順15: アセット・タイプのテンプレートのコーディング」および第28章「テンプレートおよびCSElementのエレメントのコーディング」を参照してください。

  16. アセット・タイプを管理や配信など他のシステムに移動します。第15.2.18項「手順16: 他のシステムへのアセット・タイプの移動」を参照してください。これにより、管理者は、ワークフローの設定、スタート・メニューの項目の作成など、アセット・タイプ作成の最後の手順を完了できます。

15.2.2 始める前に

アセット記述子ファイルのコーディングを開始する前に、設計プランを立て、開発システムを設定する必要があります。詳細は、次の各項を参照してください。

この項の内容は、次のとおりです。

15.2.2.1 アセット・タイプの設計の立案

必ずアセット・タイプを紙上で設計してから、アセット記述子ファイルのコーディングを開始してください。下記のような詳細を考慮します。

  • 必要なフィールドは何か。

    通常、情報を便利な単位にまとめて、使用するフィールド数を最小限にします。その単位を決定する際には、オンライン・サイトに表示する予定の情報と、データを入力するコンテンツ・プロバイダのデータ入力の必要性の両方を考慮します。

  • 各フィールドに対する適切なデータ型は何か。

  • オプションのあるフィールドの場合、どのようにオプションを表示するか。アセット記述子ファイルでコーディングされた静的リストにするか、または有効なオプションを記載した参照表にするか。

  • どのWebCenter Sitesの機能を使用して、このタイプのアセットを編成したりカテゴリ分けするか。(ソース、カテゴリ、アセットのアソシエーションなど。)それぞれについて、その名前、および管理システムとオンライン・サイトの設計の両方で使用する方法を決定します。

  • サイト設計の実装にはこのタイプのアセットに、パブリッシュ先の公開ターゲットに基づいて異なるデフォルトのテンプレートを使用する必要があるのか。必要な場合には、「サブタイプ」機能を使用する必要があります。このタイプのアセットに必要なサブタイプの名前を決定します。

15.2.2.2 開発システムの設定

また、開始する前に必ず開発システムを設定してください。このような準備手順の詳細は、『Oracle Fusion Middleware WebCenter Sites管理者ガイド』を参照してください。

  • 適切なサイトを作成します。

  • 管理者権限を持つ管理者専用のユーザー名を作成し、開発システムのすべてのサイトでそのユーザー名を有効にします。(テーブル・エディタACLがユーザー名に割り当てられていることを確認してください。確認できないと、新しいアセット・タイプの作成はできなくなります。)


    注意:

    管理者権限がないと、「管理」タブにアクセスできず、この章に記載した手順を実行できません。便宜上、ユーザー名に「デザイナ」ロールと「GeneralAdmin」ロールを割り当てます。そうすることで、すべてのタブと、サンプル・サイト内のアセットへのすべての既存の「スタート・メニュー」ショートカットにアクセスできるようになります。


15.2.3 手順1: アセット記述子ファイルのコーディング

第15.1.2項「アセット記述子ファイル」で説明されているとおり、次に示すのがアセット記述子ファイルの基本的な書式です。

<?xml version="1.0" ?>
<ASSET NAME="assetName"...>
<PROPERTIES>
  <PROPERTY.../>
    <STORAGE.../>
    <INPUTFORM.../>
    <SEARCHFORM.../>
    <SEARCHRESULTS.../>
  </PROPERTY>
  <PROPERTY... />
    <STORAGE.../>
    <INPUTFORM.../>
    <SEARCHFORM.../>
    <SEARCHRESULTS.../>
  </PROPERTY>
</PROPERTIES>
</ASSET>

アセット記述子ファイルをコーディングするには、Oracle Fusion Middleware WebCenter Sitesタグ・リファレンスのAssetMakerのタグに関する項を参照し、その説明に従ってタグを使用してファイルをコーディングします。ファイルをコーディングするにはOracle WebCenter Sites ExplorerのネイティブXMLエディタを使用するか、その他のXMLエディタを使用します。

標準アセット・フィールドをアセット記述子ファイルに追加すると、標準アセット・フィールドの外観をカスタマイズできます。フィールドの記憶域タイプの変更は、条件付きとなります。たとえば、フィールドがシステム・フィールドの場合、その記憶域タイプは変更できません。標準フィールドのリスト、それらの記憶域タイプ、および記憶域タイプに許可された変更の詳細は、第15.1.3.4項「標準アセット・フィールドのデータ型」を参照してください。

この項では、サンプルのアセット記述子ファイルとコーディング固有のプロパティの例を示します。

この項の内容は、次のとおりです。

15.2.3.1 サンプルのアセット記述子ファイル: ImageFile.xml

Burlington Financialのサンプル・サイトをシステムにインストールすると、AssetType表にImageFile.xmlアセット記述子ファイルが表示されます。Oracle WebCenter Sites Explorerを起動してファイルを開くか、次のコードで調べます。

<!-- this is the description of an asset -->
<ASSET NAME="ImageFile" DESCRIPTION="ImageFile"
 MARKERIMAGE="/Xcelerate/data/help16.gif" PROCESSOR="4.0"
 DEFDIR="c:\FutureTense\Storage\ImageFile">

<PROPERTIES>

  <PROPERTY NAME="source" DESCRIPTION="Source">
    <STORAGE TYPE="VARCHAR" LENGTH="24"/>
    <INPUTFORM DESCRIPTION="Source" TYPE="SELECT" TABLENAME="Source"
     OPTIONDESCKEY="description" OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/>
    <SEARCHFORM DESCRIPTION="Source" TYPE="SELECT" TABLENAME="Source"
     OPTIONDESCKEY="description" OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/>
  </PROPERTY>

  <PROPERTY NAME="urlpicture" DESCRIPTION="Image File">
    <STORAGE TYPE="VARCHAR" LENGTH="255"/>
    <INPUTFORM TYPE="UPLOAD" WIDTH="36" REQUIRED="NO" LINKTEXT="Image"/>
  </PROPERTY>

  <PROPERTY NAME="urlthumbnail" DESCRIPTION="Thumbnail File">
    <STORAGE TYPE="VARCHAR" LENGTH="255"/>
    <INPUTFORM TYPE="UPLOAD" WIDTH="36" REQUIRED="NO" LINKTEXT="Image"/>
  </PROPERTY>

  <PROPERTY NAME="mimetype" DESCRIPTION="Mimetype">
    <STORAGE TYPE="VARCHAR" LENGTH="36"/>
    <INPUTFORM TYPE="SELECT" SOURCETYPE="TABLE" TABLENAME="MimeType"
     OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype"
     SQL="SELECT mimetype, description 
     FROM MimeType 
     WHERE keyword = 'image' 
     AND isdefault = 'y'" 
     INSTRUCTION="Add more options to mimetype table with isdefault=y 
     and keyword=image"/>
    <SEARCHFORM DESCRIPTION="MimeType" TYPE="SELECT" SOURCETYPE="TABLE"
     TABLENAME="MimeType" OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype"
     SQL="SELECT mimetype, description 
     FROM MimeType 
     WHERE keyword = 'image' 
     AND isdefault = 'y'"/>
  </PROPERTY>

  <PROPERTY NAME="width" DESCRIPTION="Width">
    <STORAGE TYPE="INTEGER" LENGTH="4"/>
    <INPUTFORM TYPE="TEXT" WIDTH="4" MAXLENGTH="4" REQUIRED="NO" DEFAULT=""/>
    <SEARCHFORM DESCRIPTION="Width is" TYPE="TEXT" WIDTH="4" 
     MAXLENGTH="4" VERB="="/>
  </PROPERTY>

  <PROPERTY NAME="height" DESCRIPTION="Height">
    <STORAGE TYPE="INTEGER" LENGTH="4"/>
    <INPUTFORM TYPE="TEXT" WIDTH="4" MAXLENGTH="4" REQUIRED="NO" DEFAULT=""/>
    <SEARCHFORM DESCRIPTION="Height is" TYPE="TEXT" WIDTH="4" 
     MAXLENGTH="4" VERB="="/>
  </PROPERTY>

  <PROPERTY NAME="align" DESCRIPTION="Alignment">
    <STORAGE TYPE="VARCHAR" LENGTH="8"/>
    <INPUTFORM TYPE="SELECT" SOURCETYPE="STRING" 
     OPTIONVALUES="Left,Center,Right" OPTIONDESCRIPTIONS="Left,Center,Right"/>
    <SEARCHFORM DESCRIPTION="Alignment" TYPE="SELECT" SOURCETYPE="STRING"
     OPTIONVALUES="Left,Center,Right" OPTIONDESCRIPTIONS="Left,Center,Right"/>
  </PROPERTY>

  <PROPERTY NAME="artist" DESCRIPTION="Artist">
    <STORAGE TYPE="VARCHAR" LENGTH="64"/>
    <INPUTFORM TYPE="TEXT" WIDTH="36" MAXLENGTH="36" REQUIRED="NO" DEFAULT=""/>
    <SEARCHFORM DESCRIPTION="Artist contains" TYPE="TEXT" 
     WIDTH="36" MAXLENGTH="64"/>
  </PROPERTY>

  <PROPERTY NAME="alttext" DESCRIPTION="Alt Text">
    <STORAGE TYPE="VARCHAR" LENGTH="255"/>
    <INPUTFORM TYPE="TEXT" WIDTH="48" MAXLENGTH="255" REQUIRED="NO" DEFAULT=""/>
    <SEARCHFORM DESCRIPTION="Alt Text contains" TYPE="TEXT" 
     WIDTH="48" MAXLENGTH="255"/>
  </PROPERTY>

  <PROPERTY NAME="keywords" DESCRIPTION="Keywords">
    <STORAGE TYPE="VARCHAR" LENGTH="128"/>
    <INPUTFORM TYPE="TEXT" WIDTH="48" MAXLENGTH="128" REQUIRED="NO" DEFAULT=""/>
    <SEARCHFORM DESCRIPTION="Keywords contain" TYPE="TEXT" 
     WIDTH="48" MAXLENGTH="128"/>
  </PROPERTY>

  <PROPERTY NAME="imagedate" DESCRIPTION="Image date">
    <STORAGE TYPE="TIMESTAMP" LENGTH="8"/>
    <INPUTFORM TYPE="ELEMENT" WIDTH="24" MAXLENGTH="48" REQUIRED="NO" 
     DEFAULT="" INSTRUCTION="Format: yyyy-mm-dd hh:mm"/>
    <SEARCHFORM DESCRIPTION="Image date" TYPE="ELEMENT" 
     WIDTH="48" MAXLENGTH="128"/>
  </PROPERTY>

</PROPERTIES>
</ASSET>

このアセット記述子ファイルを調べて、システムにBurlington Financialがインストールされている場合には、WebCenter Sitesを起動してBurlington Financialサイトを選択します。WebCenter Sitesフォームでimagefileアセット・タイプを調べ、アセット記述子ファイルと比較します。

ImageFileアセット記述子ファイルについて、次の事項に注意してください。

  • ASSETタグにより、DEFDIRパラメータに対応する値が導き出されます。すべてのアセット表にはデフォルトで最低2つのURL列(アップロード・フィールド)があるため、どの新しいアセット・タイプについてもデフォルトの記憶域ディレクトリ(defdir)の値を設定する必要があります。(imagefileアセット・タイプには2つの追加URL列、urlpictureurlthumbnailがあります。)

    defdir値の設定には、ASSETタグのDEFDIRパラメータを使用するか、AssetMakerの「アセット表の作成」フォームの「defdir」フィールドを使用します。


    注意:

    「アセット表の作成」フォームで設定されたdefdirは、アセット記述子ファイルで設定されているdefdirをオーバーライドします。


    URL列の詳細は、第12.2.3項「WebCenter SitesのURLフィールドを使用した間接的なデータ格納」を参照してください。

  • AssetMakerによってアセット・タイプのデータベース表に作成されたデフォルトの列のいずれにも、PROPERTY文はありません。それらの列は、第11.2.4.2項「ベーシック・アセット・タイプのデータベース表のデフォルトの列」に一覧表示されています。

  • SEARCHFORM文を備えたすべてのプロパティに、一致するSEARCHRESULTS文が備わっているわけではありません。つまり、「詳細検索」フォームにフィールドを設置する場合、そのフィールドからのデータを「検索結果」フォームに表示する必要はないということです。

15.2.3.2 例: ソース列とフィールドの追加

WebCenter Sitesの「管理」タブにはソース機能が備わっていますが、デフォルトでソース列は作成されません。ソース機能を新しいアセット・タイプで使用するには、ソース列とフィールドにプロパティ文を追加する必要があります。

次のことに注意してください。

  • STORAGE TYPEVARCHARに、LENGTH24に設定する必要があります。

  • INPUTFORM SOURCETYPETABLEに、TABLENAMESourceに設定する必要があります。

例:

<PROPERTY NAME="source" DESCRIPTION="Source">
  <STORAGE TYPE="VARCHAR" LENGTH="24"/>
  <INPUTFORM TYPE="SELECT" TABLENAME="Source" 
   OPTIONDESCKEY="description" 
   OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/>
  <SEARCHFORM DESCRIPTION="Source" TYPE="SELECT"
   TABLENAME="Source" OPTIONDESCKEY="description"
   OPTIONVALUEKEY="source" SOURCETYPE="TABLE"/>
</PROPERTY>

15.2.3.3 アップロードの例1: 標準アップロード・フィールド

「参照」ボタンを備えたアップロード・フィールドを作成するには、PROPERTY文を次のようにコーディングします。

  1. PROPERTY NAMEに設定する文字列では、先頭の文字をurlにする必要があります。

  2. STORAGE TYPEの値をVARCHARに設定する必要があります。

  3. INPUT TYPEの値はUPLOADに設定する必要があります。

ImageFileアセット記述子ファイルのアップロード・フィールドのコード・スニペットは、次のとおりです。

<PROPERTY NAME="urlpicture" DESCRIPTION="Image File">
  <STORAGE TYPE="VARCHAR" LENGTH="255"/>
  <INPUTFORM TYPE="UPLOAD" WIDTH="36" REQUIRED="NO" LINKTEXT="Image"/>
</PROPERTY>

注意:

アップロード・フィールドで選択できるファイルのサイズは、30 MBに制限されています。


15.2.3.4 アップロードの例2: テキスト・ボックス・フィールド

(ファイルの選択に使用する「参照」ボタンでなく)テキストを入力できるテキスト・ボックスを使用してアップロード・フィールドを作成するには、PROPERTY文を次のようにコーディングします。

  1. PROPERTY NAMEに設定する文字列では、先頭の文字をurlにする必要があります。

  2. STORAGE TYPEの値をVARCHARに設定する必要があります。

  3. INPUT TYPEの値はTEXTAREAに設定する必要があります。

次のコード・スニペットでは、url列のテキスト・エリア・フィールドが作成されます。

<PROPERTY NAME="urlbody" DESCRIPTION="Article Body">
  <STORAGE TYPE="VARCHAR" LENGTH="256"/>
  <INPUTFORM TYPE="TEXTAREA" COLS="48" ROWS="25" REQUIRED="YES"/>
</PROPERTY>

15.2.3.5 アップロードの例2: テキスト・ボックス・フィールド

(ファイルの選択に使用する「参照」ボタンでなく)テキストを入力できるテキスト・ボックスを使用してアップロード・フィールドを作成するには、PROPERTY文を次のようにコーディングします。

  1. PROPERTY NAMEに設定する文字列では、先頭の文字をurlにする必要があります。

  2. STORAGE TYPEの値をVARCHARに設定する必要があります。

  3. INPUT TYPEの値はTEXTAREAに設定する必要があります。

次のコード・スニペットでは、url列のテキスト・エリア・フィールドが作成されます。

<PROPERTY NAME="urlbody" DESCRIPTION="Article Body">
  <STORAGE TYPE="VARCHAR" LENGTH="256"/>
  <INPUTFORM TYPE="TEXTAREA" COLS="48" ROWS="25" REQUIRED="YES"/>
</PROPERTY>

15.2.3.6 アップロードの例3: CKEditorのフィールド

CKEditorのフィールドを作成するには、次のようにプロパティ文をコーディングします。

  1. PROPERTY NAMEでは、先頭の文字をurlにする必要があります。つまり、フィールドでURL列を使用する必要があります。そうしないと、フィールドが小さくなりすぎる恐れがあります。

  2. STORAGE TYPEの値をVARCHARに設定する必要があります。

  3. INPUT TYPEの値はCKEDITORに設定する必要があります。

<PROPERTY NAME="urlbody" DESCRIPTION="Body">
  <STORAGE TYPE="VARCHAR" LENGTH="50"/>
  <INPUTFORM TYPE="CKEDITOR" WIDTH="300" HEIGHT="300" REQUIRED="YES" 
   INSTRUCTION="Be concise! No more than 3 paragraphs."/>
</PROPERTY>

タイプVARCHARの長さは、データが格納されているファイルへのパスの長さです。これは、通常100未満です。長さの値が大きすぎる場合(「5000」など)、データベースはデータをCLOBとして格納するため、データ記憶域に関する問題の原因になります。また、データがファイルではなくデータベースに格納されるため、URLフィールドが破損する恐れがあります。

15.2.3.7 アップロードの例4: バイナリ・ファイルをアップロードするフィールド

次のコードは、BLOBをアップロードできるフィールドを作成します。MIMETYPEを指定しないと、「編集」フォームおよび「調査」フォームからBLOBを表示させることができない可能性があります。

<PROPERTY NAME="type_binary" DESCRIPTION="Binary">
  <STORAGE TYPE="BINARY"/>
  <INPUTFORM TYPE="UPLOAD" 
   WIDTH="24" MAXLENGTH="64"
   MIMETYPE="application/msword" 
   LINKTEXT="Edit with Microsoft Word" 
   INSTRUCTION="maps to cc.blob"/>
</PROPERTY>

15.2.3.8 例: パス、ファイル名、開始日および終了日の有効化

パス、ファイル名、開始日および終了日の列は特殊な例です。

AssetMakerにより、PROPERTY文を使用しないでパス、ファイル名、開始日および終了日の列が作成されます。ただし、アセット記述子ファイルにそれらの列に対するPROPERTY文を記述しないと、列は存在してもそれらのフィールドはアセット・フォームに表示されません。

これらの列について、次の事項に注意してください。

  • 「パス」では、STORAGE TYPEVARCHARに、LENGTH255に設定する必要があります。

  • 「ファイル名」では、STORAGE TYPEVARCHARに、LENGTH128に設定する必要があります。

  • 「開始日」では、STORAGE TYPETIMESTAMPに設定する必要があります。

  • 「終了日」では、STORAGE TYPETIMESTAMPに設定する必要があります。


    注意:

    これらの標準列のいずれかをアセット記述子ファイルに追加しても、記憶域タイプがこのリストに指定されているものと一致しない場合には、AssetMakerでアセット・タイプを作成できません。


例:

<PROPERTY NAME="path" DESCRIPTION="Path">
  <STORAGE TYPE="VARCHAR" LENGTH="255"/>
  <INPUTFORM DESCRIPTION="Path" TYPE="TEXT" LENGTH="255"/>
</PROPERTY>

15.2.3.9 例: 問合せを使用したドロップダウン・リストのオプションの取得

プロパティのINPUTFORM TYPESELECTの場合、WebCenter Sitesに選択フィールドのドロップダウン・リストを移入できます。ドロップダウン・リストには、OPTIONDESCRIPTIONSパラメータで設定した項目の静的リスト、またはWebCenter Sitesでデータベース表から動的に取得した項目のリストを使用できます。

ドロップダウン・リストを表から動的に移入する選択フィールドの別の例は、imagefileフォームのMimetypeフィールドです。このフィールドでは、オプションに対するMimeType表を問い合せます。コードは次のとおりです。

<PROPERTY NAME="mimetype" DESCRIPTION="Mimetype">

  <STORAGE TYPE="VARCHAR" LENGTH="36"/>
  <INPUTFORM TYPE="SELECT" SOURCETYPE="TABLE"
   TABLENAME="mimetype" OPTIONDESCKEY="description" 
   OPTIONVALUEKEY="mimetype" SQL="SELECT mimetype, description
   FROM mimetype 
   WHERE keyword = 'image' 
   AND isdefault = 'y'" 
   INSTRUCTION="Add more options to mimetype table 
   with isdefault=y and keyword=image"/>

  <SEARCHFORM DESCRIPTION="Mimetype" TYPE="SELECT"
   SOURCETYPE="TABLE" TABLENAME="mimetype"
   OPTIONDESCKEY="description" OPTIONVALUEKEY="mimetype"
   SQL="SELECT mimetype, description 
   FROM mimetype 
   WHERE keyword ='image' 
   AND isdefault = 'y'"/>

</PROPERTY>

この例は、データベース表からの項目を選択するだけではなく、追加のSQL問合せによってデータベース表から返される項目をさらに制限するフィールドも示しています。

15.2.3.10 例: 問合せを使用したラジオ・ボタンのラベルの取得

プロパティのINPUTFORM TYPERADIOの場合、OPTIONDESCRIPTIONSパラメータで設定した項目の静的リスト、またはWebCenter Sitesがデータベース表から動的に取得した項目のリストを使用して各ラジオ・ボタンにラベルを入力できます。

次のサンプル・コードは、CreditCard表から取得したラベルでラジオ・ボタンを作成します。

<PROPERTY NAME="sqlrbcc" DESCRIPTION="SQL RB Credit Card">
  <STORAGE TYPE="VARCHAR" LENGTH="4"/>
  <INPUTFORM TYPE="RADIO" SOURCETYPE="TABLE" TABLENAME="CreditCard"
   RBVALUEKEY="ccvalue" RBDESCKEY="ccdescription" />
  <SEARCHFORM TYPE="SELECT" DESCRIPTION="Credit Card:" SOURCETYPE="TABLE"
   TABLENAME="CreditCard" OPTIONVALUEKEY="ccvalue" OPTIONDESCKEY="ccdescription"
   SQL="SELECT ccvalue,ccdescription 
   FROM CreditCard ORDER BY ccdescription"/>
</PROPERTY>

15.2.3.11 例: ELEMENT入力タイプを使用したフィールドの作成

アセット・フォームのフィールドを変更するには、ELEMENT入力タイプを使用して、必要に応じてフィールドを表示するカスタム・コードをコールします。この方法を使用すると、新しいアセット・フィールドを作成したり、標準アセット・フィールドの外観を変更できます。ただし、標準アセット・フィールドの記憶域タイプは変更できません。

ELEMENTフィールドには、BLOBなど、どのような記憶域のタイプでも指定できます。

フィールドの入力タイプをELEMENTに設定した場合、WebCenter Sitesではそのフィールドを表示する際にカスタム・エレメントがコールされます。カスタム・エレメントは、次の場所のいずれかにあります。

ContentFormフォーム上のフィールドの場合:

OpenMarket/Xcelerate/AssetType/myAssetType/ContentForm/fieldname

ContentDetailsフォーム上のフィールドの場合:

OpenMarket/Xcelerate/AssetType/myAssetType/ContentDetails/fieldname

SearchFormフォーム上のフィールドの場合:

OpenMarket/Xcelerate/AssetType/myAssetType/SearchForm/fieldname

myAssetTypeはカスタム・フィールドを作成しているアセット・タイプであり、fieldnameはカスタム・フィールドの名前であることに注意してください。

アセット記述子ファイルからの次の抜粋では、ELEMENT入力タイプが使用されています。

<PROPERTY NAME="imagedate" DESCRIPTION="Image date">
  <STORAGE TYPE="TIMESTAMP" LENGTH="8"/>
  <INPUTFORM TYPE="ELEMENT" WIDTH="24" MAXLENGTH="48" REQUIRED="NO" DEFAULT=""
   INSTRUCTION="Format: yyyy-mm-dd hh:mm"/>
  <SEARCHFORM DESCRIPTION="Image date" TYPE="ELEMENT" 
   WIDTH="48" MAXLENGTH="128"/>
</PROPERTY>

入力フォームではカスタマイズされたフィールドが使用されますが、検索フォームとコンテンツ詳細フォームではデフォルトのフィールドが表示されることに注意してください。

次のコードの抜粋は、記述子ファイルがコールするエレメントです。

<!-- OpenMarket/Xcelerate/AssetType/ImageFile/ContentForm/imagedate
-
- INPUT
- Variables.AssetType
Variables.fieldname 
Variables.fieldvalue- default or value for this field
Variables.datatype - from STORAGE tag in ADF for this field
Variables.helpimage - help icon 
Variables.alttext - help text from INPUT tag in ADF
Other fields from input tag are in:
Variables.assetmaker/property/Variables.fieldname/inputform/[tag attribute]
- field name used in form should be Variables.AssetType:Variables.fieldname

- OUTPUT
-
-->
Enter date in the format yyyy-mm-dd hh:mm:ss<br/>

<setvar 
 NAME="inputfieldsize"
 VALUE="Variables.assetmaker/property/Variables.fieldname/inputform/width"/>

<callelement NAME="OpenMarket/Xcelerate/Scripts/FormatDate"/>

<INPUT TYPE="text" SIZE="Variables.inputfieldsize"
 NAME="Variables.AssetType:Variables.fieldname" 
 VALUE="Variables.fieldvalue" 
 REPLACEALL="Variables.inputfieldsize,Variables.fieldvalue,Variables.fieldname,
 Variables.AssetType"onChange="padDate(this.form.elements['Variables.AssetType:
 Variables.fieldname'].value,this,'Variables.AssetType:Variables.fieldname'
 );"/>

</FTCS>

ELEMENT入力タイプを使用して必要な数のフィールドをカスタマイズできますが、変更するフィールドごとに個別のエレメントを記述する必要があります。

15.2.4 手順2: アセット記述子ファイルのWebCenter Sitesへのアップロード

アセット・タイプに対応したアセット記述子ファイルをコーディングした後、AssetMakerを使用してそれをアップロードして新しいエレメントを登録します。

  1. 管理者としてWebCenter Sitesにログインします。

  2. 作業場所とするサイトを選択します。

  3. Adminインタフェースを選択します。

  4. 「管理」タブを選択します。

  5. 「AssetMaker」を開いて、「新規追加」をクリックします。

    「新規AssetMakerアセット・タイプの追加」フォームが表示されます。

    l_assetmaker_small.pngの説明が続きます
    図l_assetmaker_small.pngの説明

  6. 「名前」フィールド内をクリックして、新しいアセット・タイプの名前を入力します。このフィールドに入力する文字列は、アップロードするアセット記述子ファイルのASSET NAMEで指定された文字列と完全に一致している必要があります。

  7. 「記述子ファイル」フィールドの隣にある「参照」ボタンをクリックして、アセット記述子ファイルを選択します。

  8. 「保存」をクリックします。

    AssetMakerでは、ファイルがAssetType表に入力され(つまり、アセット記述子ファイルがAssetType表のデフォルトのストレージ・ディレクトリにアップロードされ)、「アセット・タイプ」フォームが表示されます。

    n_basic_small.pngの説明が続きます
    図n_basic_small.pngの説明

15.2.5 手順3: アセット表の作成

この手順は、前述の項の手順8(第15.2.4項「手順2: アセット記述子ファイルのWebCenter Sitesへのアップロード」)からの続きです。

  1. 「アセット表の作成」を選択します。

  2. 「Defdir」フィールドの値を調べて、必要に応じて変更します。AssetMakerはこの値をアセット記述子ファイルから読み取ります。次のいずれかの条件がある場合には、このフィールドに値を入力する必要があります。

    • アセット記述子のASSETタグに対応するDEFDIRパラメータを使用して値を入力しなかった場合。

    • デフォルトのストレージ・ディレクトリを変更しようとする場合。これは、アセット・タイプを別のシステムに移行する際の典型的な状況です。

    「「一般」カテゴリの追加」オプションを選択した場合は、AssetMakerによってCategory表に、新しいアセット・タイプに対応する行が1つ追加され、そのカテゴリにGeneralという名前が付けられます。

  3. 「アセット表の作成」をクリックします。

    AssetMakerでは、表が作成されます。

    終了すると、次のような確認が表示されます。

    l_basic_confirm_small.pngの説明が続きます
    図l_basic_confirm_small.pngの説明

  4. 「アセット・エレメントの登録」を選択して、「アセット・エレメントの登録」ボタンをクリックします。

    エレメントがAssetStubElementCatalog表からElementCatalog表のアセット・タイプのディレクトリにコピーされ、SQL文がSystemSQL表にコピーされます。終了すると、次のような確認が表示されます。

    n_reg_confim_small.pngの説明が続きます
    図n_reg_confim_small.pngの説明

15.2.6 手順4: アセット・タイプの構成

AssetMakerで新しいアセット・タイプが作成されると(第15.2.4項「手順2: アセット記述子ファイルのWebCenter Sitesへのアップロード」)、アイコンと新しいアセット・タイプを構成するための管理フォームも作成され、「管理」タブに配置されます。

次の構成手順を実行します。

  1. 「管理」タブで、「アセット・タイプ」アイコンを展開します。

  2. 「アセット・タイプ」で、新しいアセット・タイプを選択します。(リストに新しいアセット・タイプが表示されていない場合、右クリックし、コンテキスト・メニューから「リフレッシュ」を選択して、新しいアセット・タイプを選択します。)

  3. 「編集」をクリックします。

    次のフォームが表示されます。

    l_assettype_small.pngの説明が続きます
    図l_assettype_small.pngの説明

  4. (オプション)「説明」フィールド内をクリックして、必要に応じて変更します。このフィールドのテキストには、フォームのこのアセット・タイプに対してWebCenter Sitesで使用される名前とWebCenter Sitesインタフェースのリストが記述されています。デフォルトでは、「説明」はアセット記述子ファイルのASSET DESCRIPTION文の値に設定されています。

  5. (オプション)「複数形」フィールド内をクリックして、必要に応じて変更します。このフィールドのテキストには、複数形でアセット・タイプを参照するのが適切な場合にWebCenter Sitesインタフェースで使用するテキストが記述されています。デフォルトでは、「複数形」はアセット記述子ファイルのASSET DESCRIPTION文の値に「s」を追加して設定されています。アセット記述子ファイルの複数形を独自で指定するには、ASSETタグのPLURALパラメータの値を設定します。

  6. (オプション)子アセットに設定可能フィールド内をクリックして、必要に応じて変更します。デフォルトでは、このフィールドは「True」に設定されています。つまり、このアセット・タイプは別のアセット・タイプのアソシエーション・フィールドで子アセット・タイプである可能性があります。その名前は、「新規アソシエーションの追加」フォームの「子アセット」フィールドにあるアセット・タイプのリストに表示されます。

  7. 「保存」をクリックします。

15.2.7 手順5: サイトのアセット・タイプの有効化

新しいエレメントがアセット・タイプにレンダリングするフォームを調べる前に、作業するサイトでアセットを有効にし、それに対して簡単な「スタート・メニュー」の項目を作成する必要があります。

アセット・タイプを有効にして、それらにスタート・メニューの項目を作成する手順は、『Oracle Fusion Middleware WebCenter Sites管理者ガイド』を参照してください。

15.2.8 手順6: アセット記述子ファイルの微調整

新しいタイプの新しいアセットを作成し、「新規」、「編集」、「調査」および「検索」の各フォームを調べます。このタイプの新しいアセットを作成するには、ツールバーの「新規」をクリックし、前述の手順で作成した「スタート・メニュー」ショートカットを選択します。

フォームを調べた後、アセット記述子ファイルを変更する必要が生じることがあります。

次のいずれかの項目を比較的少ない手順で変更できます。

  • アセット・タイプのWebCenter Sitesフォームに表示されるフィールドの並替え

  • フィールド名(PROPERTY DESCRIPTIONの値)の変更

  • INPUTFORMSEARCHFORMSEARCHRESULTSいずれかの文におけるなんらかの変更

前述のリストになんらかの変更を加える場合には、次の手順を実行します。

  1. 第15.2.4項「手順2: アセット記述子ファイルのWebCenter Sitesへのアップロード」でアップロードしたアセット記述子ファイルを開いて変更するには、Oracle WebCenter Sites Explorerを使用します。

  2. 変更を保存します。

  3. アセット・タイプのエレメントを登録しなおします。

アセット・タイプのデータベース表の作成後は、そのスキーマを変更できません。次の変更内容は、スキーマの変更内容です。

  • 列名(既存のPROPERTY文のNAMEパラメータ)の変更

  • 列のデータ型(既存のPROPERTY文のSTORAGE TYPEまたはLENGTH)の変更

  • 新しいプロパティ(新しいPROPERTY文)の追加。これにより表に新しい列が追加されます。

  • プロパティ(既存のPROPERTY文)の削除。これにより表から列が削除されます。

したがって、前述のリストのいずれかの変更を実行する場合は、まずアセット・タイプを削除し、アセット記述子ファイルを変更し、アセット・タイプを再び作成します。

AssetStubElementCatalog表からElementCatalog表のアセット・タイプのディレクトリにコピーしたエレメントをカスタマイズした場合、変更内容はエレメントを再登録した時点で上書きされることに注意してください。

15.2.9 手順7: (オプション)アセット・タイプのエレメントのカスタマイズ

コンテンツ管理システムでアセット・タイプのエレメントをカスタマイズする方法は2つあります。

  • 特定のアセット・タイプに固有な変更が必要な場合、Oracle WebCenter Sites Explorerを使用して、そのアセット・タイプのエレメントをElementCatalog表で変更できます。エレメントの変更の詳細は、第15.2.9.1項「PreUpdateエレメントとPostUpdateエレメントについて」を参照してください。

  • すべてのタイプのアセットに同じ変更が必要な場合、Oracle WebCenter Sites Explorerを使用して、AssetStubElementCatalog表のソース・エレメントを変更してから、アセット・タイプを作成します。その方法では、一度だけカスタマイズする必要があります。


注意:

AssetStubElementCatalog表のソース・エレメントのカスタマイズが必要な場合もありますが、サポートされていません。スタブ・エレメントをカスタマイズする場合には、次の条件で上書きされることを考慮してください。

  • スタブ・エレメントを変更する場合には、新しい変更内容を取得する必要があるすべてのアセット・エレメントを再登録する必要があります。アセット・エレメントの再登録では、AssetMakerはエレメントの新しいコピーをAssetStubElementCatalog表からElementCatalog表内のアセット・タイプのディレクトリに移動し(パスはElementCatalog\OpenMarket\Xcelerate\AssetType)、このプロセスで既存のエレメントを上書きします。AssetTypeディレクトリにあるカスタマイズ済のエレメントは上書きされます。

  • WebCenter Sitesアップグレード・プロセスでは、通常、新しいエレメントはAssetStubElementCatalog表にインストールされます。スタブ・エレメントのコードの変更は、アップグレード後にアセット・タイプを再登録すると上書きされます。


すべてのカスタマイズのトラッキングについては、常に細心の注意を払ってください。その方法で、必要に応じて作業を作成しなおすことができます。

15.2.9.1 PreUpdateエレメントとPostUpdateエレメントについて

アセットで実行できるアクションや手順を機能と呼びます。たとえば、新規編集および削除は、AdminインタフェースとContributorインタフェースのユーザーがアセットの作成、編集および削除の際に起動できるすべての機能です。そのような機能は、PreUpdateエレメントとPostUpdateエレメントもコールします。

PreUpdateエレメントとPostUpdateエレメントを使用して、エレメントがコールされたときに各種操作を開始するロジックを格納します。PreUpdateエレメントは機能が起動されたときにコールされます。PostUpdateエレメントは、WebCenter Sitesがアセット情報をデータベースに書き込んだ後にコールされます。各エレメントには変数が含まれており、その変数の名前と値によりエレメントがコールされる条件が指定されます。この変数は、Adminインタフェースから、またはContributorインタフェースやXMLPostユーティリティのフォーム・モードからエレメントをコールする必要がある場合に、updatetypeと名付けられます。この変数は、ContributorインタフェースのWebモードからエレメントをコールする必要がある場合に、servicesUpdateTypeと名付けられます。

たとえば、コンテンツ・マネージャがAdminインタフェースで稼働しており、そのシステムが記事のバッチを通信社からインポートするように構成されているとします。エレメントでこれらの操作をコーディングして、updatetype=remotepostをエレメントがコールされる条件として設定すれば、インポートの直前にPreUpdateエレメントの「ソース」フィールドの値をwirefeedに、「署名行」フィールドの値をAPIに設定できます。


注意:

PreUpdateエレメントとPostUpdateエレメントは、WebCenter SitesユーザーがAdminインタフェースまたはContributorインタフェースで、「新規」、「編集」、「削除」の各機能を起動するとき、アセットがSites Desktopに保存されるとき、またはアセットがXMLPostを使用してインポートされるときに、常にコールされます。操作がPreUpdateエレメントとPostUpdateエレメントによって実行されるかどうかは、それらのエレメントのコード方法によります。デフォルトでは、アクションなしに設計されています。


PreUpdateエレメントとPostUpdateエレメントには、次のパスで、Oracle WebCenter Sites Explorerからアクセスできます。

ElementCatalog\OpenMarket\Xcelerate\AssetType

表15-6は、updatetype変数の値について定義しています。


注意:

Adminインタフェースで新規アセットまたは編集済のアセットを保存すると、PreUpdateエレメントは2回コールされます。

最初のコールは、「新規」フォームまたは「編集」フォームがレンダリングされる前に実行されます。2回目のコールは、「新規」フォームまたは「編集」フォームで「保存」がクリックされた後に行われますが、この時点でWebCenter Sitesではアセット情報がデータベースに書き込まれていません。

前述の条件により、新規機能または編集機能が呼び出されると、PreUpdateによる操作を1箇所または数箇所で実行できるようになります。それは、エレメントのupdatetype変数の値に応じて、「新規」フォームか「編集」フォームがレンダリングされる前、アセット情報がデータベースに書き込まれる前、またはその両方のタイミングで発生します。


表15-6 UpdateType変数の値

updatetype = 説明

setformdefaults

Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが「新規」機能を起動した場合:

  • PreUpdateエレメントは、「新規」フォームがレンダリングされる前にコールされます。

  • PostUpdateでは、setformdefaultsはupdatetype変数に対する適切な値ではありません。

create

Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが新しいアセットを保存した場合:

  • PreUpdateエレメントは、新しいアセットがデータベースに書き込まれる前にコールされます。

  • PostUpdateエレメントは、新しいアセットがデータベースに書き込まれた後でコールされます。

editfront

Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが「編集」機能を起動した場合:

  • 「編集」フォームがレンダリングされる前に、PreUpdateエレメントがコールされます。

  • PostUpdateでは、editfrontpdatetype変数に対する適切な値ではありません。

edit

Adminインタフェースで、またはContributorインタフェースのフォーム・モードでユーザーが編集済のアセットを保存した場合:

  • PreUpdateエレメントは、編集内容がデータベースに書き込まれる前にコールされます。

  • PostUpdateエレメントは、編集内容がデータベースに書き込まれた後でコールされます。

delete

Adminインタフェースからユーザーがアセットを削除した場合:

  • PreUpdateエレメントは、WebCenter Sitesによってアセットが削除される前にコールされます。

  • PostUpdateエレメントは、WebCenter Sitesによってアセットが削除された後で実行されます。

remotepost

ユーザーがXMLPost機能を呼び出してアセットをインポートする場合:

  • アセットがインポートされる前に、PreUpdateエレメントがコールされます。

  • アセットがインポートされた後に、PostUpdateエレメントがコールされます。

MSWord

Microsoft Wordで作成または編集されたアセットをSites Desktopのユーザーが保存した場合:

  • 新しいアセットまたは編集済のアセットがデータベースに書き込まれる前に、PreUpdateエレメントがコールされます。

  • 新しいアセットまたは編集済のアセットがデータベースに書き込まれた後に、PostUpdateエレメントがコールされます。

InSite

Webモードから保存された場合、servicesUpdateTypeと呼ばれる変数があり、ユーザーの操作に応じて作成、編集または削除を実行します。

表15-7は、servicesUpdateType変数の値について定義しています。


表15-7 servicesUpdateType変数の値(Contributorインタフェース)

servicesUpdateType = 説明

create

Contributorインタフェースでユーザーが新しいアセットを保存した場合:

  • PreUpdateエレメントは、新しいアセットがデータベースに書き込まれる前にコールされます。

  • PostUpdateエレメントは、新しいアセットがデータベースに書き込まれた後でコールされます。

edit

Contributorインタフェースでユーザーが編集済のアセットを保存した場合:

  • PreUpdateエレメントは、編集内容がデータベースに書き込まれる前にコールされます。

  • PostUpdateエレメントは、編集内容がデータベースに書き込まれた後でコールされます。

delete

Contributorインタフェースでユーザーがアセットを削除した場合:

  • PreUpdateエレメントは、WebCenter Sitesによってアセットが削除される前にコールされます。

  • PostUpdateエレメントは、WebCenter Sitesによってアセットが削除された後でコールされます。


15.2.10 手順8: (オプション)サブタイプの構成

AssetMakerで設計するベーシック・アセット・タイプの場合、サブタイプとはアセットがレンダリングされる方法に基づいたアセット・タイプのサブクラスのことです。サブタイプを使用して、各公開ターゲットでそのタイプおよびサブタイプのアセットに対する個々のデフォルトの承認テンプレートを定義できます。

この項の内容は、次のとおりです。

15.2.10.1 サブタイプの追加

サブタイプを作成する手順は次のとおりです。

  1. 「管理」タブで、「アセット・タイプ」オプションを開きます。

  2. 「アセット・タイプ」オプションの下で、サブタイプの作成対象とするアセット・タイプを選択します。

  3. 「サブタイプ」オプションを選択します。

    次のような「サブタイプ」フォームが表示されます。

    e_add_subtypes_small.pngの説明が続きます
    図e_add_subtypes_small.pngの説明

  4. 「新規サブタイプの追加」をクリックします。

  5. 次のフォームで、「名前」列の最初のフィールド内をクリックし、サブタイプの名前を入力します。

  6. 「サイト」列の対応するフィールドで、このサブタイプに必要なサイト名を選択します。

  7. 最大5つのサブタイプまでこれらの手順を繰り返します。

  8. 「保存」をクリックします。

15.2.10.2 サブタイプの削除

サブタイプを削除する手順は次のとおりです。

  1. 「管理」タブで、「アセット・タイプ」オプションを開きます。

  2. 「アセット・タイプ」オプションの下で、サブタイプの作成対象とするアセット・タイプを選択します。

  3. 「サブタイプ」オプションを選択します。

  4. 「サブタイプ」フォームで、「削除」(ゴミ箱の)アイコンをクリックします。

  5. 「サブタイプの削除」をクリックします。

15.2.11 手順9: (オプション)アソシエーション・フィールドの構成

アソシエーションについては、第11.2項「ベーシック・アセット・モデル」を参照してください。要するに、アソシエーションとは親子関係を説明する定義済のアセット・タイプ固有の関係、または個々のアセットやアセットのサブタイプ間のリンクのことです。テンプレート・エレメントをコーディングする際に、これらの関係の名前を使用して個々のアセットやサブタイプを特定するため、オブジェクト名でオブジェクトを参照する必要はありません。

たとえば、Burlington Financialサンプル・サイトではイメージファイル・アセットが記事アセットに関連付けられています。テンプレート・エレメントは、アセットの名前ではなくアソシエーションの名前で関連付けられたイメージファイル・アセットを抽出するようにコーディングされます。その場合、記事に異なるイメージファイルを選択すると、テンプレートは新しいイメージファイルを表示するため、テンプレートをコーディングしなおす必要はありません。

アソシエーションは、アセット・フォームのフィールドとして表されます。これらのフィールドはアセット記述子ファイルからは作成されません。かわりに、「管理」タブの「アセットのアソシエーション」フォームを使用します。

Burlington Financialサンプル・サイトのアソシエーション・フィールドの例には、記事アセットとイメージファイル・アセットの間のメイン・イメージ・アソシエーションとティーザー・イメージ・アソシエーションが含まれています。Burlington Financialの記事アセットを作成する際には、「メイン・イメージ」フィールドと「ティーザー・イメージ」フィールドからイメージ・アセットを選択できます。

この項の内容は、次のとおりです。

15.2.11.1 アソシエーション・フィールドの追加

アソシエーション・フィールドを追加する手順は次のとおりです。

  1. 「管理」タブで、「アセット・タイプ」を選択します。

  2. 「アセット・タイプ」オプションで、アソシエーションを作成するアセット・タイプを選択します。

  3. 選択したアセット・タイプで、「アセットのアソシエーション」「新規追加」を選択します。

    次のような「新規アソシエーションの追加」フォームが表示されます。

    l_association_small.pngの説明が続きます
    図l_association_small.pngの説明

  4. 「名前」フィールド内をクリックして、スペース、小数点または引用符を使用せずにアソシエーション・フィールド名を入力します。

  5. 「説明」フィールド内をクリックして、フィールドの簡単な説明を入力します。WebCenter Sitesでは、新しいアセット・フォームに表示される際このフィールドに入力したテキストがフィールド名として使用されるため、説明は簡潔にします。

  6. 「子アセット」フィールド内をクリックして、このフィールドに表示されるアセット・タイプの種類を選択します。(「子アセット」フィールドと呼ばれるのは、アソシエーションがアセット間の親子関係を作成しているためです。)このフィールドでは、テンプレートやページ・アセット・タイプを指定できません。

  7. このアソシエーションに対する1つまたは複数のサブタイプを選択するには、「サブタイプ」フィールド内のそのサブタイプを強調表示します。複数のサブタイプを選択するには、選択内容をマウスでクリックしながら[Ctrl]キーを押します。

  8. このアセット・アソシエーションに対応する「依存性タイプ」を選択します。デフォルトでは、「存在」に設定されています。ここで指定された依存性タイプは、公開方法がサーバーに対してミラーの場合、承認システムで使用されます。依存性タイプの詳細は、第28.2項「依存性をログに記録するためのコーディングについて」を参照してください。

  9. 「追加」をクリックします。

    WebCenter Sitesでは、このアソシエーションの「アソシエーション」表に行が作成されます。この行で使用される名前は、手順4「名前」フィールドに入力したテキストです。

15.2.11.2 アソシエーション・フィールドの削除

アソシエーション・フィールドを削除する前に、必ずのフィールドを使用するアセットはないか検索してフィールド内の値を消去します。そうしないと、アソシエーション・フィールドを削除した時点でそれらのアセットはアソシエーションを保持したままになりますが、WebCenter Sitesインタフェースには表示されなくなるため、それを変更できなくなります。

アソシエーション・フィールドを削除する手順は次のとおりです。

  1. 「管理」タブで、「アセット・タイプ」を選択します。

  2. 「アセット・タイプ」オプションで、アソシエーション・フィールドを削除するアセット・タイプを選択します。

  3. 選択したアセット・タイプで、削除するアソシエーションを選択します。

  4. 右のフォームで、「削除」をクリックします。

アソシエーション・フィールドは、このアセット・タイプのフォームには表示されなくなります。

15.2.12 手順10: (オプション)カテゴリの構成

カテゴリを使用して、サイト設計に対応した一部の表記規則に従ってアセット・タイプを編成できます。たとえば、Burlington Financialサンプル・サイトではカテゴリに基づいた問合せを使用して、オンライン・サイトの様々なセクションで選択する記事を決定できます。

すべてのベーシック・アセット・タイプに「カテゴリ」フィールド(列)がデフォルトで備わっていますが、それは必須フィールドではなく、使用する必要はありません。

この項の内容は、次のとおりです。

15.2.12.1 カテゴリの追加

カテゴリを追加する手順は次のとおりです。

  1. 「管理」タブで、「アセット・タイプ」を選択します。

  2. 「アセット・タイプ」オプションで、カテゴリを作成するアセット・タイプを選択します。(たとえば、「記事」を選択します。)

  3. 該当するアセット・タイプで、「カテゴリ」「新規追加」を選択します。

    次のフォームが表示されます。

    e_add_category_small.pngの説明が続きます
    図e_add_category_small.pngの説明

  4. 「説明」フィールド内をクリックして、カテゴリの簡単な説明を入力します。WebCenter Sitesではこのフィールドに入力したテキストがサイト・ツリーと、このタイプのアセットに対するフォームの「カテゴリ」フィールドのドロップダウン・リストで使用されるため、説明は簡潔にします。

  5. 「カテゴリ・コード」フィールドに、新しいカテゴリの2文字コードを入力します。

  6. 「追加」ボタンをクリックします。

  7. 必要に応じて、手順2から6を繰り返し、このアセット・タイプのカテゴリの作成を終了します。

作成したカテゴリは、「新規」フォームと「編集」フォームの「カテゴリ」フィールドのドロップダウン・リストに表示されます。

15.2.12.2 カテゴリの削除

カテゴリを削除する手順は次のとおりです。

  1. 「管理」タブで、「アセット・タイプ」を選択します。

  2. 「アセット・タイプ」オプションで、カテゴリを削除するアセット・タイプを選択します。

  3. そのアセット・タイプで、削除するカテゴリを選択します。

  4. 「削除」をクリックします。

15.2.13 手順11: (オプション)ソースの構成

ソースは、システムのすべてのサイトのすべてのアセット・タイプに適用します。したがって、ソースを使用している場合、ソースを一度のみ追加する必要があります(各アセット・タイプに追加するのではなく)。

この項の内容は、次のとおりです。

15.2.13.1 ソースの追加

ソースを作成する手順は次のとおりです。

  1. 「管理」タブで、「ソース」「新規追加」を選択します。

    次のような「ソースの追加」フォームが表示されます。

    e_add_source_small.pngの説明が続きます
    図e_add_source_small.pngの説明

  2. 「ソース」フィールド内をクリックし、ソース名を入力します。

  3. 「説明」フィールド内をクリックして、ソースの簡単な説明を入力します。WebCenter Sitesでは、アセットに対するフォームの「ソース」フィールドのドロップダウン・リストで、このフィールドに入力したテキストが使用されます。

  4. 「追加」をクリックします。

    ソースがSource表に書き込まれます。

  5. アセット・タイプに必要な各ソースに対して、手順1から4を繰り返します。

15.2.13.2 ソースの削除

ソースを削除する手順は次のとおりです。

  1. 「管理」フォームで、「ソース」を選択します。

  2. 「ソース」オプションで、削除するソース名を選択します。

  3. このソースのフォームで、「削除」をクリックします。

15.2.14 手順12: (条件付き)MIMEタイプの追加

MimeType表には、MIMEタイプのフィールドに表示できるMIMEタイプ・コードが保持されています。MimeType表をアセット記述子ファイルで参照する場合、アセットにMIMEタイプを追加する必要があります。

たとえば、イメージファイルとスタイルシートの両方のアセット・タイプで、横に「参照」ボタンのあるフィールドをアップロードしてあるとします。アップロード・フィールドでファイルを選択したら、「MIMEタイプ」フィールドから選択したファイルのMIMEタイプを指定します。

イメージファイル・アセット・タイプとスタイルシート・アセット・タイプの「MIMEタイプ」フィールドは、keyword列に基づいたMIMEタイプ・コードのMIMEタイプ表を問い合せます。

  • keywordstylesheetに設定されているMIMEタイプ・コードが、「スタイルシート」フォームの「MIMEタイプ」フィールドのドロップダウン・リストに表示されます。

  • keywordimageに設定されているMIMEタイプ・コードが、「イメージ・ファイル」フォームの「MIMEタイプ」フィールドのドロップダウン・リストに表示されます。

デフォルトでは、スタイルシートのファイルはCSSファイル、イメージファイルのファイルはGIFファイルまたはJPEGファイルになります。これらのアセット・タイプ、独自のカスタム・アセット・タイプ、またはその他の理由に対するMIMEタイプ・コードを追加できます。

「MIMEタイプ」ドロップダウン・リストにMIMEタイプを追加する手順は次のとおりです。

  1. Oracle WebCenter Sites Explorerを開きます。

  2. 「MIMEタイプ」表を開きます。

  3. 次のいずれかを行います。

    • イメージファイル・アセット・タイプにMIMEタイプを追加する場合、「MIMEタイプ」表で「イメージ」フォルダを選択します。

    • スタイルシート・アセット・タイプにMIMEタイプを追加する場合、「MIMEタイプ」表で「テキスト」フォルダを選択します。

    • アップロード・フィールドまたはその他の理由に対してMIMEタイプをカスタム・アセット・タイプに追加する場合、「MIMEタイプ」表の適切な場所を選択します。

  4. 右のフレーム内を右クリックし、ドロップダウン・リストから「新規」を選択します。

    Oracle WebCenter Sites Explorerでは、表内に新しい行が作成されます。

  5. 「MIMEタイプ」フィールドに、MIMEタイプ名を入力します。たとえば、XSLと入力します。

  6. 「拡張機能」フィールドに、このタイプのMIMEタイプの拡張子を入力します。たとえば、xmlと入力します。

  7. 「説明」フィールドに、MIMEタイプの短い説明を入力します。

  8. 「デフォルト」フィールドで、次のいずれかを実行します。

    • 同一のMIMEタイプに複数の拡張子を指定する場合、nと入力します。たとえば、JPGというMIMEタイプにjpgjpegの拡張子がある場合、「デフォルト」nに設定します。

    • これがMIMEタイプに対する唯一の拡張子の場合、yと入力します。

  9. 「キーワード」フィールド内をクリックし、次のいずれかを実行します。

    • イメージファイル・アセット・タイプにMIMEタイプを追加している場合、imageと入力します。

    • スタイルシート・アセット・タイプにMIMEタイプを追加している場合、stylesheetと入力します。

    • アップロード・フィールド持つカスタム・アセット・タイプまたはやその他の理由に対してMIMEタイプを追加する場合、適切なキーワードを入力します。

  10. 「ファイル」「すべて保存」を選択します。

    Oracle WebCenter Sites Explorerで行が保存されます。

    keywordがimageに設定されているMIMEタイプを追加した場合、そのMIMEタイプは「イメージ・ファイル」フォームの「MIMEタイプ」フィールドに表示されます。keywordがstylesheetに設定されているMIMEタイプのコードを追加した場合、そのMIMEタイプは「スタイルシート」フォームの「MIMEタイプ」フィールドに表示されます。

15.2.15 手順13: (オプション)索引付き検索を有効にするための検索エレメントの編集

WebCenter SitesとEngageには、標準検索と詳細検索を実行する独自のデータベースSQL検索メカニズムが備わっています。ただし、サポートされているサード・パーティの検索エンジンのいずれかに管理システムを設定することも可能です。構成の詳細は、『Oracle Fusion Middleware WebCenter Sites管理者ガイド』を参照してください。

管理システムで検索エンジンを使用する場合、各アセットは作成後または編集後に保存される際に索引付けされます。デフォルトでは、デフォルト・フィールドのみが索引付けされます(リストは、第11.2.4.2項「ベーシック・アセット・タイプのデータベース表のデフォルトの列」を参照してください)。アセット記述子ファイル内のPROPERTY文で作成したフィールドを索引付けする場合には、次のエレメントでフィールド用の文を追加する必要があります。

  • OpenMarketXcelerate/AssetType/YourAssetType/IndexAdd.xml

  • OpenMarketXcelerate/AssetType/YourAssetType/IndexReplace.xml

アセット・タイプのカスタム・フィールドをこれらのエレメントに追加するには、WebCenter Sites INDEXタグを使用してこれらのエレメント用の表記規則に従います。

15.2.16 手順14: アセット・タイプのアイコンの作成と割当て(Contributorインタフェースのみ)

Contributorインタフェースのナビゲーション・ツリー(「サイト・ツリー」「コンテンツ・ツリー」および「ワーク」ツリー)でアセット・タイプを表すアイコンを作成して割り当てます。アイコンはイメージ・ファイルのいずれかのタイプに指定できます(PNG、GIFなど)。この例では、タイプPNGのイメージ・ファイルを作成します。

  1. アセット・タイプを表す20x20ピクセル以内のイメージを作成します。

  2. 構文assetType.pngを使用してファイルに名前を付けます。ファイル名は、アイコンが表示されるアセット・タイプを決定します。この名前では、大文字と小文字が区別されます。

  3. 次のディレクトリにファイルを格納します。

    <cs_app_dir>/Xcelerate/OMTree/TreeImages/AssetTypes/

    ここで、<cs_app_dir>はアプリケーション・サーバーのデプロイ済WebCenter Sitesアプリケーションのディレクトリです。

  4. Contributorインタフェースの「サイト・ツリー」「コンテンツ・ツリー」および「ワーク」ツリーに表示されるアイコンのアプリケーション・サーバーを再起動します。

15.2.17 手順15: アセット・タイプのテンプレートのコーディング

アセット・タイプの作成と該当するタイプのアセットに対応するテンプレートのコーディングは、反復プロセスです。アセット・タイプを作成して、テンプレート作成前に該当するタイプのアセットに対応するテンプレートを作成する必要がありますが、データ設計の微調整の必要がある領域は、テンプレートをコーディングしてコードをテストした後にのみ明らかになる可能性が高いようです。

テンプレートのコーディングの詳細は、第28章「テンプレートおよびCSElementのエレメントのコーディング」を参照してください。

15.2.18 手順16: 他のシステムへのアセット・タイプの移動

すべての新しいアセット・タイプの作成(それらに対するテンプレートの作成も含む)が終了したら、管理システムと配信システムへ移行します。次に、システム管理者が管理システムのアセット・タイプを構成します。管理者は、必要に応じてリビジョン追跡の有効化、ワークフロー・プロセスの作成、スタート・メニューのショートカットの作成などを実行します。

この手順の詳細は、『Oracle Fusion Middleware WebCenter Sites管理者ガイド』を参照してください。

15.3 ベーシック・アセット・タイプの削除

AssetMakerで作成したアセット・タイプを削除するには、選択したアセット・タイプのコンポーネントを削除するか、データベースからアセット・タイプのすべてのトレースを削除します。アセット・タイプのコンポーネントは次のとおりです。

AssetMakerで作成したアセット・タイプを削除する手順は次のとおりです。

  1. 管理者としてWebCenter Sitesにログインします。

  2. 作業場所とするサイトを選択します。

  3. Adminインタフェースを選択します。

  4. 「管理」タブを選択します。

  5. 「AssetMaker」を開いて、削除するアセット・タイプを選択します。

    「アセット・タイプ」フォームが表示されます。

  6. 「アセットの削除」オプションを選択して、「送信」をクリックします。

    WebCenter Sitesに確認メッセージが表示されます。

  7. 「OK」をクリックします。