BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA
 ドキュメントのダウンロード   サイト マップ   用語集 
検索

JavaServer Pages ガイド

 前 次 目次 PDFで表示  

パーソナライゼーション JSP タグ

WebLogic Portal に用意されている JSP タグを使用すると、開発者は、Java を使ってプログラミングしなくてもパーソナライズされたアプリケーションを作成できます。

この節では、以下の JSP タグに関する情報を示します。

 


広告

広告タグは、コンテンツ管理システムにクエリを発行して広告を表示します。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<ad:adTarget>

タグ ライブラリ

ad.tld

インポート文

<%@ taglib uri="ad.tld" prefix="ad" %>

実装されるクラス

adTargetTag


 

<ad:adTarget> タグ(表3-1)は、広告サービスを使用して、広告クエリをコンテンツ管理システムに送信します。 <ph:placeholder> タグとは異なり、<ad:adTarget> タグは広告プレースホルダ内の他のクエリと競合しません。

このタグは、顧客に向けて特定の場所に確実に広告を表示する必要がある場合に使用します。 どれだけ特化したクエリを作成するかにもよりますが、別の広告を表示する場合にはこのタグを削除または変更しなければならないことがあります。

広告クエリが複数の広告を返す場合、広告サービスは、表示する広告を各広告の adWeight 属性に基づいて決定します。


 

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

EJB/データ オブジェクト

SPI

1. AdService.getContent()

2. DocumentManager.getContent()

8. Document.getProperty() ... (その他の get* メソッド)

9. Document.getContent()

10. DocumentManager.getContentBlock()

3. DocumentProvider.findDocumentMetadata()

4. DocumentMetadataDef.getID()

5. DocumentMetadataDef.getName() ... (その他の get* メソッド)

6. DocumentMetadataDef.getAttributeNames()

7. DocumentMetadataDef.getAttribute()

11. DocumentProvider.getDocument()

12. DocumentDef.openStream()

タグの属性

表3-1 は、<ad:adTarget> タグの属性についての説明です。

表3-1 <ad:adTarget> タグの属性

タグ属性

必須

データ型

解説

R/C

query

はい

String

広告サービスがコンテンツを検索するために使用するクエリを格納する。 com.beasys.commerce.util.ExpressionHelperJavadoc で説明されているクエリ構文を使用する。

クエリ構築の詳細については、http://edocs.beasys.co.jp/e-docs/wlp/docs70/dev/conmgmt.htm にある『開発者ガイド』の「コンテンツ クエリの作成」を参照。

R

height

いいえ

int

ブラウザでドキュメントを表示するために必要な HTML を生成するときにプレースホルダが占める高さをピクセル単位で指定する。

プレースホルダでは、表示サイズが適用されるコンテンツ タイプだけを対象に、他の属性によってそのドキュメントに対して定義されたサイズがまだない場合にのみこの値が使用される。

この値を指定せず、他の属性によって定義されてもいない場合、ドキュメントの高さはブラウザの動作によって決定される。

R

width

いいえ

int

ブラウザでドキュメントを表示するために必要な HTML を生成するときにプレースホルダが占める幅をピクセル単位で指定する。

プレースホルダでは、表示サイズが適用されるコンテンツ タイプだけを対象に、他の属性によってそのドキュメントに対して定義されたサイズがまだない場合にのみこの値が使用される。

この値を指定せず、他の属性によって定義されてもいない場合、ドキュメントの幅はブラウザの動作によって決定される。

R


 

リスト 3-1 では、広告グループ「Car」内の広告を 1 つ選択し、200×400 ピクセルの領域内に描画します。

コード リスト 3-1 <ad:adTarget> タグの使用例

<%@ taglib uri="ad.tld" prefix="ad" %>
.
.
.
<ad:adTarget query="group == 'ads'" />

 


コンテンツ管理

コンテンツ管理コンポーネントには、4 種類の JSP タグが用意されています。 JSP 開発者はこれらのタグを使用して、パーソナライズされていないコンテンツを HTML ベースのページに組み込むことができます。 cm:select タグと cm:selectbyid タグでは、コンテンツ検索時にコンテンツをキャッシュすることができます。 これらのタグはどちらも本体をサポートせず、また使うこともありません。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<cm:getProperty>

タグ ライブラリ

cm.tld

インポート文

<%@ taglib uri="cm.tld" prefix="cm" %>

実装されるクラス

getPropertyTag

getPropertyExtraInfo


 

<cm:getProperty> タグは、指定されたコンテンツ メタデータ プロパティの値を取り出して、resultId で指定された変数に代入します。 このタグには本体はありません。 resultId が指定されない場合、<cm:printProperty> タグと同様に、値はページにインラインで埋め込まれます。 このタグは、Content オブジェクトだけでなく、任意の ConfigurableEntity に作用します。 ただし、ConfigurableEntity サクセサはサポートされません。

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

このタグは、コンテンツ管理システムからすでに取り出してあるデータを受け取るので、コンテンツ管理サービス プロバイダ インタフェース (SPI) への呼び出しは行いません。

タグの属性

表3-2 は、<cm:getProperty> タグの属性についての説明です。

表3-2 <cm:getProperty>

タグ属性

必須

データ型

解説

R/C

id


いいえ

String

取得するプロパティが入った Content のインスタンスを格納している JSP スクリプト変数の名前。

R

entity



いいえ

ConfigurableEntity


取得するプロパティが入った com.beasys.commerce.foundation.ConfigurableEntity オブジェクトを指定する。 この属性に null でない値が指定された場合、id 属性は無視される。 そうでない場合には、id の値が使用される。

R


name

はい

String

出力するプロパティの名前。

R

scope


いいえ

String

取得するプロパティのスコープ名。 指定しない場合、Document オブジェクトが想定する null が渡される。

R

resultId

いいえ

String

プロパティの値が入る JSP スクリプト変数の名前。 指定されない場合、プロパティの値は JSP の本体にインラインで埋め込まれる。 指定される場合、encodedefaultmaxLengthdateFormat、および numFormat の各属性は無視される。

C

resultType

いいえ

String

プロパティの Java データ型。 指定されない場合、java.lang.Object が使用される。

C

encode

いいえ

String

htmlurl、または none のいずれか。

R

default



いいえ

String

プロパティが見つからなかった場合や値が null の場合に出力される値。 この属性が未指定でプロパティ値が null の場合、何も出力されない。

R

maxLength


いいえ

String, int


出力するプロパティ値の最大長。 この属性を指定した場合、最大長よりも長い値は切り詰められる。

R

failOnError




いいえ

String, Boolean


この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): JSP 処理エラーを内々に処理し、エラーが発生しても何も出力しない。

true: 例外を送出する。 その例外をコード内で処理することも、通常のエラー ページを表示させることも、あるいはアプリケーション サーバにその例外を外部にわかるように処理させることもできる。

R

dateFormat



いいえ

String

プロパティが java.util.Date の場合に、それを出力するために用いられる java.text.SimpleDateFormat 文字列。プロパティが Date でない場合には、この属性は無視される。 この属性を設定しない場合、Date のデフォルトの toString メソッドが使用される。

R

numFormat





いいえ

String

プロパティが java.lang.Number の場合に、それを出力するために用いられる java.text.DecimalFormat 文字列。プロパティが Number でない場合には、この属性は無視される。 この属性を設定しない場合、Number のデフォルトの toString メソッドが使用される。

R


 

リスト 3-2<cm:getProperty> タグの使用方法の例です。doc に格納された Content オブジェクトから name プロパティの String 値を取得し、その値を contentName 変数に代入します。

コード リスト 3-2 <cm:getProperty> タグの使用例

<%@ taglib uri="cm.tld" prefix="cm" %>
.
.
.
<cm:getProperty resultId="contentName" resultType="String"
id="content" name="name" />
<es:notNull item="<%=contentName%>">
The name is not null.
</es:notNull>

<cm:printDoc>

タグ ライブラリ

cm.tld

インポート文

<%@ taglib uri="cm.tld" prefix="cm" %>

実装されるクラス

printDocTag


 

<cm:printDoc> タグは、Document オブジェクトの未処理バイトを JSP 出力ストリームにインラインで埋め込みます。 このタグは本体をサポートしておらず、また Document オブジェクトだけをサポートします。 このタグでは、テキストとバイナリ データは区別されません。


 

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

EJB/データ オブジェクト

SPI

1. Document.getIdentifier()

2. Document.getPropertyAsString()

3. Document.getContent()

4. DocumentManager.getContentBlock()

7. Document.getSize()

5. DocumentProvider.getDocument()

6. DocumentDef.openStream()

タグの属性

表3-3 は、<cm:printDoc> タグの属性についての説明です。

表3-3 <cm:printDoc> タグの属性

タグ属性

必須

データ型

解説

R/C

id


いいえ

String

取得するプロパティが入った Content のインスタンスを格納している JSP スクリプト変数の名前。

R

blockSize


いいえ

String, int


読み込むデータ ブロックのサイズ。 デフォルトは 8K。 バイト ブロック全体を 1 回の操作で読み込むには、0 以下の値を指定する。

R


start


いいえ

String, int


バイト データ内の読み込み開始位置を示すインデックスを指定する。 デフォルトは 0。

R

end


いいえ

String, int

バイト データ内の読み込み終了位置を示すインデックスを指定する。 デフォルトでは、バイト データの最後まで読み込む。

R


encode




いいえ

String

html、url、none のいずれか。

R


document




いいえ

Document

使用する com.bea.p13n.content.document.Document を指定する。 この属性に null 以外の値を指定した場合、id 属性は無視される。 そうでない場合には、id の値が使用される。

R

failOnError

いいえ

String, Boolean

この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): JSP 処理エラーを内々に処理し、エラーが発生しても何も出力しない。

true: 例外を送出する。 その例外をコード内で処理することも、通常のエラー ページを表示させることも、あるいはアプリケーション サーバにその例外を外部にわかるように処理させることもできる。

R

baseHref

いいえ

String

ドキュメントの BASE HREF の URL。 絶対 URL または相対 URL のどちらでも指定できる。

R


 

注意: baseHref が指定されている場合、<cm:printDoc> タグは、baseHref パラメータの値を使用して起点の <BASE HREF> を出力します。 baseHref の URL が不完全な場合、欠けている部分は、最も外側のページの URL に基づいて補われます。

また、baseHref が指定されている場合、<cm:printDoc> タグはドキュメントの出力後、最も外側のページの URL に基づいて <BASE HREF> を出力します。

リスト 3-3<cm:printDoc> タグの使用方法の例です。request 属性内の id から Document オブジェクトを取得し、その Document のテキスト(相対リンクを含む場合がある)をインラインに埋め込みます。

コード リスト 3-3 <cm:printDoc> タグの使用例

<%@ taglib uri="cm.tld" prefix="cm" %>
.
.
.
.<% String contentId = request.getParameter("contentId"); %>
<cm:selectById contentId="<%=contentId%>" id="doc" />
<cm:printDoc id="doc" blockSize="1000" baseHref="/ShowDocServlet" />

<cm:printProperty>

タグ ライブラリ

cm.tld

インポート文

<%@ taglib uri="cm.tld" prefix="cm" %>

実装されるクラス

printPropertyTag


 

<cm:printProperty> タグでは、指定されたコンテンツ メタデータ プロパティの値を文字列としてインラインに埋め込みます。 このタグには本体はありません。 このタグは、Content オブジェクトだけでなく、任意の ConfigurableEntity に作用します。 ただし、ConfigurableEntity サクセサはサポートされません。


 

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

このタグは、コンテンツ管理システムからすでに取り出してあるデータを受け取るので、コンテンツ管理サービス プロバイダ インタフェース (SPI) への呼び出しは行いません。

タグの属性

表3-4 は、<cm:printProperty> タグの属性についての説明です。

表3-4 <cm:printProperty>

タグ属性

必須

データ型

解説

R/C

id


いいえ

String

取得するプロパティが入った Content のインスタンスを格納している JSP スクリプト変数の名前。

R

name

はい

String

出力するプロパティの名前。

R

entity



いいえ

ConfigurableEntity

