uCosminexus Portal Framework 運用管理者ガイド
拡張レイアウト用のポートレット配置情報ファイルの作成方法について説明します。拡張レイアウト用のポートレット配置情報ファイルは,管理者(運用管理者または部門管理者)が作成します。ポートレット配置情報ファイルを作成することによって,拡張レイアウト(行および列の組み合わせ)を定義できます。
管理者は,次のどれかの方法でポートレット配置情報ファイルを作成します。なお,ポートレット配置情報ファイル名には,HTMLファイルの場合は「homeHTML.html」を,PSML形式の場合は「homeHTML.psml」を指定します。
- すでに作成されている拡張レイアウト以外のレイアウト形式のポートレット配置情報ファイルをエクスポートして編集する。※1
- uCosminexus Portal Frameworkが提供している拡張レイアウトのサンプルを編集する。※1※2
- uCosminexus Portal Frameworkが提供している拡張レイアウトのサンプルをそのまま使用する。※2
注※1 タブ形式に拡張レイアウトの画面を表示する場合は,タブ形式のポートレット配置情報ファイルに記述されているタブのタグ,および拡張レイアウトのポートレット配置情報ファイルの内容を組み合わせてポートレット配置情報ファイルを作成する必要があります。
注※2 PSML形式の場合に有効な方法です。
uCosminexus Portal Frameworkが提供しているサンプル(ファイル名:sample1.psml,sample2.psml,およびsample3.psml)は,次のフォルダに格納されています。
{uCosminexus Portal Frameworkインストールディレクトリ}\samples\expsml
- <この項の構成>
- (1) ポートレット配置情報ファイル(HTML)の構造
- (2) ポートレット配置情報ファイル(PSML)の構造
- (3) ポートレット配置情報ファイルの例
(1) ポートレット配置情報ファイル(HTML)の構造
ポートレット配置情報ファイル(HTML)の構造について説明します。なお,ポートレット配置情報ファイル(HTML)の例については,「7.5.1(3) ポートレット配置情報ファイルの例」を参照してください。
(a) <html>
この文書がHTML文書であることを指定します。なお,この指定は省略できます。指定を省略した場合は,<html>タグ,<head>タグおよび<body>タグは指定されたものとして動作し,<meta>タグのエンコーディングは「UTF-8」が指定されたものとします。
<html>タグ内には,次に示すタグを指定します。
- <head>
この文書のヘッダ部を指定します。<head>タグで囲んだ部分がヘッダ部になります。
- <meta http-equiv="content-type" content="text/html; charset=Windows-31J ">
HTMLファイルは個別にエンコーディングを指定できます。エンコーディングは,<meta>タグのcharsetに指定します。ここでは,「Windows-31J」を指定しています。
- <body>
文書の本文を記述します。拡張レイアウト定義の<table>タグは,<body>タグで囲んだ部分に指定します。
(b) <table controller="tab">
タブ形式のレイアウトを指定します。レイアウトの最上位だけ指定できます。
- <tr><td>
拡張レイアウトを指定します。
<td>タグ内に,レイアウト定義である(c)の<table controller="layout">を指定します。
(c) <table controller="layout">
拡張レイアウト形式であることを指定します。このタグには,次の属性を指定します。
- background-color属性
ポートレットの背景色のデフォルト値を指定します。
- title-color属性
ポートレットタイトルバーの色のデフォルト値を指定します。
- portletpadding属性
ポートレットの間隔のデフォルト値を指定します。
<table controller="layout">タグ内には,<tr>と<td>で行列形式の入れ子,またはエリア(列単位に表示するポートレット)を指定します。
- 行列形式の入れ子の場合
- <tr><td>タグ内に,(c)の<table controller="layout">タグを指定します。
- <td>のwidth属性
列形式の場合は,列を表示する幅を<td>タグのwidth属性に比率,またはピクセルで指定します。
- <td>のheight属性
行形式の場合は,行を表示する幅を<td>タグのheight属性に比率,またはピクセルで指定します。
- エリアの場合
- <tr><td>タグ内に,(d)の<table controller="area">を指定します。
(d) <table controller="area">
ポートレットを配置するエリアを指定します。このタグには,次の属性を指定します。
ポートレット定義を指定しない場合でも,<tr>タグと<td>タグの定義は必要です。
- modification属性
エリア内のポートレットを変更(追加・移動・削除)できるかどうかを指定します。このパラメタを省略した場合は,「true」が指定されたものとして動作します。
- 変更可能な場合
- value値に「true」を指定します。このエリアは変更可能エリアになります。
- 変更不可能な場合
- value値に「false」を指定します。このエリアは変更不可エリアになります。
- areaid属性
このエリアの識別子(エリアID)を指定します。エリアIDは,レイアウト内で一意な値を指定します。使用できる最大文字数は,半角英数字で64文字です。なお,このパラメタは省略できません。
- areasize属性
このエリアに配置できるポートレットサイズを指定します。値は次のどれかを指定します。
このパラメタを省略した場合,またはlarge,mediumおよびsmall以外の値を指定した場合,サイズ指定されていないポートレットが配置できます。
- large:大きいサイズ
- medium:中サイズ
- small:小さいサイズ
<table controller="area">タグ内には,<tr><td>タグで(e)の<span id="entry" />を指定します。
(e) <span id="entry" />
表示するポートレットを指定します。
- parent属性
ポートレット定義ファイル(jetspeed-config.jcfg)のname属性で指定したポートレット名を指定します。ポートレット定義ファイルの詳細は,マニュアル「uCosminexus Portal Framework システム管理者ガイド」を参照してください。
- ForcePlace属性
自動追加ポートレットであることを指定します。また,このポートレットを変更可能エリアの最上部または最下部のどちらに配置するかを指定します。
- 最上部に配置する場合
- 「top」を指定します。
なお,この属性を省略した場合,またはtopおよびbottom以外の値を指定した場合,通常のポートレットとして動作します。
- 最下部に配置する場合
- 「bottom」を指定します。
(2) ポートレット配置情報ファイル(PSML)の構造
ポートレット配置情報ファイル(PSML)の構造について説明します。なお,ポートレット配置情報ファイル(PSML)の例については,「7.5.1(3) ポートレット配置情報ファイルの例」を参照してください。
(a) <?xml version="1.0" encoding="Windows-31J"?>
PSMLファイルは,個別にエンコーディングを指定できます。エンコーディングは,XML宣言文のencodingに指定します。ここでは,「Windows-31J」を指定しています。
(b) <skin>
ポートレットの背景色,ポートレットタイトルバーの色,およびポートレットの間隔のデフォルト値を次の<property>タグで指定します。なお,この指定は省略できます。
- <property name="padding" value="3"/>
ポートレットの間隔(ドット数)をpadding属性のvalue値に指定します。
(c) <portlets>
行列形式の入れ子,またはエリア(列単位に表示するポートレット)を指定します。
- タブ形式の場合
- このタグ内に(d)の<controller>タグを指定します。
- 行列形式の入れ子の場合
- このタグ内に(e)の<controller>タグを指定します。
- エリアの場合
- このタグ内に,エリアであることを指定する(f)の<controller>タグおよびポートレットを表示する(g)の<entry>タグを指定します。
(d) <controller name="org.apache.jetspeed.portal.controllers.CardPortletController">
タブ形式のレイアウトを指定します。レイアウトの最上位だけ指定できます。このタグ内には,次の<parameter>タグを定義します。
- <parameter name="parameter" value="pane" />
タブ形式であることを示すパラメタです。このパラメタは省略できません。
(e) <controller name="jp.co.hitachi.soft.portal.portal.controllers.ExtenedRowColumnPortletController">
拡張レイアウト形式,および入れ子の行列形式であることを指定します。このタグ内には,次に示すパラメタ,および(c)の<portlets>タグを指定します。
- <parameter name="mode" value="row"/>
拡張レイアウト形式(行列形式)の列ベースまたは行ベースを指定します。なお,このパラメタは省略できません。
- 列ベースの場合
- value値に「row」を指定します。
- 行ベースの場合は
- value値に「column」を指定します。
- <parameter name="sizes" value="50%,50%"/>
行または列を表示する幅をvalue値にコンマ(,)で区切って指定します。値は,比率またはピクセルで指定します。指定した値は,拡張レイアウトをHTML画面に表示するときに対応づけられる<TABLE>タグのwidth属性(列ベースの場合),またはheight属性(行ベースの場合)に設定されます。また,「200,*」のような指定もできますが,画面上の表示幅については表示するWebブラウザに依存します。
列数(または行数)に対してこのタグで指定した数が少ない場合は,指定したタグの数だけの列(または行)に幅の指定をします。なお,表示する幅を等間隔に設定したい場合は,<portlets>タグ内の<portlets>タグの個数を使用して計算します。
計算例を次に示します。
- 表示する幅を等間隔に設定する場合の計算式
- 100 / <portlets>タグの個数
- 1列または1行の場合:"100%"
- 2列または2行の場合:"50%,50%"
- 3列または3行場合:"33%,33%,33%"
(f) <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController ">
ポートレットを配置するエリアを指定します。このタグ内には,次の<parameter>タグを定義します。
- <parameter name="modification" value="true"/>
エリア内のポートレットを変更(追加・移動・削除)できるかどうかを指定します。このパラメタを省略した場合は,「true」が指定されたものとして動作します。
- 変更可能な場合
- value値に「true」を指定します。このエリアは変更可能エリアになります。
- 変更不可能な場合
- value値に「false」を指定します。このエリアは変更不可エリアになります。
- <parameter name="id" value="123"/>
このエリアの識別子(エリアID)を指定します。エリアIDは,レイアウト内で一意な値を指定します。使用できる最大文字数は,半角英数字で64文字です。なお,このパラメタは省略できません。
- <parameter name="size" value="large"/>
このエリアに配置できるポートレットサイズを指定します。[ポートレットの選択]画面では,このパラメタで指定したサイズのポートレットが表示されます。
value値には,次のどれかを指定します。
このパラメタを省略した場合,またはlarge,mediumおよびsmall以外の値を指定した場合,サイズ指定されていないポートレットが配置できます。なお,大文字・小文字は区別されます。
- large:大きいサイズ
- medium:中サイズ
- small:小さいサイズ
(g) <entry type="ref" parent="sample1">
表示するポートレットを指定します。parent属性には,ポートレット定義ファイル(jetspeed-config.jcfg)のname属性で指定したポートレット名を指定します。ポートレット定義ファイルの詳細は,マニュアル「uCosminexus Portal Framework システム管理者ガイド」を参照してください。
- <parameter name="ForcePlace" value="top" />
自動追加ポートレットであることを設定します。また,このポートレットを変更可能エリアの最上部または最下部のどちらに配置するかを指定します。
- 最上部に配置する場合
- value値に「top」を指定します。
なお,このパラメタを省略した場合,またはtopおよびbottom以外の値を指定した場合,通常のポートレットとして動作します。
- 最下部に配置する場合
- value値に「bottom」を指定します。
(3) ポートレット配置情報ファイルの例
入れ子が4段ある場合の拡張レイアウトのPSMLファイルについて説明します。
この例で説明する拡張レイアウトの構成を次に示します。
- 1段目の入れ子(列ベース)
- 左から1列目に変更不可エリアを配置
- 左から2列目に行列(行ベース)を配置
- 2段目の入れ子(行ベース)
- 上から1行目に変更不可エリアを配置
- 上から2行目に行列(列ベース)を配置
- 3段目の入れ子(列ベース)
- 各列に行列(行ベース)を配置
- 4段目の入れ子(行ベース)
- 各1行目に変更不可エリアを配置
- 各2行目に変更可能エリアを配置
この構成の概要を次の図に示します。
図の構成に対応したポートレット配置情報ファイルの例を次に示します。
(a) HTMLの例
図の構成に対応したHTMLファイルの例を次に示します。なお,このHTMLファイルでは,<span>タグで表示するポートレットを指定していますが,概要図ではポートレットを表示していません。
<html> <head> <meta http-equiv="content-type" content="text/html; charset=Windows-31J"> </head> <body> <table portletpadding="3" controller="layout"> <tr> <td width="50%"> <table controller="area" modification="false" areaid="A00001" areasize="small"> <tr> <td> <span id="entry" type="ref" parent="Sample1" /> <span id="entry" type="ref" parent="Sample2" /> </td> </tr> </table> </td> <td width="50%"> <table controller="layout"> <tr> <td hight="50%"> <table controller="area" modification="false" areaid="A00002"> <tr> <td> <span id="entry" type="ref" parent="Sample3" /> </td> </tr> </table> </td> </tr> <tr> <td hight="50%"> <table controller="layout"> <tr> <td width="50%"> <table controller="layout"> <tr> <td hight="50%"> <table controller="area" modification="false" areaid="A00003"> <tr> <td> <span id="entry" type="ref" parent="Sample4" /> </td> </tr> </table> </td> </tr> <tr> <td hight="50%"> <table controller="area" modification="true" areaid="A00004"> <tr> <td> </td> </tr> </table> </td> </tr> </table> </td> <td width="50%"> <table controller="layout"> <tr> <td hight="50%"> <table controller="area" modification="false" areaid="A00005"> <tr> <td> <span id="entry" type="ref" parent="Sample5" /> </td> </tr> </table> </td> </tr> <tr> <td hight="50%"> <table controller="area" modification="true" areaid="A00006"> <tr> <td> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </body> </html>(b) PSMLの例
図の構成に対応したPSMLファイルの例を次に示します。なお,このPSMLファイルでは,<entry>タグで表示するポートレットを指定していますが,概要図ではポートレットを表示していません。
<?xml version="1.0" encoding="Windows-31J"?> <portlets> <skin> <property name="padding" value="3"/> </skin> <controller name="jp.co.hitachi.soft.portal.portal.controllers.ExtenedRowColumnPortletController"> <parameter name="mode" value="row"/> <parameter name="sizes" value="50%,50%"/> </controller> <portlets> <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController"> <parameter name="modification" value="false"/> <parameter name="id" value="A00001"/> <parameter name="size" value="small"/> </controller> <entry type="ref" parent="Sample1"/> <entry type="ref" parent="Sample2"/> </portlets> <portlets> <controller name="jp.co.hitachi.soft.portal.portal.controllers.ExtenedRowColumnPortletController"> <parameter name="mode" value="column"/> <parameter name="sizes" value="50%,50%"/> </controller> <portlets> <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController"> <parameter name="modification" value="false"/> <parameter name="id" value="A00002"/> </controller> <entry type="ref" parent="Sample3"/> </portlets> <portlets> <controller name="jp.co.hitachi.soft.portal.portal.controllers.ExtenedRowColumnPortletController"> <parameter name="mode" value="row"/> <parameter name="sizes" value="50%,50%"/> </controller> <portlets> <controller name="jp.co.hitachi.soft.portal.portal.controllers.ExtenedRowColumnPortletController"> <parameter name="mode" value="column"/> </controller> <portlets> <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController"> <parameter name="modification" value="false"/> <parameter name="id" value="A00003"/> </controller> <entry type="ref" parent="Sample4"/> </portlets> <portlets> <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController"> <parameter name="modification" value="true"/> <parameter name="id" value="A00004"/> </controller> </portlets> </portlets> <portlets> <controller name="jp.co.hitachi.soft.portal.portal.controllers.ExtenedRowColumnPortletController"> <parameter name="mode" value="column"/> </controller> <portlets> <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController"> <parameter name="modification" value="false"/> <parameter name="id" value="A00005"/> <entry type="ref" parent="Sample5"/> </controller> </portlets> <portlets> <controller name=" jp.co.hitachi.soft.portal.portal.controllers.AreaRowColumnPortletController"> <parameter name="modification" value="true"/> <parameter name="id" value="A00006"/> </controller> </portlets> </portlets> </portlets> </portlets> </portlets>
All Rights Reserved. Copyright (C) 2009, 2013, Hitachi, Ltd.
All Rights Reserved. Copyright (C) 2009, 2013, Hitachi INS Software, Ltd.