jp.terasoluna.fw.web.struts.taglib
クラス MessagesPopupTag

java.lang.Object
  上位を拡張 javax.servlet.jsp.tagext.TagSupport
      上位を拡張 jp.terasoluna.fw.web.struts.taglib.MessagesPopupTag
すべての実装されたインタフェース:
Serializable, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag

public class MessagesPopupTag
extends javax.servlet.jsp.tagext.TagSupport

1ユーザが異なるユースケースの画面を操作し、エラー・メッセージのポップ アップ表示が同時に行われるとき、セッション上にユースケース毎のエラー・ メッセージ情報が結合されて表示されてしまう。
このタグと<ts:errors>タグ、及び<ts:messages>タグと 組み合わせる事により、画面単位で発生したポップアップエラーの混同を 避けることが可能となる。
MessagesPopupTagは、リクエスト属性として登録されている エラー・メッセージ情報をセッションに保存する。

MessagesPopupTag は、<ts:body> タグと連携してポップアップ画面を開く。 MessagesPopupTag を用いる際には、必ず <ts:body>タグと共に用い、また、 MessagesPopupTag<ts:body>タグよりも 前に記述されなくてはならない。

MessagesPopupTag は、JavaScriptonLoadイベント発生時のスクリプトを追加することで、 エラー・メッセージ情報表示用のポップアップ画面を開く。
従って、エラー・メッセージ情報表示用のポップアップ画面を表示する際、 下記の手順を取る。そのため、エラー・メッセージを表示前の画面では無く、 エラー・メッセージ発生時の遷移先画面にこのタグを配置するよう留意する こと。

  1. 一旦入力に対する結果画面が返される。
  2. その結果画面のonLoadイベントでポップアップ画面が開かれる。
  3. エラー・メッセージ情報表示用のリクエストがあらためてサーバに送信される。

MessagesPopupTag は、<ts:body> タグが 生成する本来のonLoadイベント処理スクリプトに上書きされる。 JSP 内で MessagesPopupTagの前に onLoad タグがある場合には、エラーがないときには onLoad タグ内のスクリプトが有効になり、 エラーがある場合には MessagesPopupTag による設定で上書きされ、 エラー表示用のポップアップ画面が優先される。

タグがサポートする属性

MessagesPopupTag では、以下の属性をサポートする。

属性名 デフォルト値 必須性 実行時式 概要
popup - true true ポップアップ画面で表示するURL。JavaScriptwindow.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, 直列化された形式

フィールドの概要
static String ON_LOAD_KEY
          onLoad 時の処理をリクエスト属性に保存するときのキー。
static String POPUP_ERROR_KEY
          ポップアップ時にリクエストパラメータで渡されるエラー情報のキー。
static String POPUP_MESSAGE_KEY
          ポップアップ時にリクエストパラメータで渡されるメッセージ情報のキー。
 
クラス 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()
          タグ評価開始時に呼ばれるメソッド。
 void release()
          タグハンドラ解放時の処理。
 void setParam(String value)
          JavaScript でポップアップ画面を開くときのパラメータ文字列を設定する。
 void setParamFunc(String value)
          JavaScript でポップアップ画面を開くときのパラメータ文字列として、 指定されたJavaScript 関数の戻り値を設定する。
 void setParamType(String value)
          JavaScript でポップアップ画面を開くときのパラメータ文字列を、 ApplicationResources ファイルから取得して設定する。
 void setPopup(String value)
          ポップアップ画面で表示するURLを設定する。
 void setTitle(String value)
          エラーを表示するポップアップ画面のタイトルを設定する。
 void setWindowId(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
 

フィールドの詳細

ON_LOAD_KEY

public static final String ON_LOAD_KEY
onLoad 時の処理をリクエスト属性に保存するときのキー。

関連項目:
定数フィールド値

POPUP_ERROR_KEY

public static final String POPUP_ERROR_KEY
ポップアップ時にリクエストパラメータで渡されるエラー情報のキー。

関連項目:
定数フィールド値

POPUP_MESSAGE_KEY

public static final String POPUP_MESSAGE_KEY
ポップアップ時にリクエストパラメータで渡されるメッセージ情報のキー。

関連項目:
定数フィールド値
コンストラクタの詳細

MessagesPopupTag

public MessagesPopupTag()
メソッドの詳細

setPopup

public void setPopup(String value)
ポップアップ画面で表示するURLを設定する。

パラメータ:
value - ポップアップ画面で表示するURL

setTitle

public void setTitle(String value)
エラーを表示するポップアップ画面のタイトルを設定する。

パラメータ:
value - タイトル

setParam

public void setParam(String value)
JavaScript でポップアップ画面を開くときのパラメータ文字列を設定する。

パラメータ:
value - パラメータ

setParamType

public void setParamType(String value)
JavaScript でポップアップ画面を開くときのパラメータ文字列を、 ApplicationResources ファイルから取得して設定する。

パラメータ:
value - パラメータ

setParamFunc

public void setParamFunc(String value)
JavaScript でポップアップ画面を開くときのパラメータ文字列として、 指定されたJavaScript 関数の戻り値を設定する。

パラメータ:
value - パラメータ

setWindowId

public void setWindowId(String value)
開いたポップアップ画面を保持する JavaScript 変数名を設定する。

パラメータ:
value - 変数名

doStartTag

public int doStartTag()
               throws javax.servlet.jsp.JspException
タグ評価開始時に呼ばれるメソッド。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の doStartTag
オーバーライド:
クラス javax.servlet.jsp.tagext.TagSupport 内の doStartTag
戻り値:
処理制御指示。常に EVAL_BODY_INCLUDE
例外:
javax.servlet.jsp.JspException - JSP例外

doEndTag

public int doEndTag()
             throws javax.servlet.jsp.JspException
タグ評価終了時に呼ばれるメソッド。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の doEndTag
オーバーライド:
クラス javax.servlet.jsp.tagext.TagSupport 内の doEndTag
戻り値:
処理制御指示。常に EVAL_PAGE
例外:
javax.servlet.jsp.JspException - JSP例外

release

public void release()
タグハンドラ解放時の処理。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の release
オーバーライド:
クラス javax.servlet.jsp.tagext.TagSupport 内の release


Copyright © 2012. All Rights Reserved.