取得するプロパティが入った com.beasys.commerce.foundation.ConfigurableEntity オブジェクトを指定する。 この属性に null でない値が指定された場合、id 属性は無視される。 そうでない場合には、id の値が使用される。

R


scope


いいえ

String

取得するプロパティのスコープ名。 指定しない場合、Document オブジェクトが想定する null が渡される。

R

encode

いいえ

String

htmlurl、または none のいずれか。

R

default



いいえ

String

プロパティが見つからなかった場合や値が null の場合に出力される値。 この属性が未指定でプロパティ値が null の場合、何も出力されない。

R

maxLength


いいえ

String, int


出力するプロパティ値の最大長。 この属性を指定した場合、最大長よりも長い値は切り詰められる。

R

failOnError




いいえ

String, Boolean


この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): JSP 処理エラーを内々に処理し、エラーが発生しても何も出力しない。

true: 例外を送出する。 その例外をコード内で処理することも、通常のエラー ページを表示させることも、あるいはアプリケーション サーバにその例外を外部にわかるように処理させることもできる。

R

dateFormat



いいえ

String

プロパティが java.util.Date の場合に、それを出力するために用いられる java.text.SimpleDateFormat 文字列。プロパティが Date でない場合には、この属性は無視される。 この属性を設定しない場合、Date のデフォルトの toString メソッドが使用される。

R

numFormat




いいえ

String

プロパティが java.lang.Number の場合に、それを出力するために用いられる java.text.DecimalFormat 文字列。プロパティが Number でない場合には、この属性は無視される。 この属性を設定しない場合、Number のデフォルトの toString メソッドが使用される。

R


 

リスト 3-4 は、<cm:printProperty> タグの使用方法の例です。テキスト入力フィールドのデフォルト値を、doc に格納された Content オブジェクトの件名の先頭 75 文字に設定します。

コード リスト 3-4 <cm:printProperty> タグの使用例

<%@ taglib uri="cm.tld" prefix="cm" %>
.
.
.
<form action="javascript:void(0)">
Subject: <input type="text" size="75" name="subject"
value="<cm:printProperty id="doc" name="Subject" maxLength="75"
encode="html"/>" >
</form>

<cm:select>

タグ ライブラリ

cm.tld

インポート文

<%@ taglib uri="cm.tld" prefix="cm" %>

実装されるクラス

selectTag

selectExtraInfo


 

このタグでは、検索式のクエリ構文だけを使用してコンテンツを選択します。 このタグは本体をサポートせず、また使うこともありません。 このタグが <es:forEachInArray> タグ (<es:forEachInArray>を参照) を返した後で、Content オブジェクトの配列の反復処理にゼロを使用できます。 このタグは、ContentManager インタフェースを通じて、汎用の Content をサポートします。


 

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

タグの属性

表3-5 は、<cm:select> タグの属性についての説明です。

表3-5 <cm:select> タグの属性

タグ属性

必須

データ型

解説

R/C

contentHome




いいえ

String

コンテンツの検索に使用する ContentManager EJB ホームの JNDI 名。 この名前の JNDI オブジェクトは、ContentManager インタフェースを実装するオブジェクトを返す create メソッドを実装しなければならない。 この属性を指定しない場合、システムはデフォルトのコンテンツ ホームを探索する。

R

max


いいえ

String, long


返されるコンテンツ項目の最大数を制限する。 この属性を指定しないか、ゼロ以下の値を指定した場合、見つかったコンテンツ項目がすべて返される。

R

sortBy




いいえ

String

コンテンツのソートに使用するドキュメント属性を列挙する。 形式は SQL の order by 句の構文に従う。 ソートの指定は、メタデータ属性名とキーワード ASC および DESC の列挙に限られる。

例:

sortBy="creationDate"

sortBy="creationDate ASC, title DESC"

R

failOnError



いいえ

String, Boolean


この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): JSP 処理エラーを内々に処理し、エラーが発生すると空の配列を返す。

true: 例外を送出し、それによって JSP ページの処理が停止する。 その例外をコード内で処理することも、通常のエラー ページを表示させることも、あるいはアプリケーション サーバにその例外を外部にわかるように処理させることもできる。

R

id


はい

String

このタグの処理終了後に Content オブジェクトの配列が入る JSP スクリプト変数の名前。

C

query



いいえ

String

コンテンツの検索に使われるコンテンツ クエリ文字列。

例: query="mimetype contains 'text' && author='Proulx'".

クエリ構築の詳細については、http://edocs.beasys.co.jp/e-docs/wlp/docs70/dev/conmgmt.htm の『開発者ガイド』の「コンテンツ クエリの作成」を参照。

R

expression



いいえ

Expression

コンテンツの検索に使用する com.beasys.commerce.foundation.expression.Expression オブジェクト。 この属性が null または未指定の場合、query 属性を指定しなければならない。 この属性に null 以外の値を指定した場合、query 属性は無視される。

R


useCache




いいえ

String, Boolean


Content をキャッシュするかどうかを指定する。

この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): ContentCache は使用されない。 false(または未指定)の場合、cacheIdcacheScope、および cacheTimeout の各属性の設定は無視される。

true: ContentCache が使われる。

R

cacheId




いいえ

String

Content をキャッシュするために使われる識別子名。 内部的には、キャッシュは Map として実装され、この属性はそのキーとなる。 この属性を指定しない場合、タグの id 属性が使われる。

R

cacheTimeout




いいえ

String, long


キャッシュされた Content の有効時間(ミリ秒単位)。 Content がキャッシュされてからこの時間が経過すると、キャッシュされた Content はクリアされ、再び取得されてからキャッシュに置かれる。

タイムアウトしない(常にキャッシュされた Content を使用する)場合には -1 を指定する。 デフォルトは -1。

R

cacheScope






いいえ

String

コンテンツ キャッシュのライフサイクル スコープを指定する。 <jsp:useBean> と同様。

この変数が取り得る値:

R

contextParams



いいえ

String または java.util.Map

ContentManager に渡す追加の検索パラメータ。 ContentManager の実装によっては、この属性がサポートされていることがある。

R

readOnly




無視される


この属性は非推奨となり、今後は使用されない。 この属性が見つかっても無視される。



 

リスト 3-5<cm:select> タグの使用方法の例です。ContentCache を使用して、その日の夕方のニュース記事であることを示す Content オブジェクトの最初の 5 つのテキストを検索し、それらのタイトルをリストに出力します。

コード リスト 3-5 <cm:select> タグの使用例

<%@ taglib uri="cm.tld" prefix="cm" %>
.
.
.
<cm:select contentHome="<%=ContentHelper.DEF_CONTENT_MANAGER_HOME%>" max="5" useCache="true" cacheTimeout="300000" cacheId="Evening News" sortBy="creationDate ASC, title ASC" query="
type = `News' && timeOfDay = `Evening' && mimetype like
`text/*' " id="newsList"/>
<ul>
<es:forEachInArray array="<%=newsList%>" id="newsItem"
type="com.bea.p13n.content.Content">
<li><cm:printProperty id="newsItem" name="Title"
encode="html" />
</es:forEachInArray>
</ul>

<cm:selectById>

タグ ライブラリ

cm.tld

インポート文

<%@ taglib uri="cm.tld" prefix="cm" %>

実装されるクラス

selectByIDTag

selectByIDExtraInfo


 

<cm:selectById> タグ(表3-6)は、Content の固有の識別子を使ってコンテンツを検索します。 このタグには本体はありません。 このタグは基本的には select タグのラッパーです。 文字列で指定可能な主キーを持つ、すべての Content オブジェクトに対して機能します。


 

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

タグの属性

表3-6 は、<cm:selectById> タグの属性についての説明です。

表3-6 <cm:selectById>

タグ属性

必須

データ型

解説

R/C

contentHome




いいえ

String

コンテンツの検索に使用する ContentManager EJB ホームの JNDI 名。 この名前の JNDI オブジェクトは、ContentManager インタフェースを実装するオブジェクトを返す create メソッドを実装しなければならない。 この属性を指定しない場合、システムはデフォルトのコンテンツ ホームを探索する。

R

contentId

はい

String

コンテンツの断片の文字列識別子。

R

onNotFound



いいえ

String


contentId で指定されたコンテンツ オブジェクトが見つからない場合の振る舞いを制御する。 この属性が設定されていれば、その値をメッセージとして例外 (Exception) が送出され、指定されていなければタグは null を返す。

R

failOnError




いいえ

String, Boolean


この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): JSP 処理エラーを内々に処理し、エラーが発生した場合 null を返す。

true: 例外を送出し、それによって JSP ページの処理が停止する。 その例外をコード内で処理することも、通常のエラー ページを表示させることも、あるいはアプリケーション サーバにその例外を外部にわかるように処理させることもできる。

R

id



はい

String

このタグの処理終了後に Content オブジェクトが入る JSP スクリプト変数の名前。 指定された識別子を持つ Content オブジェクトが存在しなければ、変数には null が代入される。

C

useCache




いいえ

String, Boolean


Content をキャッシュするかどうかを指定する。

この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): ContentCache は使用されない。 false(または未指定)の場合、cacheIdcacheScope、および cacheTimeout の各属性の設定は無視される。

true: ContentCache が使われる。

R

cacheId





いいえ

String

Content をキャッシュするために使われる識別子名。 内部的には、キャッシュは Map として実装され、この属性はそのキーとなる。

この属性を指定しない場合、タグの id 属性が使われる。

R

cacheTimeout




いいえ

String, long


キャッシュされた Content の有効時間(ミリ秒単位)。 Content がキャッシュされてからこの時間が経過すると、キャッシュされた Content はクリアされ、再び取得されてからキャッシュに置かれる。

タイムアウトしない(常にキャッシュされた Content を使用する)場合には -1 を指定する。 デフォルトは -1。

R

cacheScope





いいえ

String

コンテンツ キャッシュのライフサイクル スコープを指定する。 <jsp:useBean> と同様。

この変数が取り得る値:

R

contextParams



いいえ

String または java.util.Map

ContentManager に渡す追加の検索パラメータ。 ContentManager の実装によっては、この属性がサポートされていることがある。

R

readOnly

無視される


この属性は非推奨となり、今後は使用されない。 この属性が見つかっても無視される。



 

リスト 3-6<cm:selectById> タグの使用方法の例です。コンテンツ キャッシュを有効にし、識別子 1234 を指定して Document をフェッチし、そのコンテンツをインラインで埋め込みます。

コード リスト 3-6 <cm:selectById > タグの使用例

<%@ taglib uri="cm.tld" prefix="cm" %>
.
.
.
<cm:selectById contentHome="<%=ContentHelper.DEF_CONTENT_MANAGER_HOME%>"
contentId="contentportlet/sports1.htm"
id="doc" useCache="true" cacheTimeout="300000" cacheId="1234" />
<cm:printDoc id="doc" />

 


国際化

これらのタグは、国際化する必要のある JSP ページをローカライズする際に使われます。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

注意: <i18n> タグを使用して、JSP で表示するためのローカライズされたコンテンツを含むリソース バンドル ファイルを指定することができます。. リソース バンドル コンテンツが更新されているかどうかを WebLogic Portal がチェックする間隔設定についての詳細は、http://edocs.beasys.co.jp/e-docs/wlp/docs70/admin/sysadmin.htm にある『管理者ガイド』の「インターナショナライズのパフォーマンスのチューニング」を参照してください。

<i18n:localize>

タグ ライブラリ

i18n.tld

インポート文

<%@ taglib uri="i18n.tld" prefix="i18n" %>

実装されるクラス

LocalizeTag

LocalizeExtraInfo


 

このタグでは、<i18n:getmessage> タグを通じてリソース バンドルにアクセスするときにページ内で使われる言語コード、国別コード、ロケール変化形、および基本バンドル名を定義できます。

このタグでは、JSP ページに対して指定される文字コード化方式とコンテンツ タイプも指定します。 そのため、このタグは、バイト データが正しくコード化されるように、できるだけページの始めの方(出力ストリームに書き込みを行う前)で使用しなければなりません。


 

HTML ページがより大きいページに組み込まれる場合には、<i18n:localize> タグは親ページ(組み込む側のページ)でしか使用できません。 <i18n:localize> タグでそのページのコード化方式が設定される一方で、コード化方式は応答の出力ストリームにバイト データを書き込む前に親ページで設定されなければならないことがその理由です。 親ページでは、その中に組み込まれるページだけでなく、そのページ上のあらゆるコンテンツにも十分対応できるコード化方式を設定しなければなりません。

すべての文字列を <i18n:getMessage> タグで動的に取り出し、文字列を JSP ページに静的に埋め込むのを避ける(つまり、文字列をハードコード化するのを避ける)のが望ましいアプローチです。

ページに動的文字列(<i18n:getMessage tag> タグを使って取り出す文字列)だけが含まれている場合は、<i18n:localize> タグを、JSP 仕様で定義されている <%@ page contentType="<something>" > ページ ディレクティブと併用しないでください。 <i18n:localize> タグを使う場合には同ディレクティブは不要であり、同ディレクティブを一緒に使うと、結果的に contentType 宣言が矛盾したり誤ったものになるおそれがあります。

同一ページ内に静的文字列と動的文字列を混在させる必要がある場合、同ページ ディレクティブを使う必要が出てきます。 必ず、<i18n:localize> タグで指定される文字セットと、同ページ ディレクティブで指定される文字セットの互換性を保つようにしてください。

タグの属性

表3-7 は、<i18n:localize> タグの属性についての説明です。

表3-7 <i18n:localize> タグの属性

タグ属性

必須

データ型

解説

R/C

bundleName

いいえ

String

MessageBundle の基本名は、JSP ページ用のローカライズされたテキストを取り出すために使われる。

リソース バンドル コンテンツが更新されているかどうかを WebLogic Portal がチェックする間隔設定についての詳細は、http://edocs.beasys.co.jp/e-docs/wlp/docs70/admin/sysadmin.htm にある『管理者ガイド』の「インターナショナライズのパフォーマンスのチューニング」を参照。

R

language




いいえ

String
または
String []


ユーザの使用言語を示す文字列(2 文字の ISO 言語コード)、またはユーザの使用言語コードのリストを優先度の高い順に格納した String[](String 配列)。

R

country




いいえ


String

2 文字の ISO 国別コード。 たとえばこのコードは、英語を話す英国在住のユーザではなく、英語を話す米国在住のユーザ向けにローカライズされたテキストを格納した MessageBundle を探すなどの目的に使われる。

R

variant




いいえ

String

ロケールの変化形を表す文字列。 この変化形は、言語コードと国別コードだけでは表しきれない詳細なロケールがローカライゼーションに必要な場合に使われる。

R

locale




いいえ

java.util.Locale


言語、国、およびロケール変化形を文字列として指定する代わりに、java.util.Locale オブジェクトを指定できる。 これが指定された場合、その Locale の language、country、および variant の各フィールド値が有効になり、このタグの language、country、および variant の各属性に文字列で指定された値はすべて無効になる。

R

charset

いいえ

String

このページで使用する文字コード化方式セットの名前。 選択された言語のコード化方式を特定できない場合のデフォルトは「UTF-8」。特定できる場合、選択された言語に適したコード化方式が使われる。

R

contentType

いいえ

String

ページに含まれているコンテンツのタイプ(デフォルトは「text/html」)。

R


 

例 1

リスト 3-7 の例では、<i18n:localize> タグを使用して単一の使用言語を定義します。

コード リスト 3-7 <i18n:localize> タグの使用例 (その 1)

<%@ taglib uri="i18n.tld" prefix="i18n" %>
.
.
.
<%
// 使用言語を 1 つだけ定義
String language = "en";
%>

<i18n:localize language="<%=language%>" bundleName="i18nExampleResourceBundle"/> 
<html>
<body>
<i18n:getMessage messageName="greeting"/>
</body>
</html>

例 2

リスト 3-8 の例では、<i18n:localize> タグを使用して 2 つの使用言語(英語とスペイン語)を定義します。

コード リスト 3-8 <i18n:localize> タグの使用例 (その 2)

<%@ taglib uri="i18n.tld" prefix="i18n" %>
.
.
.
<%
// 使用言語を 2 つ定義する配列
// (優先順位は、英語、スペイン語の順)
String[] languages = new String[] { "en", "es" };

%>
<i18n:localize language="<%=languages%>" bundleName="i18nExampleResourceBundle"/> 
<html>
<body>
<i18n:getMessage messageName="greeting"/>
</body>
</html>

<i18n:getMessage>

タグ ライブラリ

i18n.tld

インポート文

<%@ taglib uri="i18n.tld" prefix="i18n" %>

実装されるクラス

GetMessageTag

GetMessageExtraInfo


 

このタグは、<i18:localize> タグと組み合わせて、ローカライズされた静的テキストやメッセージを JspMessageBundle から取り出すために使用します。


 

タグの属性

表3-8 は、<i18n:getMessage> タグの属性についての説明です。

表3-8 <i18n:getMessage> タグの属性

タグ属性

必須

データ型

解説

R/C

id

いいえ

String

JSP ページ内のラベル(またはメッセージ)の値を格納する。

C

messageName

はい

String

メッセージ バンドルに対するキー。

R

messageArgs

いいえ

Object []

メッセージ バンドルに渡される引数。 引数が指定されない場合、(メッセージではなく)静的テキストが返されるものと仮定される。

たとえば、引数として {"Wednesday", "78"} を渡し、「Today is Wednesday, and the temperature is 78 degrees Fahrenheit.」のようなメッセージを合成する目的でこの属性を使用する。

R

bundleName

いいえ

String

<i18n:localize> タグで正しく初期化されていれば、特定のタグ呼び出しで異なったバンドルを使いたい場合を除いて、このタグ属性を指定する必要はない。

リソース バンドル コンテンツが更新されているかどうかを WebLogic Portal がチェックする間隔設定についての詳細は、http://edocs.beasys.co.jp/e-docs/wlp/docs70/admin/sysadmin.htm にある『管理者ガイド』の「インターナショナライズのパフォーマンスのチューニング」を参照。

R

language

いいえ

String

<i18n:localize> タグで正しく初期化されていれば、特定のタグ呼び出しで異なった言語コードを使いたい場合を除いて、このタグ属性を指定する必要はない。

R

country

いいえ

String

<i18n:localize> タグで正しく初期化されていれば、特定のタグ呼び出しで異なった国別コードを使いたい場合を除いて、このタグ属性を指定する必要はない。

R

variant

いいえ

String

<i18n:localize> タグで正しく初期化されていれば、特定のタグ呼び出しで異なったロケール変化形を使いたい場合を除いて、このタグ属性を指定する必要はない。

R

locale

いいえ

java.util.Locale

<i18n:localize> タグで正しく初期化されていれば、特定のタグ呼び出しで異なったロケール(言語コード、国別コード、およびロケール変化形)を使いたい場合を除いて、このタグ属性を指定する必要はない。

R


 

例 1

リスト 3-9 の内容を JSP に組み込むと、次の出力が生成されます。

Welcome To This Page! 14 out of 100 files have been saved.

コード リスト 3-9

<%@ taglib uri="i18n.tld" prefix="i18n" %>
.
.
.
<%
// 使用言語を 1 つだけ定義
String language = "en";
//メッセージ引数の作成 
Object[] args = new Object[]
{
new Integer(14),
new Integer(100)
};
%>
<i18n:localize language="<%=language%>" bundleName="i18nExampleResourceBundle"/> 
<html>
<body>
<i18n:getMessage messageName="greeting"/>
<i18n:getMessage messageName="message" messageArgs="<%=args%>"/>
</body>
</html>

次のコードは、i18nExampleResourceBundle.properties という名前のプロパティ ファイル内のエントリを示します。

greeting=Welcome To This Page!
message={0} out of {1} files have been saved.

 


パーソナライゼーション タグ

<pz:div><pz:contentSelector>、および <pz:contentQuery> の各タグでは、それぞれ Advisor を使用してのユーザの分類、コンテンツの選択、およびコンテンツの取得を行います。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

この節では、以下の内容について説明します。

pz タグと内部キャッシュ

コンテンツ検索用の contextParams は、検索単位のコンフィグレーション属性をサポートし、内部キャッシュを使用するかどうかの判断に使用できます。 <cm:select> タグおよび <cm:selectById> タグは、contextParams の設定をサポートしますが、pz タグにはこの機能はありません。 <pz:contentSelector> タグで内部キャッシュの使用を制御するには、次の方法に従います。

<pz:content*> タグに次の内容を追加します。
contextParams="someName=someValue"

次のような実行時式の使用が推奨されます。
contextParams='<%="aName=aValue bName=bValue cName=cValue"%>'

<pz:contentQuery>

タグ ライブラリ

pz.tld

インポート文

<%@ taglib uri="pz.tld" prefix="pz" %>

実装されるクラス

ContentQueryTag

ContentQueryExtraInfo


 

<pz:contentQuery> タグでは、コンテンツ マネージャ内のコンテンツを対象にコンテンツ属性検索を実行します。 useCache 属性が true に設定されている場合、コンテンツ管理クエリの結果がキャッシュされます。 このタグには開始タグしかなく、本体と終了タグはありません。 このタグは、コンテンツ クエリの実行結果としてコンテンツ マネージャから返された Content オブジェクトの配列を返します。

こうして返される Content オブジェクトに JSP 開発者がアクセスするために必要なパーソナライゼーション コンテンツ タグには、以下のものがあります。

オブジェクト配列イテレータ タグ。 このタグを使用すると、配列内の Content オブジェクトに対して反復処理を行うことができます。 Object の配列に対して反復処理を行うには、<es:forEachInArray> タグを使用します (詳細については、<es:forEachInArray> を参照)。

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

タグの属性

表3-9 は、<pz:contentQuery> タグの属性についての説明です。


 

表3-9 <pz:contentQuery> タグの属性

タグ属性

必須

データ型

解説

R/C

max

いいえ

String, long

返されるコンテンツ項目の最大数を制限する。 この属性を指定しない場合、見つかったコンテンツ項目がすべて返される。

R

sortBy

いいえ

String

コンテンツのソートに使用するドキュメント属性を列挙する。 形式は SQL の order by 句の構文に従う。 ソートの指定は、メタデータ属性名とキーワード ASC および DESC の列挙に限られる。

例:

sortBy="creationDate"

sortBy="creationDate ASC, title DESC"

R

query

はい

String

コンテンツの検索に使われるコンテンツ クエリ文字列。

例:
query= "mimetype contains `text' && author=`Proulx'"

クエリ構築の詳細については、http://edocs.beasys.co.jp/e-docs/wlp/docs70/dev/conmgmt.htm の『開発者ガイド』の「コンテンツ クエリの作成」を参照。

R

contentHome



はい


String


ContentManager EJB ホームの JNDI 名。 この名前の JNDI オブジェクトは、ContentManager インタフェースを実装するオブジェクトを返す create メソッドを実装しなければならない。

詳細については、contentHome の値を指定するを参照。

R

id



はい

String


見つかったコンテンツ オブジェクトを格納する配列変数の名前。 コンテンツが見つからない場合、Content オブジェクトの空の配列(null ではない)が変数に格納される。

C

useCache



いいえ


String, Boolean


Content をキャッシュするかどうかを指定する。

この属性の取り得る値は、以下の 2 つのいずれか。

false (デフォルト値): ContentCache は使用されない。 false(未指定)の場合、cacheIdcacheScope、および cacheTimeout の各属性の設定は無視される。

true: ContentCache が使われる。

R

cacheId




いいえ


String


Content をキャッシュするために使われる識別子名。 内部的には、キャッシュは Map として実装され、この属性はそのキーとなる。 この属性を指定しない場合、タグの id 属性が使われる。

R

cacheTimeout



いいえ


String, long


キャッシュされた Content の有効時間(ミリ秒単位)。 Content がキャッシュされてからこの時間が経過すると、キャッシュされた Content はクリアされ、再び取得されてからキャッシュに置かれる。

タイムアウトしない(常にキャッシュされた Content を使用する)場合には -1 を指定する。 デフォルトは -1。

R

cacheScope

いいえ

String


コンテンツ キャッシュのライフサイクル スコープを指定する。 <jsp:useBean> と同様。

この変数が取り得る値:

R



 

リスト 3-10 は、<pz:contentQuery> タグの使用方法の例です。

コード リスト 3-10 <pz:contentQuery> タグの使用例

<%@ page import="bea.p13n.content.ContentHelper" %>
<%@ taglib uri="es.tld" prefix="es" %>
<%@ taglib uri="cm.tld" prefix="cm" %>
<%@ taglib uri="pz.tld" prefix="pz" %>
.
.
.
<pz:contentQuery id="docs" contentHome="<%=ContentHelper.DEF_DOCUMENT_MANAGER_HOME%>"
query="author = 'Hemingway'" />
<ul>
 <es:forEachInArray array="<%=docs%>" id="aDoc"
type="com.bea.p13n.content.Content">
<li>The document title is: <cm:printProperty id="aDoc"
name="Title" encode="html" />
</es:forEachInArray>
</ul>

<pz:contentSelector>

タグ ライブラリ

pz.tld

インポート文

<%@ taglib uri="pz.tld" prefix="pz" %>

実装されるクラス

ContentSelectorTag

ContentSelectorExtraInfo


 

<pz:contentSelector> タグを使用すると、コンテンツ セレクタ ルールに基づいて、パーソナライズされた任意のコンテンツを推奨できるようになります。

コンテンツ セレクタ ルールはまず、E-Business Control Center で定義された 1 セットの条件 (たとえば、あるユーザが指定した分類に当てはまるかどうか) を評価します。 条件が true と評価されると、E-Business Control Center で定義されたコンテンツ クエリに基づいて、コンテンツが Content Manager から取り出されます。

注意: ルールは、E-Business Control Center を使って作成します。 この GUI ツールは、ビジネス アナリスト (BA) が独自の顧客セグメントを開発できるように設計されています。 ビジネス アナリストはルールの概念に詳しくないため、コンテンツ セレクタ ルールのことを単に「コンテンツ セレクタ」、また分類子ルールを「顧客セグメント」と呼ぶことがあります。

コンテンツ セレクタ ルールの結果をキャッシュするには、useCache 属性を true に設定します。 キャッシュがタイムアウトしていなければ、<pz:contentSelector> タグへの後続の呼び出しは、そのコンテンツ クエリを再評価することなくキャッシュされた値を返します。

<pz:contentSelector> タグには開始タグしかなく、本体と終了タグはありません。 このタグは、コンテンツ クエリの実行結果として Content Manager から返された Content オブジェクトの配列を返します。

返される Content オブジェクトに JSP 開発者がアクセスするために必要なタグには、以下のものがあります。

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

タグの属性

表3-10 は、<pz:contentSelector> タグの属性についての説明です。

表3-10 <pz:contentSelector> タグの属性

タグ属性

必須

データ型

解説

R/C

rule

はい

String

E-Business Control Center で作成されたコンテンツ セレクタ定義内でのコンテンツ セレクタの名前。

R

contentHome

はい

String

ContentManager EJB ホームの JNDI 名。 この名前の JNDI オブジェクトは、ContentManager インタフェースを実装するオブジェクトを返す create メソッドを実装しなければならない。

詳細については、contentHome の値を指定するを参照。

R

max

いいえ

String, long

返されるコンテンツ項目の最大数を制限する。 未指定または -1 に設定された場合、見つかったコンテンツ項目がすべて返される。

R

sortBy

いいえ

String

コンテンツのソートに使用するドキュメント属性を列挙する。 形式は SQL の order by 句の構文に従う。 ソートの指定は、メタデータ属性名とキーワード ASC および DESC の列挙に限られる。

例:

sortBy="creationDate"

sortBy="creationDate ASC, title DESC"

R

query

いいえ

String

コンテンツの検索に使われるコンテンツ クエリ文字列。 このクエリは、ビジネス アナリストが E-Business Control Center で作成したどのクエリよりも優先される。

例: query="mimetype contains 'text' && author='Salinger'"

クエリ構築の詳細については、http://edocs.beasys.co.jp/e-docs/wlp/docs70/dev/conmgmt.htm の『開発者ガイド』の「コンテンツ クエリの作成」を参照。

R

id

はい

String

見つかったコンテンツ オブジェクトを格納する配列変数の名前。 コンテンツが見つからない場合、Content オブジェクトの空の配列(null ではない)が変数に格納される。

C

useCache

いいえ

String, Boolean

Content をキャッシュするかどうかを指定する。

この属性の取り得る値は、以下の 2 つのいずれか。

false(デフォルト値): ContentCache は使用されない。 false(未指定)の場合、cacheId、cacheScope、および cacheTimeout の各属性の設定は無視される。

true: ContentCache が使われる。

R

cacheId

いいえ

String

Content をキャッシュするために使われる識別子名。 内部的には、キャッシュは Map として実装され、この属性はそのキーとなる。 この属性を指定しない場合、タグの id 属性が使われる。

R

cacheTimeout

いいえ

String, long

キャッシュされた Content の有効時間(ミリ秒単位)。 Content がキャッシュされてからこの時間が経過すると、キャッシュされた Content はクリアされ、再び取得されてからキャッシュに置かれる。

タイムアウトしない(常にキャッシュされた Content を使用する)場合には -1 を指定する。 デフォルトは -1。

R

cacheScope




いいえ

String

コンテンツ キャッシュのライフサイクル スコープを指定する。 <jsp:useBean> と同様。

この変数が取り得る値:

R



 

contentHome の値を指定する

コンテンツ セレクタ タグでは、contentHome を使って、コンテンツ管理システムの JNDI ホームを指定する必要があります。 参考版またはサードパーティ製のコンテンツ管理システムを使用している場合、スクリプトレットを使ってデフォルトのコンテンツ ホームを参照することができます。 スクリプトレットは ContentHelper クラスを使うので、先に、以下のタグを使ってクラスを JSP にインポートしておく必要があります。

<%@ page import="com.bea.p13n.content.ContentHelper"%>

次に、コンテンツ セレクタ タグを使うときに、以下のようにして contentHome を指定します。

<pz:contentSelector
contentHome="<%=ContentHelper.DEF_DOCUMENT_MANAGER_HOME %>"
... />

独自のコンテンツ管理システムを作成する場合、ContentHelper スクリプトレットを使うのでなく、JNDI ホームを指定する必要があります。 また、独自のコンテンツ管理システムで JNDI ホームが指定されている場合は、ContentHelper スクリプトレットを使う代わりに、その JNDI ホームを指定することができます。

リスト 3-10 は、<pz:contentSelector> タグの使用方法の例です。

コード リスト 3-11 <pz:contentSelector> タグの使用例

<%@ page import="com.bea.p13n.content.ContentHelper" %>
<%@ taglib uri="es.tld" prefix="es" %>
<%@ taglib uri="cm.tld" prefix="cm" %>
<%@ taglib uri="pz.tld" prefix="pz" %>
<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getProfile profileKey="bob"
profileId="myProfile" scope="session"/>
<pz:contentSelector rule="PremierCustomerSpotlight"
contentHome="<%=ContentHelper.DEF_DOCUMENT_MANAGER_HOME %>"
id="docs" />
<ul>
<es:forEachInArray array="<%=docs%>" id="aDoc"
type="com.bea.p13n.content.Content">
<li>The document title is: <cm:printproperty id="aDoc"
name="Title" encode="html" />
</es:forEachInArray>
</ul>

注意: max 属性と組み合わせて使われるときの sortBy 属性の作用は、明示的な属性(システム定義)と暗黙的な属性(ユーザ定義)の場合で異なります。 明示的属性(identifier、mimeType、size、version、author、creationDate、modifiedBy、modifiedDate、lockedBy、description、またはcomments)を基準にしてソートする場合、そのソートはデータベース上で行われます。したがって、max="10"sortBy を組み合わせると、システムはソートを行ってから最初の 10 項目を取得します。 暗黙的属性を基準にしてソートする場合、max 属性で指定した数の項目が選択されたでソートが行われます。

<pz:div>

タグ ライブラリ

pz.tld

インポート文

<%@ taglib uri="pz.tld" prefix="pz" %>

実装されるクラス

DivTag

DivTagExtraInfo


 

<pz:div> タグでは、ルール エンジンによる分類子ルールの実行結果として、条件に従ってコンテンツの断片を取り込むことができます。 ユーザのプロファイルが E-Business Control Center で指定された分類に一致する場合、条件に合ったコンテンツが取り込まれます。 このタグには、開始タグ、本体、および終了タグがあります。 このタグは、ユーザが属する Classification オブジェクトのリストを返します。

タグの属性

表3-11 は、<pz:div> タグの属性についての説明です。

表3-11 <pz:div> タグの属性

タグ属性

必須

データ型

解説

R/C

rule


はい

String

E-Business Control Center で作成された顧客セグメント定義内での分類子ルールの名前。

R

id

いいえ

String

特定の分類子ルールに関してユーザに適用される Classification オブジェクトを格納するコレクション。

C


 

<%@ taglib uri="pz.tld" prefix="pz" %>
<%@ taglib uri="um.tld" prefix="um" %>

<um:getProfile profileKey="bob"
profileId="myProfile" scope="session"/>
<pz:div id="classifications" rule="PremierCustomer">
<% 
//ユーザが「主要顧客」に分類される場合、1 つのエントリがあるリストが返される//
java.util.Iterator iterator=classifications.iterator();
while (iterator.hasNext())
{
com.bea.p13n.user. Classification classification=(Classification) iterator.next();
out.println (classification.getName());
}
%>
   <p>新しいお得意様優待プログラムを開始しました。<p>
</pz:div>

 


プレースホルダ

プレースホルダ タグは、JSP 上で名前付きの位置として機能します。 プレースホルダの動作は、E-Business Control Center を使って定義します。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<ph:placeholder>

タグ ライブラリ

ph.tld

インポート文

<%@ taglib uri="ph.tld" prefix="ph" %>>

実装されるクラス

PlaceholderTag


 

<ph:placeholder> タグは、プレースホルダを実装するタグです。プレースホルダは、JSP ページ上の特定の位置における動作を定義します。 プレースホルダは、E-Business Control Center を使って定義します。

複数のプレースホルダ タグが同一のプレースホルダを参照していてもかまいません。 プレースホルダ タグは、それぞれのプレースホルダ定義を、インスタンスごとに個別に呼び出します。 プレースホルダ定義が複数のクエリを指定している場合、プレースホルダ タグの各インスタンスの定義が同一の場合でも、インスタンスごとに別々の広告を表示できます。

広告プレースホルダを持つ JSP のリクエストを WebLogic Portal が受信すると、プレースホルダ タグは広告サービス(表示する広告を決定するビジネス ロジックを呼び出すセッション EJB)に問い合わせます。

関連するタグの詳細については、「<ad:adTarget>」を参照してください。

タグとコンテンツ管理サービス プロバイダ インタフェースとのマッピング

以下の表は、タグが、コンテンツ管理サービス プロバイダ インタフェース (SPI) 内のメソッドにアクセスする方法を示したものです。 この表では、呼び出しの順序についても示しています。

タグの属性

表3-12 は、<ph:placeholder> タグの属性についての説明です。

表3-12 <ph:placeholder> タグの属性

タグ属性

必須

データ型

解説

R/C

name


はい


String


プレースホルダ定義を参照する文字列。

R

height

いいえ

int

ブラウザでドキュメントを表示するために必要な HTML を生成するときにプレースホルダが占める高さをピクセル単位で指定する。

プレースホルダでは、表示サイズが適用されるコンテンツ タイプだけを対象に、他の属性によってそのドキュメントに対して定義されたサイズがまだない場合にのみこの値が使用される。

この値を指定せず、他の属性によって定義されてもいない場合、ドキュメントの高さはブラウザの動作によって決定される。

R

width

いいえ

int

ブラウザでドキュメントを表示するために必要な HTML を生成するときにプレースホルダが占める幅をピクセル単位で指定する。

プレースホルダでは、表示サイズが適用されるコンテンツ タイプだけを対象に、他の属性によってそのドキュメントに対して定義されたサイズがまだない場合にのみこの値が使用される。

