2008年12月10日水曜日

Surf Dev. Guide [2 オブジェクトモデル]

2 オブジェクトモデル

Webアプリケーションの基本セクションでは、Surfプラットホームのデータモデル
に関して高次の概要を説明していた。本セクションで、各オブジェクトタイプの詳細に入る。

------------------------------------------------------------------------------
2.1 クロム

クロムは、コンポーネントの周辺を取囲む境界要素を意味するものである。
これら境界要素とは、「影付け」のようなスタイル要素を含んだり、
ページにドラッグアンドドロップ機能を付加するものだったりする。
また、ポップアップコンポーネントを設定するボタンのような
「ユーザ機能」を付加させることもある。(しばしばポータルで見かけるもの)

デフォルトでは、クロムはSurfプラットホーム内では最小限に留められています。
新しいコンポーネントが、ページに追加されると、Webアプリケーションのための
デフォルトchromeを受け取ることになります。(当初は空の既製品)

保管場所

/WEB-INF/classes/alfresco/site-data/chrome


プロパティ

  • id => オブジェクトのid (オプション)

  • title => クロムのタイトル

  • description => クロムの説明

  • renderer-type => レンダラのid (設定で定義)

  • renderer => レンダラによって実行されるファイルへのパス



2.1.1 サンプルのJSPクロム

<chrome>
<title>Sample Chrome 1</title>
<renderer>/app/sample-chrome-1.jsp</renderer>
<renderer-type>jsp</renderer-type>
</chrome>


注記: レンダラは、 JSPファイルへのパス(web-application相対的)

2.1.2 サンプルWebScriptクロム

<chrome>
<title>Sample Chrome 2</title>
<renderer>/sample/chrome-2</renderer>
<renderer-type>webscript</renderer-type>
</chrome>


注記: レンダラは、WebScriptのXML説明文書内で定義されているWebScriptへのURL

2.1.3 領域用サンプルクロムテンプレート
@コンポーネントを使用して、領域内のコンポーネントを含めることができます。


<div id="${htmlid}">
<@component/>
</div>



2.1.4 コンポーネント用サンプルクロムテンプレート
@componentIncludeを使用して、コンポーネントが表示される場所を指定できます。


<!-- Start Debug Component Chrome -->
<div style="border: 2px black solid">
<div style="background-color: #aaaaaa; border-bottom: 1px black solid; color: white; padding: 2px"><B>${htmlid}</B></div>
<div style="background-color: #dddddd; padding: 2px">
<@componentInclude/>
</div>
</div>
<!-- End Debug Component Chrome -->

0 件のコメント: