|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.servlet.jsp.tagext.TagSupport
jp.terasoluna.fw.web.struts.taglib.MessagesPopupTag
public class MessagesPopupTag
1ユーザが異なるユースケースの画面を操作し、エラー・メッセージのポップ
アップ表示が同時に行われるとき、セッション上にユースケース毎のエラー・
メッセージ情報が結合されて表示されてしまう。
このタグと<ts:errors>タグ、及び<ts:messages>タグと
組み合わせる事により、画面単位で発生したポップアップエラーの混同を
避けることが可能となる。
MessagesPopupTagは、リクエスト属性として登録されている
エラー・メッセージ情報をセッションに保存する。
MessagesPopupTag は、<ts:body>
タグと連携してポップアップ画面を開く。
MessagesPopupTag を用いる際には、必ず
<ts:body>タグと共に用い、また、
MessagesPopupTag が<ts:body>タグよりも
前に記述されなくてはならない。
MessagesPopupTag は、JavaScript の
onLoadイベント発生時のスクリプトを追加することで、
エラー・メッセージ情報表示用のポップアップ画面を開く。
従って、エラー・メッセージ情報表示用のポップアップ画面を表示する際、
下記の手順を取る。そのため、エラー・メッセージを表示前の画面では無く、
エラー・メッセージ発生時の遷移先画面にこのタグを配置するよう留意する
こと。
onLoadイベントでポップアップ画面が開かれる。
MessagesPopupTag は、<ts:body> タグが
生成する本来のonLoadイベント処理スクリプトに上書きされる。
JSP 内で MessagesPopupTagの前に
onLoad タグがある場合には、エラーがないときには
onLoad タグ内のスクリプトが有効になり、
エラーがある場合には MessagesPopupTag による設定で上書きされ、
エラー表示用のポップアップ画面が優先される。
MessagesPopupTag では、以下の属性をサポートする。
| 属性名 | デフォルト値 | 必須性 | 実行時式 | 概要 |
popup |
- | true |
true |
ポップアップ画面で表示するURL。JavaScriptの
window.open()の第一引数に対応する。 |
title |
popup |
false |
true |
エラーを表示するポップアップ画面のタイトル。 |
param |
- | false |
true |
JavaScript でポップアップ画面を開くときのパラメータ文字列。
|
paramType |
- | false |
true |
JavaScript でポップアップ画面を開くときのパラメータ文字列を、
ApplicationResources ファイルから取得する場合の
リソースキー。
|
paramFunc |
- | false |
true |
JavaScript でポップアップ画面を開くときの
パラメータ文字列を取得する JavaScript 関数名。
|
windowId |
- | false |
true |
開いたポップアップ画面を保持する JavaScript 変数名。
|
このタグによって設定されるスクリプティング変数はありません。
<ts:messagesPopup popup="/popup/errors.do" />
...
<ts:body ...>
BodyTag,
直列化された形式| フィールドの概要 | |
|---|---|
private static java.lang.String |
DEFAULT_TITLE
デフォルトタイトル。 |
static java.lang.String |
ON_LOAD_KEY
onLoad 時の処理をリクエスト属性に保存するときのキー。 |
private java.lang.String |
param
JavaScript
でポップアップ画面を開くときのパラメータ文字列。 |
private java.lang.String |
paramFunc
JavaScript
でポップアップ画面を開くときのパラメータ文字列を
取得する JavaScript 関数名。 |
private java.lang.String |
popup
ポップアップ画面で表示するURL。 |
static java.lang.String |
POPUP_ERROR_KEY
ポップアップ時にリクエストパラメータで渡されるエラー情報のキー。 |
static java.lang.String |
POPUP_MESSAGE_KEY
ポップアップ時にリクエストパラメータで渡されるメッセージ情報のキー。 |
private static long |
serialVersionUID
シリアルバージョンID |
private java.lang.String |
title
エラー情報・メッセージ情報を表示するポップアップ画面のタイトル。 |
private java.lang.String |
windowId
開いたポップアップ画面を保持する JavaScript 変数名。 |
| クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド |
|---|
id, pageContext |
| インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド |
|---|
EVAL_BODY_AGAIN |
| インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド |
|---|
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE |
| コンストラクタの概要 | |
|---|---|
MessagesPopupTag()
|
|
| メソッドの概要 | |
|---|---|
int |
doEndTag()
タグ評価終了時に呼ばれるメソッド。 |
int |
doStartTag()
タグ評価開始時に呼ばれるメソッド。 |
private java.lang.String |
getOnLoadScript(javax.servlet.http.HttpServletRequest req,
java.lang.String errorKey,
java.lang.String messageKey)
<body>タグのonLoad属性に
記述されるウィンドウオープンのためのスクリプトを生成する。 |
private java.lang.String |
getRequestParameterKey(java.lang.String errorKey,
java.lang.String messageKey)
セッションに格納されているエラー・メッセージ 情報のキーを元に、リクエストパラメータの クエリ文字列を作成する。 |
void |
release()
タグハンドラ解放時の処理。 |
void |
setParam(java.lang.String value)
JavaScript
でポップアップ画面を開くときのパラメータ文字列を設定する。 |
void |
setParamFunc(java.lang.String value)
JavaScript
でポップアップ画面を開くときのパラメータ文字列として、
指定されたJavaScript 関数の戻り値を設定する。 |
void |
setParamType(java.lang.String value)
JavaScript
でポップアップ画面を開くときのパラメータ文字列を、
ApplicationResources ファイルから取得して設定する。 |
void |
setPopup(java.lang.String value)
ポップアップ画面で表示するURLを設定する。 |
void |
setTitle(java.lang.String value)
エラーを表示するポップアップ画面のタイトルを設定する。 |
void |
setWindowId(java.lang.String value)
開いたポップアップ画面を保持する JavaScript
変数名を設定する。 |
| クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド |
|---|
doAfterBody, findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
private static final long serialVersionUID
public static final java.lang.String ON_LOAD_KEY
onLoad 時の処理をリクエスト属性に保存するときのキー。
public static final java.lang.String POPUP_ERROR_KEY
public static final java.lang.String POPUP_MESSAGE_KEY
private static final java.lang.String DEFAULT_TITLE
popup。
private java.lang.String popup
private java.lang.String title
private java.lang.String param
JavaScript
でポップアップ画面を開くときのパラメータ文字列。
private java.lang.String paramFunc
JavaScript
でポップアップ画面を開くときのパラメータ文字列を
取得する JavaScript 関数名。
private java.lang.String windowId
JavaScript 変数名。
| コンストラクタの詳細 |
|---|
public MessagesPopupTag()
| メソッドの詳細 |
|---|
public void setPopup(java.lang.String value)
value - ポップアップ画面で表示するURLpublic void setTitle(java.lang.String value)
value - タイトルpublic void setParam(java.lang.String value)
JavaScript
でポップアップ画面を開くときのパラメータ文字列を設定する。
value - パラメータpublic void setParamType(java.lang.String value)
JavaScript
でポップアップ画面を開くときのパラメータ文字列を、
ApplicationResources ファイルから取得して設定する。
value - パラメータpublic void setParamFunc(java.lang.String value)
JavaScript
でポップアップ画面を開くときのパラメータ文字列として、
指定されたJavaScript 関数の戻り値を設定する。
value - パラメータpublic void setWindowId(java.lang.String value)
JavaScript
変数名を設定する。
value - 変数名
public int doStartTag()
throws javax.servlet.jsp.JspException
javax.servlet.jsp.tagext.Tag 内の doStartTagjavax.servlet.jsp.tagext.TagSupport 内の doStartTagEVAL_BODY_INCLUDE
javax.servlet.jsp.JspException - JSP例外
private java.lang.String getOnLoadScript(javax.servlet.http.HttpServletRequest req,
java.lang.String errorKey,
java.lang.String messageKey)
<body>タグのonLoad属性に
記述されるウィンドウオープンのためのスクリプトを生成する。
req - HTTPリクエストerrorKey - エラー情報のキーmessageKey - メッセージ情報のキー
private java.lang.String getRequestParameterKey(java.lang.String errorKey,
java.lang.String messageKey)
errorKey - エラー情報キーmessageKey - メッセージ情報キー
public int doEndTag()
throws javax.servlet.jsp.JspException
javax.servlet.jsp.tagext.Tag 内の doEndTagjavax.servlet.jsp.tagext.TagSupport 内の doEndTagEVAL_PAGE
javax.servlet.jsp.JspException - JSP例外public void release()
javax.servlet.jsp.tagext.Tag 内の releasejavax.servlet.jsp.tagext.TagSupport 内の release
|
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||