この値を指定せず、他の属性によって定義されてもいない場合、ドキュメントの幅はブラウザの動作によって決定される。

R


 

リスト 3-12 は、MainPageBanner プレースホルダで指定された広告を表示する例です。

コード リスト 3-12 <ph:placeholder> タグの使用例

<%@ taglib uri="ph.tld" prefix="ph" %>
.
.
.
<ph:placeholder name="/placeholders/MainPageBanner.pla"/>

 


プロパティ セット

プロパティ セット タグを使用すると、利用可能なプロパティとプロパティ セットのリストにアクセスできるようになります。 プロパティ セットの操作は、E-Business Control Center を使用して行います。

すべてのプロパティ セットタグは、結果を同じファイルに送ります。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置します。

<%@ page import="com.bea.p13n.property.servlets.jsp.taglib.PropertySetTag-
Constants" %>

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<ps:getPropertyNames>

タグ ライブラリ

ps.tld

インポート文

<%@ taglib uri="ps.tld" prefix="ps" %>

実装されるクラス

GetPropertyNamesTag

GetPropertyNamesExtraInfo


 

<ps:getPropertyNames> タグは、指定されたプロパティ セット内のプロパティ名のリストを取得するために使用します。


 

タグの属性

表3-13 は、<ps:getPropertyNames> タグの属性についての説明です。

表3-13 <ps:getPropertyNames>

タグ属性

必須

データ型

解説

R/C

propertySetName

はい

String

新しい検索の対象となるプロパティ セットの名前。

R

propertySetType

はい

String

検索するプロパティ セットのタイプ。

R

id

はい

String

プロパティ名のリストを格納する変数(String 配列)の識別子 (id)。

C

result

いいえ

String

操作の結果に応じて作成および初期化される Integer 型変数の識別子。

この変数が取り得る値:

クエリが正常に実行された場合:
PropertySetTagConstants.PROPERTY_SEARCH_OK

プロパティ名のリストを取得する際に問題があった場合:
PropertySetTagConstants.PROPERTY_SEARCH_FAILED

propertySetNamepropertySetType で指定されたプロパティ セットが見つからなかった場合:
PropertySetTagConstants.INVALID_PROPERTY_SET

C


 

リスト 3-13 は、<ps:getPropertyNames> タグの使用方法の例です。

コード リスト 3-13 <ps:getPropertyNames> タグの使用例

<%@ taglib uri="ps.tld" prefix="ps" %>
<%@ page import= 
"com.bea.p13n.property.servlets.jsp.taglib.PropertySetTagConstants"
%>
<% String myPropertySet="Demographics"; %>
<p> ------- <b>ps:getPropertyNames</b> -------------
<br>
<ps:getPropertyNames propertySetName="<%= myPropertySet %>"
propertySetType="USER" id="propertyNames" result="myResult"/>
<% for (int i=0; i<propertyNames.length; i++) 
out.println(propertyNames[i] + "<br>"); 
%>

<ps:getPropertySetNames>

タグ ライブラリ

ps.tld

インポート文

<%@ taglib uri="ps.tld" prefix="ps" %>

実装されるクラス

GetPropertySetNamesTag

GetPropertySetNamesExtraInfo


 

<ps:getPropertySetNames> タグ (表3-14) は、指定されたプロパティ セット タイプのプロパティ セットのリストを取得するために使用します。

タグの属性

表3-14 は、<ps:getPropertySetNames> タグの属性についての説明です。

表3-14 <ps:getPropertySetNames>

タグ属性

必須

データ型

解説

R/C

propertySetType

はい

String

検索するプロパティ セットのタイプ。

R

id

はい

String

プロパティ名のリストを格納する変数(String 配列)の識別子。

C

result



いいえ

String

操作の結果に応じて作成および初期化される Integer 型変数の識別子。

この変数が取り得る値:

クエリが正常に実行された場合:
PropertySetTagConstants.PROPERTY_SET_SEARCH_OK

プロパティ名のリストを取得する際に問題があった場合:
PropertySetTagConstants.PROPERTY_SET_SEARCH_FAILED

propertySetNamepropertySetType で指定されたプロパティ セットが見つからなかった場合:
PropertySetTagConstants.INVALID_PROPERTY_SET

C


 

リスト 3-14 は、<ps:getPropertySetNames> タグの使用方法の例です。

コード リスト 3-14 <ps:getPropertySetNames> タグの使用例

<%@ taglib uri="ps.tld" prefix="ps" %>
.
.
.
<ps:getPropertySetNames propertySetType="USER"
id="userPropertySets" result="myResult" />

<ps:getRestrictedPropertyValues>

タグ ライブラリ

ps.tld

インポート文

<%@ taglib uri="ps.tld" prefix="ps" %>

実装されるクラス

GetRestrictedPropertyValuesTag

GetRestrictedPropertyValuesExtraInfo


 

<ps:getRestrictedPropertyValues> タグは、特定のプロパティ定義を対象に、文字列に変換された制限付き値のリストを返します。 値は文字列 (String) の配列として返されます。

タグの属性

表3-15 は、<ps:getRestrictedPropertyValues> タグの属性についての説明です。

表3-15 <ps:getRestrictedPropertyValues>

タグ属性

必須

データ型

解説

R/C

propertySetName

はい

String

対象のプロパティが含まれるプロパティ セットの名前。

R

propertySetType

はい

String

対象のプロパティが含まれるプロパティ セットのタイプ。

R

propertyName

はい

String

値を取得する対象のプロパティの名前。

R

id

はい

String

プロパティ名のリストを格納する変数(String 配列)の識別子。

C

result

いいえ

String

操作の結果に応じて作成および初期化される Integer 型変数の識別子。

この変数が取り得る値:

クエリが正常に実行された場合:
PropertySetTagConstants.
PROPERTY_SEARCH_OK

プロパティへのアクセスに問題がある場合:
PropertySetTagConstants.
PROPERTY_SEARCH_FAILED

propertySetNamepropertySetType で指定されたプロパティ セットが見つからなかった場合:
PropertySetTagConstants.
INVALID_PROPERTY_SET

指定されたプロパティが制限付きでない場合:

PropertySetTagConstants.
PROPERTY_NOT_RESTRICTED

C


 

リスト 3-15 は、<ps:getRestrictedPropertyValues> タグの使用方法の例です。

コード リスト 3-15 <ps:getRestrictedPropertyValues> タグの使用例

<%@ taglib uri="ps.tld" prefix="ps" %>
<%@ page import= 
"com.bea.p13n.property.servlets.jsp.taglib.PropertySetTagConstants"
%>
<p> ---- <b>ps:getRestrictedPropertyValues</b> -----
<br>Possible values for PreferredLanguage:
<ps:getRestrictedPropertyValues propertySetName="Demographics"
propertySetType="USER" propertyName="PreferredLanguage"
id="values" result="myResult"/>
<ul>
<% if (myResult.intValue() == PropertySetTagConstants.PROPERTY_SEARCH_OK)
{
for ( int i=0; i<values.length; i++ ) {
%><li><%=values[i]%>
<% }
}
%>
</ul>

 


ユーザ管理:
プロファイル管理タグ

ユーザ管理タグを使用すると、ユーザとグループのプロファイル情報にアクセスできるだけでなく、ユーザとグループの作成および削除や、ユーザとグループの関係の管理などの操作を行うこともできます。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<um:getProfile>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagementTag-
Constants" %>

実装されるクラス

GetProfileTag

GetProfileExtraInfo


 

<um:getProfile> タグ (表3-16) は、指定されたプロファイル キーとプロファイル タイプに一致するプロファイルを検索します。 このタグには本体はありません。 取得されたプロファイルは com.bea.p13n.usermgmt.profile.ProfileWrapper として扱うことができます。 プロファイル キーとプロファイルに加えて、profileType 属性で指定するものと同様の、明示的なサクセサ キーとサクセサ タイプを指定することができます。 このサクセサは、取り出されたプロファイルとともに、その後で行われる <um:getProperty> タグの呼び出しで使われ、そのサクセサから必ずプロパティが継承されるようになります。 サクセサが取り出されなければ、標準の ConfigurableEntity サクセサ検索パターンが、取り出されたプロパティに適用されることになります。

タグの属性

表3-16 は、<um:getProfile> タグの属性についての説明です。

表3-16 <um:getProfile> タグの属性

タグ属性

必須

データ型

解説

R/C

profileKey


はい

String

目的のプロファイルを検索するために使用できる固有の識別子。

例: "<%=username%>"

R

successorKey


いいえ

String

プロファイル サクセサを検索するために使用できる固有の識別子。

例: "<%=defaultGroup%>"

R

scope


いいえ

String

取り出されたプロファイルの HTTP スコープ。 「request」または「session」を値として指定する。

デフォルトは session

C

groupOnly


いいえ

String

ユーザ プロファイルではなく、profileKey で指定された名前のグループ プロファイルを検索するように指定する。 この値が true の場合には、サクセサは検索されない。

デフォルトは false

C

profileId


いいえ

String

JSP のページ スコープ内で、取り出されたプロファイルへのアクセスに使用できる変数名。

C

successorId


いいえ

String

JSP のページ スコープ内で、取り出されたサクセサへのアクセスに使用できる変数名。

C

result


いいえ

String

操作の結果にアクセスするために使用できる変数名。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.GET_PROFILE_OK

エラーが発生した場合:
UserManagementTagConstants.GET_PROFILE_FAILED

UserManagementTagConstants.NO_SUCH_PROFILE

UserManagementTagConstants.NO_SUCH_SUCCESSOR

C


 

例 1

リスト 3-16 は、サクセサを指定せず、session スコープを明示的に指定してプロファイルを取り出す方法の例です。

コード リスト 3-16 <um:getProfile> タグの使用例 (その 1)

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getProfile profileKey="bob" profileType="AcmeUser"
profileId="myProfile" scope="session"/>

例 2

リスト 3-17 は、デフォルトのサクセサ タイプを使用し、request スコープを明示的に指定してデフォルトのユーザ プロファイル タイプを取り出す方法の例です。

コード リスト 3-17 <um:getProfile> タグの使用例 (その 2)

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getProfile profileKey="bob" successorKey="engineering" scope="request"/>

<um:getProperty>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagementTag-
Constants" %>

実装されるクラス

GetPropertyTag

GetPropertyExtraInfo


 

<um:getProperty> タグは、指定されたプロパティ セットとプロパティ名の組に対応するプロパティ値を検索します。 このタグには本体はありません。 返される値は Object です。 <um:getProfile> タグが呼び出されて、セッションで使うためのプロファイルが取り出された後でこのタグが使われるのが典型的なケースです。 検索対象のプロパティは、そのセッション プロファイルから取り出されます。 <um:getProperty> タグの呼び出し時に <um:getProfile> タグがまだ使われていない場合、指定されたプロパティ値は匿名ユーザ プロファイルから取り出されます。

タグの属性

表3-17 は、<um:getProperty> タグの属性についての説明です。

表3-17 <um:getProperty> タグの属性

タグ属性

必須

データ型

解説

R/C

propertySet


いいえ

String

プロパティの値を取得する対象のプロパティ セット。

例: "Demographics"

注意: プロパティ セットが指定されない場合、プロパティはプロファイルのデフォルト(スコープ制限なし)プロパティから取り出される。

R

propertyName


はい

String

取得するプロパティの名前。

例: "Date_of_Birth"

R

id


いいえ

String

id 属性を指定すると、id が割り当てられている変数名の中で、取得したプロパティの値を使用できる。 この属性を指定しない場合、プロパティ値はインライン化される。

C


 

例 1

リスト 3-18 は、<um:getProperty> タグの使用方法の例です。

コード リスト 3-18 <um:getProperty> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getProperty id="myBirthDate" propertySet="Demographics" propertyName="Date_of_Birth"/>
My birthday is <%=myBirthDate%>.

<um:getPropertyAsString>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagementTag-
Constants" %>

実装されるクラス

GetPropertyAsStringTag

GetPropertyAsStringExtraInfo


 

<um:getPropertyAsString> タグは、前に説明した <um:getProperty> タグと同じように機能しますが、取り出されるプロパティ値は必ず String になります。 次の例では、Collection を返し、好きな色を列挙する多値プロパティを示しています。

タグの属性

表3-18 は、<um:getPropertyAsString> タグの属性についての説明です。

表3-18 <um:getPropertyAsString> タグの属性

タグ属性

必須

データ型

解説

R/C

propertySet


いいえ

String

プロパティの値を取得する対象のプロパティ セット。

例: "Demographics"

注意: プロパティ セットが指定されない場合、プロパティはプロファイルのデフォルト(スコープ制限なし)プロパティから取り出される。

R

propertyName


はい

String

取得するプロパティの名前。

例: "Date_of_Birth"

R

id


いいえ

String

id 属性を指定すると、id が割り当てられている変数名の中で、取得したプロパティの値を使用できる。 この属性を指定しない場合、プロパティ値はインライン化される。

C


 

リスト 3-19 は、<um:getPropertyAsString> タグの使用方法の例です。

コード リスト 3-19 <um:getPropertyAsString> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getPropertyAsString id="myBirthDate" propertySet="Demographics" propertyName="Date_of_Birth"/>
My birthday is <%=myBirthDate%>.

<um:removeProperty>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagementTag-
Constants" %>

実装されるクラス

RemovePropertyTag


 

<um:removeProperty> タグ (表3-19) は、指定されたプロパティを現在のセッションのプロファイルまたは匿名ユーザ プロファイルから削除します。 このタグには本体はありません。 削除されたプロパティに対して引き続き <um:getProperty> を呼び出すと、プロパティ セットで規定されているデフォルトのプロパティ値か、またはプロファイルのサクセサから継承されるデフォルト値が得られます。

タグの属性

表3-19 は、<um:removeProperty> タグの属性についての説明です。

表3-19 <um:removeProperty> タグの属性

タグ属性

必須

データ型

解説

R/C

propertySet


いいえ

String

プロパティの値を削除する対象のプロパティ セット。

例: "Demographics"

注意: プロパティ セットが指定されない場合、プロパティはプロファイルのデフォルト(スコープ制限なし)プロパティから削除される。

R

propertyName


はい

String

削除するプロパティの名前。

例: "Income_Range"

R


 

リスト 3-20 は、<um:removeProperty> タグを使用してプロパティを削除する方法を示しています。

コード リスト 3-20 <um:removeProperty> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:removeProperty propertySet="<%=thePropertySet%>" propertyName="<%=thePropertyName%>"/>

<um:setProperty>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagementTag-
Constants" %>

実装されるクラス

SetPropertyTag

ResultTagExtraInfo


 

<um:setProperty> タグは、セッションの現在のプロファイルまたは匿名ユーザ プロファイルのプロパティ値を更新します。 このタグには本体はありません。

タグの属性

表3-20 は、<um:setProperty> タグの属性についての説明です。

表3-20 <um:setProperty> タグの属性

タグ属性

必須

データ型

解説

R/C

propertySet


いいえ

String

プロパティ値を設定する対象のプロパティ セット。

例: "Demographics"

注意: プロパティ セットを指定しない場合、プロパティ値はプロファイルのデフォルト(スコープ制限なし)プロパティに対して設定される。

R

propertyName


はい

String

値を設定するプロパティの名前。

例: "Gender"

R

value

はい

Object

新しいプロパティ値。

R

result

いいえ

String

プロパティ設定操作の結果を格納する Integer 型オブジェクトの名前。

操作が正常に実行された場合: UserManagementTagConstants.SET_PROPERTY_OK

エラーが発生した場合: UserManagementTagConstants.SET_PROPERTY_FAILED

C


 

リスト 3-21 は、<um:setProperty> タグの使用方法の例です。

コード リスト 3-21 <um:setProperty> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<% String myGender = request.getParameter("gender"); %>
<um:setProperty propertySet="Demographics" propertyName="Gender" value="<%=myGender%>"/>

 


ユーザ管理:
グループおよびユーザ管理タグ

ユーザ管理タグを使用すると、ユーザとグループのプロファイル情報にアクセスできるだけでなく、ユーザとグループの作成および削除や、ユーザとグループの関係の管理などの操作を行うこともできます。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。


 

<um:addGroupToGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

AddGroupToGroupTag

ResultTagExtraInfo


 

<um:addGroupToGroup> タグ (表3-21) は、childGroupName 属性で指定されたグループを、parentGroupName 属性で指定された親グループに追加します。 グループは親を 1 つしか持てないので、そのグループが別の親に属していることを表す以前のデータベース レコードはすべて破棄されます。 このタグが正常に動作するには、親グループも子グループもあらかじめ存在していなければなりません。 このタグには本体はありません。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-21 は、<um:addGroupToGroup> タグの属性についての説明です。

表3-21 <um:addGroupToGroup>

タグ属性

必須

データ型

解説

R/C

childGroupName

はい

String

子グループの名前。

例: "<%=childGroupName%>"

R

parentGroupName

いいえ

String

親グループの名前。

例: "<%=parentGroupName%>"

R

result


はい

String

addGroupToGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合: UserManagementTagConstants.ADD_GROUP_OK

エラーが発生した場合: UserManagementTagConstants.ADD_GROUP_FAILED

C


 

リスト 3-22 は、<um:addGroupToGroup> タグを使用して、既存のユーザ グループに新しいユーザ グループを追加する方法を示しています。

コード リスト 3-22 <um:addGroupToGroup> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:addGroupToGroup childGroupName="<%=childGroupName%>" parentGroupName="<%=parentGroupName%>" result="result"/>

<um:addUserToGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

AddUserToGroupTag

ResultTagExtraInfo


 

<um:addUserToGroup> タグは、userName 属性で名前が指定されたユーザを、groupName 属性で名前が指定されたグループに追加します。 このタグが正常に動作するには、指定されたユーザも指定されたグループもあらかじめ存在していなければなりません。 このタグには本体はありません。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-22 は、<um:addUserToGroup> タグの属性についての説明です。

表3-22 <um:addUserToGroup>

タグ属性

必須

データ型

解説

R/C

userName



はい

String

グループに追加するユーザの名前。

例: "<%=username%>"

R

groupName


はい

String

ユーザの追加先のグループの名前。

例: "<%=groupName%>"

R

result



はい

String

addUserToGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.ADD_USER_OK

エラーが発生した場合:
UserManagementTagConstants.ADD_USER_FAILED

C


 

リスト 3-23 は、<um:addUserToGroup> タグを使用して、既存のグループに新しいユーザを追加する方法を示しています。

コード リスト 3-23 <um:addUserToGroup> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:addUserToGroup userName="<%=userName%>" groupName="<%=groupName%>" result="result"/>

<um:createGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

CreateGroupTag

CreateGroupExtraInfo


 

<um:createGroup> タグ (表3-23) は、新しいグループをレルム内に作成し、対応するグループ プロファイルをパーソナライゼーション データベース内に作成します。 このタグには本体はありません。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-23 は、<um:createGroup> タグの属性についての説明です。

表3-23 <um:createGroup> タグの属性

タグ属性

必須

データ型

解説

R/C

groupName


はい

String

新しいグループの名前。

例: "<%=groupName%>"

R

id


いいえ

String

当該ページのスコープ内で、作成された Group オブジェクトへのアクセスに使用できる変数名。

C

parentName


いいえ

String

新しいグループの親として設定するグループの名前。

R

result




はい

String

createGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.CREATE_GROUP_OK

エラーが発生した場合:
UserManagementTagConstants.CREATE_GROUP_FAILED

指定された名前のグループがすでに存在する場合:
UserManagementTagConstants.GROUP_EXISTS

C


 

リスト 3-24 は、<um:creategroup> タグを使用して新しいグループを作成する方法を示しています。

コード リスト 3-24 <um:creategroup> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:creategroup groupName="<%=groupName%>" result="result"/>

<um:createUser>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

CreateUserTag

CreateUserExtraInfo


 

<um:createUser> タグは、 新しいユーザ プロファイルを作成します。 このタグには本体はありません。 このタグは、グループおよびユーザ管理タグとして分類されていますが、指定によっては、現在の匿名ユーザ プロファイルに関連付けられているあらゆるプロパティを永続化するので、実行時処理と組み合わせて使うことができます。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-24 は、<um:createUser> タグの属性についての説明です。

表3-24 <um:createUser> タグの属性

タグ属性

必須

データ型

解説

R/C

userName


はい

String

新しいユーザの名前。

例: "<%=username%>"

R

password


はい

String

新しいユーザのパスワード。

例: "<%=password%>"

R

profileType


いいえ

String

拡張ユーザ タイプ(例: WLCS_Customer)を指定して、そのタイプのユーザを作成する。

R

saveAnonymous


いいえ

String

新しく作成されるユーザのプロファイルに、現在の匿名ユーザ プロファイルの属性を永続的に保存するかどうかを指定する。

デフォルトは false

例: "false"

R

id


いいえ

String

当該ページのスコープ内で、作成された User オブジェクトへのアクセスに使用できる変数名。

C

result


はい

String

createUser 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.CREATE_USER_OK

エラーが発生した場合:
UserManagementTagConstants.CREATE_USER_FAILED

指定された名前のユーザがすでに存在する場合:
UserManagementTagConstants.USER_EXISTS

C


 

リスト 3-25 は、<um:createUser> タグを使用して新しいユーザを作成する方法を示しています。

コード リスト 3-25 <um:createUser> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
<um:createUser userName="<%=username%>" password="<%=password"%> result="result"/>

<um:getChildGroupNames>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

GetChildGroupNamesTag

GetChildGroupNamesExtraInfo


 

<um:getChildGroupNames> タグは、指定されたグループの子に当たるすべてのグループの名前を返します。

タグの属性

表3-25 は、<um:getChildGroupNames> タグの属性についての説明です。

表3-25 <um:getChildGroupNames>

タグ属性

必須

データ型

解説

R/C

groupName


はい

String

子グループを検索する対象のグループの名前。

R

id


はい

String

子グループ名の String 配列を格納する識別子の名前。

C


 

リスト 3-26 は、<um:getChildGroupNames> タグを使用して、グループ SomeGroup の子グループの名前を取り出す方法を示しています。

コード リスト 3-26 <um:getChildGroupNames> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getChildGroupNames groupName="SomeGroup"
id="childrenOfSomeGroup" />

<um:getGroupNamesForUser>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

GetGroupNamesForUserTag

GetGroupNamesForUserExtraInfo


 

<um:getGroupNamesForUser> タグは、指定されたユーザが直接所属するグループに一致するグループ名を検索し、結果を String 配列に入れて返します。 このタグには本体はありません。

タグの属性

表3-26 は、<um:getGroupNamesForUser> タグの属性についての説明です。

表3-26 <um:getGroupNamesForUser> タグの属性

タグ属性

必須

データ型

解説

R/C

userName


はい

String

所属グループを検索する対象のユーザの名前。

例: "<%=username%>"

R

id


はい

String

グループ名の検索結果が格納される変数の名前。

例: "myGroups"

C


 

リスト 3-27 は、<um:getGroupNamesForUser> タグを使用して、ユーザに適用するグループ名を取り出す方法を示しています。

コード リスト 3-27 <um:getGroupNamesForUser> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getGroupNamesForUser userName="<%=username%>" id="myGroups"/>

<um:getParentGroupName>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

GetParentGroupNameTag

GetParentGroupNameExtraInfo


 

<um:getParentGroupName> タグは、groupName 属性で指定されたグループの親に当たるグループの名前を検索します。 情報はレルムから取得されます。 このタグには本体はありません。

タグの属性

表3-27 は、<um:getParentGroupName> タグの属性についての説明です。

表3-27 <um:getParentGroupName>

タグ属性

必須

データ型

解説

R/C

groupName


はい

String

親のグループ名を検索する対象のグループの名前。

例: "<%=groupName%>"

R

id


はい

String

当該ページのスコープ内で、親の名前にアクセスするために使用できる変数名。

例: "parentGroupName"

C


 

リスト 3-28 は、<um:getParentGroupName> タグを使用して親グループ名を取得する方法を示しています。

コード リスト 3-28 <um:getParentGroupName> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getParentGroupName groupName="<%=groupName%>" id="parentGroupName"/>

<um:getTopLevelGroups>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

GetTopLevelGroupsTag

GetTopLevelGroupsExtraInfo


 

<um:getTopLevelGroups> タグは、親グループを持たないグループの名前を検索し、結果を配列に入れて返します。 情報はレルムから取得されます。 このタグには本体はありません。

タグの属性

表3-28 は、<um:getTopLevelGroups> タグの属性についての説明です。

表3-28 <um:getTopLevelGroups>

タグ属性

必須

データ型

解説

R/C

id


はい

String

当該ページのスコープ内で、トップレベルの Group オブジェクトにアクセスするために使用できる変数名。

例: "topLevelGroups"

C


 

リスト 3-29 は、<um:getTopLevelGroups> タグの使用方法の例です。

コード リスト 3-29 <um:getTopLevelGroups> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getTopLevelGroups id="topLevelGroups"/>

<um:getUsernames>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

GetUsernamesTag

GetUsernamesExtraInfo


 

<um:getUsernames> タグは、指定された検索式に一致するユーザ名を検索し、結果を String 配列に入れて返します。 検索式では、ワイルドカード文字としてアスタリスク (*) だけを使用でき、大文字と小文字は区別されません。 検索式では任意の数のアスタリスクを使用できます。 このタグには本体はありません。

タグの属性

表3-29 は、<um:getUsernames> タグの属性についての説明です。

表3-29 <um:getUsernames> タグの属性

タグ属性

必須

データ型

解説

R/C

searchExp


いいえ

String

ユーザ名の検索に適用される検索式。 デフォルトは「*」。

例: "t*"

R

userLimit


いいえ

String (representing
an Integer)


検索結果として返されるユーザの最大数 (Integer.valueOf を個別に備える String)。デフォルトは 100。

ユーザ数が userLimit を超える場合、id に返される配列の長さが userLimit の長さにまで切り詰められる。

例: "500"

R

id


はい

String

ユーザ名の検索結果を格納する変数の名前。

例: "myUsers"

C

result


いいえ

String

getUsernames 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:

UserManagerTagConstants.USER_SEARCH_OK

一般エラーの場合(検索の間に発生したデータベース接続障害など):

UserManagerTagConstants.
USER_SEARCH_FAILED

注意: 検索条件に合致するユーザがいない場合、結果は UserManagerTagConstants.USER_SEARCH_FAILED にはならず、「id」に返される配列の長さがゼロになる。

C


 

注意: USER_SEARCH_FAILED の値が返されるのは、ユーザの検索中に、データベース接続エラーなどの一般エラーが発生したときだけです。 検索条件に合致するユーザがいない場合、結果は UserManagementTagConstants.USER_SEARCH_FAILED にはならず、id に返される配列の長さがゼロになります。

リスト 3-30 は、<um:getUsernames> タグを使用してユーザ名を取得する方法を示しています。

コード リスト 3-30 <um:getUsernames> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getUsernames userLimit="500" searchExp="t*" id="myUsers"/>
<%System.out.println("I found " + myUsers.length + " users.");%>

<um:getUsernamesForGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

GetUsernamesForGroupTag

GetUsernamesForGroupExtraInfo


 

<um:getUsernamesForGroup> タグは、指定された検索式に一致し、かつ指定されたグループに属するユーザ名を検索し、結果を String 配列に入れて返します。 検索式では、ワイルドカード文字としてアスタリスク (*) だけを使用でき、大文字と小文字は区別されません。 検索式では任意の数のアスタリスクを使用できます。 このタグには本体はありません。

タグの属性

表3-30 は、<um:getUsernamesForGroup> タグの属性についての説明です。

表3-30 <um:getUsernamesForGroup> タグの属性

タグ属性

必須

データ型

解説

R/C

searchExp


いいえ

String

ユーザ名の検索に適用される検索式。

デフォルトは「*」。

例: "t*"

R

groupName


はい

String

検索式で取り出すユーザが属するグループの名前。

例: "engineering"

R

userLimit


いいえ

String
(Integer
を表す)


検索結果として返されるユーザの最大数 (Integer.valueOf を個別に備える String)。デフォルトは 100。

ユーザ数が userLimit を超える場合、id に返される配列の長さが userLimit の長さにまで切り詰められる。

例: "500"

R

id


はい

String

ユーザ名の検索結果を格納する変数の名前。

例: "myUsers"

C

result


いいえ

String

getUsernamesForGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.USER_SEARCH_OK

一般エラーの場合:
UserManagementTagConstants.USER_SEARCH_FAILED

C


 

注意: USER_SEARCH_FAILED の値が返されるのは、ユーザの検索中に、データベース接続エラーなどの一般エラーが発生したときだけです。 検索条件に合致するユーザがいない場合、結果は UserManagementTagConstants.USER_SEARCH_FAILED にはならず、id に返される配列の長さがゼロになります。

リスト 3-31<um:getUsernamesForGroup> タグの使用方法の例です。指定された検索式に一致し、かつ指定されたグループに属するユーザの名前を取得します。

コード リスト 3-31 <um:getUsernamesForGroup> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:getUsernamesForGroup groupName="engineering" userLimit="500" searchExp="t*" id="myUsers"/>
<%System.out.println("I found " + myUsers.length + " users in my group.");%>

<um:removeGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

RemoveGroupTag

ResultTagExtraInfo


 

<um:removeGroup> タグは、groupName 属性で指定された名前のグループを削除します。 このタグには本体はありません。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-31 は、<um:removeGroup> タグの属性についての説明です。

表3-31 <um:removeGroup>

タグ属性

必須

データ型

解説

R/C

groupName


はい

String

削除するグループの名前。

例: "<%=groupName%>"

R

result




はい

String

removeGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.REMOVE_GROUP_OK

エラーが発生した場合:
UserManagementTagConstants.REMOVE_GROUP_FAILED

C


 

リスト 3-32 は、<um:removeGroup> タグを使用して、groupName 属性で指定された名前のグループを削除する方法を示しています。

コード リスト 3-32 <um:removeGroup> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:removeGroup groupName="<%=groupName%>" result="result"/>

<um:removeGroupFromGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

RemoveGroupFromGroupTag

ResultTagExtraInfo


 

<um:removeGroupFromGroup> タグは、親グループから子グループを 1 つ削除します。

タグの属性

表3-32 は、<um:removeGroupFromGroup> タグの属性についての説明です。

表3-32 <um:removeGroupFromGroup>

タグ属性

必須

データ型

解説

R/C

childGroupName

はい

String

親から削除する子グループの名前。

R

parentGroupName

はい

String

子グループが削除される親グループの名前。

R

result

はい

String

removeGroupFromGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.REMOVE_GROUP_OK

操作の実行に失敗した場合:
UserManagementTagConstants.REMOVE_GROUP_FAILED

C


 

リスト 3-33 は、<um:removeGroupFromGroup> タグを使用して、親グループから子グループを削除する方法を示しています。

コード リスト 3-33 <um:removeGroupFromGroup> タグの使用例

<um:removeUser>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

RemoveUserTag

ResultTagExtraInfo


 

<um:removeUser> タグは、userName 属性で指定されたユーザを削除します。 このタグでは、データベース内で profileType が設定されている任意のタイプの拡張ユーザを削除できます。 このタグには本体はありません。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-33 は、<um:removeUser> タグの属性についての説明です。

表3-33 <um:removeUser>

タグ属性

必須

データ型

解説

R/C

userName


はい

String

削除するユーザのユーザ名。

例: "<%=username%>"

R

result


はい

String

removeUser 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.REMOVE_USER_OK

エラーが発生した場合:
UserManagementTagConstants.REMOVE_USER_FAILED

C


 

リスト 3-34 は、<um:removeUser> タグを使用してユーザを削除する方法を示しています。

コード リスト 3-34 <um:removeUser> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:removeUser userName="<%=username%>" result="result"/>

<um:removeUserFromGroup>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.tags.UserManagementTag-
Constants" %>

実装されるクラス

RemoveUserFromGroupTag

ResultTagExtraInfo


 

<um:removeUserFromGroup> タグは、グループから 1 人のユーザを削除します。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。

タグの属性

表3-34 は、<um:removeUserFromGroup> タグの属性についての説明です。

表3-34 <um:removeUserFromGroup>

タグ属性

必須

データ型

解説

R/C

userName


はい

String

指定されたグループから削除するユーザのユーザ名。

R

groupName


はい

String

削除されるユーザが属するグループの名前。

R

result



はい

String

removeUserFromGroup 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.REMOVE_USER_OK

操作の実行に失敗した場合:
UserManagementTagConstants.REMOVE_USER_FAILED

C


 

リスト 3-35 は、<um:removeUserFromGroup> タグを使用して、親グループから子グループを削除する方法を示しています。

コード リスト 3-35 <um:removeUserFromGroup> タグの使用例

<%@ taglib uri="um.tld" prefix="um" %>
.
.
.
<um:removeUserFromGroup username="UserToRemove"
groupName="SomeGroup" result="myResult" />

 


ユーザ管理: セキュリティ タグ

ユーザ管理タグを使用すると、ユーザとグループのプロファイル情報にアクセスできるだけでなく、ユーザとグループの作成および削除や、ユーザとグループの関係の管理などの操作を行うこともできます。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<um:login>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagement-
TagConstants" %>

実装されるクラス

LoginTag

ResultTagExtraInfo


 

<um:login> タグは、現在のセキュリティ レルムに対する簡易認証(ユーザ名、パスワード)を提供し、認証済みユーザを現在の WebLogic ユーザとして設定します。 このタグには本体はありません。

注意: login タグが機能するには、username パラメータと password パラメータが HTTP リクエスト内に存在していなければなりません。

タグの属性

表3-35 は、<um:login> タグの属性についての説明です。

表3-35 <um:login> タグの属性

タグ属性

必須

データ型

解説

R/C

result


はい

String

login 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.LOGIN_OK

認証実行時に一般エラーが発生した場合:
UserManagementTagConstants.LOGIN_ERROR

ユーザ名とパスワードの組み合わせが無効なために認証が失敗した場合
UserManagementTagConstants.LOGIN_FAILED

C


 

<um:logout>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagement-
TagConstants" %>

実装されるクラス

LogoutTag

ResultTagExtraInfo


 

<um:logout> タグは、現在のユーザの WebLogic Server セッションを終了します。 このタグは <um:login> タグと組み合わせて使用することが推奨されます。

タグの属性

表3-36 は、<um:logout> タグの属性についての説明です。

表3-36 <um:logout>

タグ属性

必須

データ型

解説

R/C

属性はない





.
 

<um:setPassword>

タグ ライブラリ

um.tld

インポート文

<%@ taglib uri="um.tld" prefix="um" %>

すべてのユーザ管理タグは、同じファイルに結果を送る。 結果を確認する場合、次のインポート ディレクティブをページの先頭に配置する。

<%@ page import="com.bea.p13n.usermgmt.
servlets.jsp.taglib.UserManagement-
TagConstants" %>

実装されるクラス

SetPasswordTag

ResultTagExtraInfo


 

<um:setPassword> タグは、userName 属性でユーザ名が指定されたユーザのパスワードを更新します。

注意: このタグは、現在のレルムが weblogic.security.acl.ManageableRealm の実装である場合にのみ呼び出すことが推奨されます。 このインタフェースはデフォルトの WebLogic Portal レルム (com.bea.p13n.security.realm.RDBMSRealm) によって実装されます。 加えて、現在のレルムによって使われるユーザ オブジェクトは weblogic.security.acl.CredentialChanger を実装する必要があります。

タグの属性

表3-37 は、<um:setPassword> タグの属性についての説明です。

表3-37 <um:setPassword> タグの属性

タグ属性

必須

データ型

解説

R/C

userName


はい

String

パスワードを変更する対象のユーザのユーザ名。

R

password

はい

String

新しいユーザ パスワード。

R

result


はい

String

setPassword 操作の結果を格納する Integer 型変数の名前。

この変数が取り得る値:

操作が正常に実行された場合:
UserManagementTagConstants.SET_PASSWORD_OK

操作の実行に失敗した場合:
UserManagementTagConstants.SET_PASSWORD_FAILED

C


 

 


パーソナライゼーション ユーティリティ

<es:jsptaglib> タグ ライブラリには、JSP ページを作成するために使用できる汎用的なタグが用意されています。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<es:convertSpecialChars>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

ConvertSpecialCharsTag


 

<es:convertSpecialChars> タグは、通常は HTML ブラウザにとって特別な意味を持つ文字を所定の文字列に変換し、作成者の意図どおりに表示できるようにします。

たとえば、次の文はブラウザに対してタグの開始と終了を知らせる文字である「<」と「>」を使用しているので、変換する必要があります。

Enter <filename> here:

タグの属性

表3-38 は、<es:convertSpecialChars> タグの属性についての説明です。

表3-38 <es:convertSpecialChars>

タグ属性

必須

データ型

解説

R/C

string

はい

String

変換対象の文字列。

R


 

リスト 3-36 は、小なり符号を含む文字列を HTML で表示できるようにする例です。

コード リスト 3-36 <es:convertSpecialChars>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:convertSpecialChars string="<thisString>"/>

<es:counter>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

CounterTag

CounterTagExtraInfo


 

<es:counter> タグは、for ループ構文を作成するために使用します。

タグの属性

表3-39 は、<es:counter> タグの属性についての説明です。

表3-39 <es:counter>

タグ属性

必須

データ型

解説

R/C

type


いいえ

String

カウンタのデータ型。 取り得る値は int または long。 デフォルトは int

R

id

はい

String

変数の固有名。

R

minCount

はい

Int

ループの開始位置。

R

maxCount

はい

Int

ループの終了位置。

R


 

リスト 3-37 は、<es:counter> タグの使用方法の例です。

コード リスト 3-37 <es:counter>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:counter id="iterator" minCount="0" maxCount="10">
<% System.out.println(iterator);%>
</es:counter>

<es:date>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

DateTag


 

<es:date> タグは、ユーザの時間帯設定に基づいて書式化された日時文字列 (String) を取得するために使用します。

タグの属性

表3-40 は、<es:date> タグの属性についての説明です。

表3-40 <es:date>

タグ属性

必須

データ型

解説

R/C

timeZoneId

いいえ

String

デフォルトはサーバ上の時間帯。

R

formatStr


いいえ

String

java.text.SimpleDateFormat に従う日時書式文字列。デフォルト値は「MM/dd/yyyy HH:mmss:z」。

R


 

リスト 3-38 では、<es:date> タグを使用して日時を取得する方法を示しています。

コード リスト 3-38 <es:date>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:date formatStr="MMMM dd yyyy" timeZoneId="MST" />

<es:forEachInArray>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

ForEachInArrayTag

ForEachInArrayTagExtraInfor


 

<es:forEachInArray> タグは、配列に対して反復処理を行うために使用します。

タグの属性

表3-41 は、<es:forEachInArray> タグの属性についての説明です。

表3-41 <es:forEachInArray>

タグ属性

必須

データ型

解説

R/C

id

はい

String

配列内の各値を格納する変数。

R

type

はい

String

配列内の各値のデータ型。

R

array

はい

Object []

反復処理の対象となる配列。

R

counterId

いいえ

String

配列内の現在位置。

R


 

リスト 3-39 は、<es:forEachInArray> タグを使用して、配列に対して反復処理を行う方法を示しています。

コード リスト 3-39 <es:forEachInArray>タグの使用例

<es:forEachInArray id="item" array="<%=items%>" type="String" counterId="i">
<% System.out.println("items[" + i + "]: " + item);%>
</es:forEachInArray>

<es:isNull>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

IsNullTag


 

<es:isNull> タグは、値が null かどうかを調べるために使用します。 対象の値が String 型の場合、<es:isNull> タグは、その String が null かそれとも値を持っているかを調べるために使われます。 空の文字列の場合、isNullfalse になります (空の文字列は null ではありません)。

タグの属性

表3-42 は、<es:isNull> タグの属性についての説明です。

表3-42 <es:isNull> タグの属性

タグ属性

必須

データ型

解説

R/C

item

はい

Object

評価する変数。

R


 

リスト 3-40 は、<es:isNull> タグを使用して、値が null かどうかを調べる方法を示しています。

コード リスト 3-40 <es:isNull>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:isNull item="<%=value%>">
Error: the value is null.
</es:isNull>

<es:notNull>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

NotNullTag


 

<es:notNull> タグは、値が null でないかどうかを調べるために使われます。 対象の値が String 型の場合、<es:notNull> タグは、その String が null でないか、それとも値を持っているかを調べるために使われます。 空の文字列の場合、notNulltrue になります (空の文字列は値として扱われます)。

タグの属性

表3-43 は、<es:notNull> タグの属性についての説明です。

表3-43 <es:notNull>

タグ属性

必須

データ型

解説

R/C

item

はい

Object

評価する変数。

R


 

リスト 3-41 は、<es:notNull> タグを使用して、値が null でないかどうかを調べる方法を示しています。

コード リスト 3-41 <es:notNull>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:notNull item="<%=value%>">
The value is not null.
</es:notNull>

<es:transposeArray>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

TransposeArrayTag

TransposeArrayTagExtraInfo


 

<es:transposeArray> タグは、標準の [行][列] 配列を [列][行] 配列に転置するために使用します。

タグの属性

表3-44 は、<es:transposeArray> タグの属性についての説明です。

表3-44 <es:transposeArray>

タグ属性

必須

データ型

解説

R/C

id

はい

String

[列][行] 配列を格納する変数。

R

type


はい

String

[行][列] 配列内の変数のデータ型(例: String)。

R

array

はい

Object[][]

[行][列] 配列を格納する変数。

R


 

リスト 3-42 は、<es:transposeArray> タグの使用方法の例です。

コード リスト 3-42 <es:transposeArray>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:transposeArray id="byColumnRow" array="<%=byRowColumn%>" type="String">
...
</es:transposeArray>

<es:uriContent>

タグ ライブラリ

es.tld

インポート文

<%@ taglib uri="es.tld" prefix="es" %>

実装されるクラス

UriContentTag

UriContentTagExtraInfo


 

<es:uriContent> タグは、URL からコンテンツを取り出すために使用します。 このタグは、大量のテキストが含まれるページを取得する用途に最も適しています。

タグの属性

表3-45 は、<es:uriContent> タグの属性についての説明です。

表3-45 <es:uriContent>

タグ属性

必須

データ型

解説

R/C

id

はい

String

URI からダウンロードされたコンテンツを格納する変数。

R

uri


はい

String

コンテンツの取得先の完全修飾 URI。

R


 

リスト 3-43 は、<es:uriContent> タグを使用して URL からコンテンツを取得する方法を示しています。

コード リスト 3-43 <es:uriContent>タグの使用例

<%@ taglib uri="es.tld" prefix="es" %>
.
.
.
<es:uriContent id="uriContent" uri="http://www.beasys.com/index.html">
<%
out.print(uriContent);
%>
</es:uriContent>

注意: HTML ページを相対 URL と結合する場合には、それらのページを各 URL 内の正確なホスト名まで完全修飾しなければなりません。そうしないと、(他のリソース上の)画像をブラウザから正しく取り出すことはできません。

 


WebLogic ユーティリティ

<wl:jsptaglib> タグ ライブラリには、WebLogic Server プラットフォームの一部として提供されるカスタム JSP 拡張タグが用意されています。

以降の表の「必須」列では、属性が必須と省略可能のどちらであるかを「はい」または「いいえ」で示します。 「R/C」列では、「C」は属性がコンパイル時表現であることを、「R」は属性が要求時表現とコンパイル時表現のいずれかであることを示します。

<wl:cache>

タグ ライブラリ

wl.tld

インポート文

<%@ taglib uri="weblogic.tld" prefix="wl" %>

実装されるクラス

CacheTag

CacheTagInfo


 

<wl:cache> タグでは、表示のたびにそのコンテンツが更新される必要がないことを指定します。

タグの属性

表3-46 は、<wl:cache> タグの属性についての説明です。

表3-46 <wl:cache>

タグ属性

必須

データ型

解説

R/C

timeout

いいえ

Integer

データの生存時間 (TTL)、つまりそのデータを、他のすべての制御に関係なく更新しなければならない頻度を制御する。 単位は秒。

R

scope

いいえ

String

データの生存時間 (TTL)、つまりそのデータを、他のすべての制御に関係なく更新しなければならない頻度を制御する。 単位は秒。

C

name

いいえ

String

このキャッシュを一意に識別する。 名前を指定しない場合、ランダムに生成された名前が付けられる。

C

size

いいえ

Integer

キャッシュ中のエントリの最大数。 デフォルトは無制限。 関連付けられているキーがあるときだけ適用される。

R

vars

いいえ

String

変換されたキャッシュ出力をキャッシュするほかに、ブロック内部の計算値をキャッシュすることもできる。 これらの変数は、キャッシュ キーと同様にして指定される。 このタイプのキャッシュは「入力キャッシュ」と呼ばれる。

C

key

いいえ

String

対象のデータが依存している現在のページからアクセス可能な値のリスト(CSV 形式)を指定する。 これらの値はキャッシュへの補助キーとして機能する。

C

async

いいえ

String

async パラメータが true に設定されている場合、可能であればキャッシュは非同期的に更新される。 キャッシュ検索を開始するユーザには古いデータが提示される。

C


 

<wl:process>

タグ ライブラリ

wl.tld

インポート文

<%@ taglib uri="weblogic.tld" prefix="wl" %>

実装されるクラス

ProcessTag


 

<wl:process> タグは、クエリ属性ベースのフロー制御を行うために使われます。 リスト 3-44 に示すように、4 つの属性の組み合わせを使って、<wl:process> タグと </wl:process> タグで囲まれる文を選択的に実行できます。

タグの属性

表3-47 は、<wl:process> タグの属性についての説明です。

表3-47 <wl:process>

タグ属性

必須

データ型

解説

R/C

name

いいえ

String

クエリ属性の名前。

R

notName

いいえ

String

クエリ属性の名前。

R

value

いいえ

String

クエリ属性の値。

R

notValue

いいえ

String

クエリ属性の値。

R


 

<wl:process> タグで囲まれる文は、次の表の内容に従って実行されます。

属性

value

notValue

value と notValue のどちらでもない

name

名前付き属性が value に等しい。

名前付き属性が value に等しくない。


name 属性の値が null でない。

not Name



notName 属性の値が null。


 

リスト 3-44 は、<wl:process> タグの使用方法の例です。 lastBookRead が存在し、lastBookRead の値が「A Man in Full」である場合に実行されます。

コード リスト 3-44 <wl:process> タグの使用例

<%@ taglib uri="weblogic.tld" prefix="wl" %>
.
.
.
<wl:process name="lastBookRead" value="A Man in Full">
<!-- この部分のコードは、
lastBookRead が存在し、lastBookRead の値が
"A Man in Full" である場合に実行される。-->
</wl:process>

<wl:repeat>

タグ ライブラリ

wl.tld

インポート文

<%@ taglib uri="weblogic.tld" prefix="wl" %>

実装されるクラス

RepeatTag

RepeatTagInfo


 

<wl:repeat> タグは、set 属性で指定されるさまざまな種類の Java オブジェクトに対して反復処理を行うために使われます。

タグの属性

表3-48 は、<wl:repeat> タグの属性についての説明です。

表3-48 <wl:repeat> タグの属性

タグ属性

必須

データ型

解説

R/C

set


いいえ

Object

以下に示すオブジェクト セット。

R

count

いいえ

Int

指定されたセットの先頭から、この属性で指定された個数のエントリに対して反復処理を行う。

R

id

いいえ

String

現在反復処理の対象となっているオブジェクトが格納される変数。

C

type

いいえ

String

指定されたセットに対する反復処理の結果として得られるオブジェクトのデータ型。デフォルトは Object。 このデータ型は完全修飾形式でなければならない。

C


 

 

ページの先頭 前 次