クラス ValueMapTag
- java.lang.Object
-
- javax.servlet.jsp.tagext.TagSupport
-
- javax.servlet.jsp.tagext.BodyTagSupport
-
- org.opengion.hayabusa.taglib.CommonTagSupport
-
- org.opengion.hayabusa.taglib.ValueMapTag
-
- すべての実装されたインタフェース:
Serializable
,javax.servlet.jsp.tagext.BodyTag
,javax.servlet.jsp.tagext.IterationTag
,javax.servlet.jsp.tagext.JspTag
,javax.servlet.jsp.tagext.Tag
,javax.servlet.jsp.tagext.TryCatchFinally
public class ValueMapTag extends CommonTagSupport
DBTableModelオブジェクトから、指定のキー情報と、レコードから、Mapオブジェクトを作成し、それを、 BODY部のフォーマットに対応して、出力します。 valueタグの、command="MAPOBJ" や、ALL_MAPOBJ に相当する処理を、複数キーと行レベルのデータで 管理します。 設定した値は、Mapを優先した、特殊な、{@XXXX} 形式で 取り出すことができます。 keys で、CSV形式でカラム名を指定し、これらを、連結した文字列を、Mapのキー情報に使います。 Mapの値情報は、そのレコードの配列になります。 keys を指定しない場合は、最初のカラムの値が、キーになります。 キーが重複する場合、先に現れたデータが優先されます。 値の取出し方法は、キーに対して、{@XXXX} 形式を、適用します。 Map に存在しないキーは、リクエスト変数や、通常のvalus変数を見ます。 valClm で、{@XXXX} 形式で取り出す値のカラムを指定できます。 valClm を指定しない場合は、2番目のカラムを使用します。 特殊機能 ・holdTag属性:{@XXXX} を、指定のタグで囲います。 例えば、holdTag="span" とすると、<span class="YYYYの値" >XXXXの値</span> という文字列を作成します。 ・clsClms属性:先の指定のタグで囲う場合、そのタグのclass属性を指定できます。 複数指定した場合は、スペースで、連結します。 ・{@XXXX cls="B"} とすると、個別の clsClms の値を使用せず、この値を、class属性として使います。 clsClms と同様に、holsTag属性を指定しておく必要があります。 ・tipsClms属性:先の指定のタグで囲う場合、そのタグのtitle属性を指定できます。 マウスオーバーで、チップス表示されます。 ・{@XXXX tips="YYYY"} とすると、個別の tipsClms の値を使用せず、この値を、title属性として使います。 tipsClms と同様に、holsTag属性を指定しておく必要があります。 ・nnClms属性:この属性で指定された値が、nullの場合、{@XXXX} の解析を行いません。 正確に言うと、Mapに取り込みません。この場合、先のholdTag属性で指定したタグそのものも 出力しません。 ・{@XXXX* str="val"} とすると、キーワードのあいまい検索部分に、strで指定した val文字列が存在する場合のみ有効とします。 ・キーに対して、Mapは、行データ全部を持っています。{@XXXX} は、最初のカラムの値です。 ・2番目を取得する場合は、{@XXXX 1}と、3番目は、{@XXXX 2}と指定します。 ・{@XXXX*} を指定すると、キーのあいまい検索で、キーそのものを複数選択することが出来ます。 この場合、spanタグで囲う機能と併用すると、複数のspanタグを持つ文字列を合成できます。 この特定のタグは、holdTag 属性で指定します。 このキーのあいまい検索で、表示する順番は、DBTableModelでMapに読み込んだ順番になります。 {@XXXX* 2} のような、取得カラムの指定も可能です。 取得カラムの指定も可能ですが、カラム番号は、常に一番最後に記述してください。 ・{@XXXX!*} とすると、表示する順番を、逆順にすることが出来ます。取得カラムの指定も可能です。 ・{@$XXXX} とすると、holdTagも、clsClms も使用せず、設定値のみ出力します。 この場合は、固定値になるため、holsTagも、clsClms も使用しません。 ・{@*XXXX!*} とすると、キーのあいまい指定の残り部分の文字列を出力します。連番の場合の番号を取り出せます。 ・{@^XXXX} とすると、request.getAttribute()の値を優先して使用します。{@^XXXX*}などのあいまい指定も可能です。 この場合、オリジナルのキーは、DBTableModel上に必要です。値の入れ替えのみ、行う感じです。 ※ このタグは、Transaction タグの対象です。- 関連項目:
- 直列化された形式
- 導入されたバージョン:
- JDK8.0,
-
-
フィールドの概要
-
クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport
BR, BUFFER_MIDDLE, CR
-
-
コンストラクタの概要
コンストラクタ コンストラクタ 説明 ValueMapTag()
デフォルトコンストラクター
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 int
doAfterBody()
Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。int
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。int
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。protected int[]
getParameterRows()
表示データの HybsSystem.ROW_SEL_KEY を元に、選ばれた 行を処理の対象とします。protected String
getRequestValue(String key)
リクエスト情報の文字列を取得します。protected void
release2()
タグリブオブジェクトをリリースします。void
setClsClms(String clms)
【TAG】holdTagを使用するとき、そのタグの属性にclass属性を出力する場合のカラム名をCSV形式で指定します。void
setHoldTag(String tag)
【TAG】値の前後を、挟むタグを指定します。void
setKeys(String key1)
【TAG】パラメータ に登録するキーをセットします。void
setNnClms(String clms)
【TAG】パラメータが NULL の時に、設定しないカラム名を、CSV形式で指定します。protected void
setParam(ConcurrentMap<ValueMapParamTag.VMP_KEYS,String> pMap)
ValueMapParamTagで設定された各種パラメータ を受け取ります。void
setReqAttUpClms(String clms)
【TAG】{@^XXXX}使用時に request.getAttribute() をセットすると同時に設定するカラム名をCSV形式で指定します。void
setSelectedAll(String all)
【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false)。void
setSeparator(String sepa)
【TAG】キーとなるカラム名の値を連結する項目区切り文字をセットします(初期値:"_")。void
setTableId(String id)
【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=])。void
setTipsClms(String clms)
【TAG】holdTagを使用するとき、そのタグの属性にtitle属性を出力する場合のカラム名をCSV形式で指定します。void
setValClm(String clm)
【TAG】パラメータ から取り出す値カラムを指定ます。void
setXssCheck(String flag)
【TAG】パラメータの HTMLTag開始/終了文字(><) 存在チェックを実施するかどうか[true/false]を設定します (初期値:USE_XSS_CHECK[=])。String
toString()
このオブジェクトの文字列表現を返します。-
クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport
add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getCSVParameter, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLongLabel, getMsg, getMsglbl, getObject, getParameterNames, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getTagName, getTransaction, getUser, getUserEditInfo, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, makeUrl, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseIf, setCaseKey, setCaseNN, setCaseNull, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterNames, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheck
-
クラスから継承されたメソッド javax.servlet.jsp.tagext.BodyTagSupport
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
-
クラスから継承されたメソッド javax.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
-
-
-
-
コンストラクタの詳細
-
ValueMapTag
public ValueMapTag()
デフォルトコンストラクター
-
-
メソッドの詳細
-
doStartTag
public int doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。- 定義:
doStartTag
インタフェース内javax.servlet.jsp.tagext.Tag
- オーバーライド:
doStartTag
クラス内CommonTagSupport
- 戻り値:
- 後続処理の指示
-
doAfterBody
public int doAfterBody()
Taglibのタグ本体を処理する doAfterBody() を オーバーライドします。- 定義:
doAfterBody
インタフェース内javax.servlet.jsp.tagext.IterationTag
- オーバーライド:
doAfterBody
クラス内CommonTagSupport
- 戻り値:
- 後続処理の指示(SKIP_BODY)
-
doEndTag
public int doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。- 定義:
doEndTag
インタフェース内javax.servlet.jsp.tagext.Tag
- オーバーライド:
doEndTag
クラス内CommonTagSupport
- 戻り値:
- 後続処理の指示
-
release2
protected void release2()
タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。- オーバーライド:
release2
クラス内CommonTagSupport
-
getRequestValue
protected String getRequestValue(String key)
リクエスト情報の文字列を取得します。 これは、CommonTagSupportの#getRequestValue( String ) を オーバーライドして、Mapから、設定値を取得します。- オーバーライド:
getRequestValue
クラス内CommonTagSupport
- パラメータ:
key
- キー- 戻り値:
- リクエスト情報の文字列
- 関連項目:
CommonTagSupport.getRequestValue( String )
-
getParameterRows
protected int[] getParameterRows()
表示データの HybsSystem.ROW_SEL_KEY を元に、選ばれた 行を処理の対象とします。- オーバーライド:
getParameterRows
クラス内CommonTagSupport
- 戻り値:
- 選択行の配列
-
setParam
protected void setParam(ConcurrentMap<ValueMapParamTag.VMP_KEYS,String> pMap)
ValueMapParamTagで設定された各種パラメータ を受け取ります。- パラメータ:
pMap
- ValueMapParamTagで設定された各種パラメータ
-
setSelectedAll
public void setSelectedAll(String all)
【TAG】データを全件選択済みとして処理するかどうか[true/false]を指定します(初期値:false)。- パラメータ:
all
- 選択済み処理可否 [true:全件選択済み/false:通常]
-
setTableId
public void setTableId(String id)
【TAG】(通常は使いません)結果のDBTableModelを、sessionに登録するときのキーを指定します (初期値:HybsSystem#TBL_MDL_KEY[=])。- パラメータ:
id
- テーブルID (sessionに登録する時のID)
-
setNnClms
public void setNnClms(String clms)
【TAG】パラメータが NULL の時に、設定しないカラム名を、CSV形式で指定します。- パラメータ:
clms
- NULL の時に、設定しないカラム名を、CSV形式で指定
-
setHoldTag
public void setHoldTag(String tag)
【TAG】値の前後を、挟むタグを指定します。- パラメータ:
tag
- 値の前後を挟むタグ- 関連項目:
setClsClms( String )
-
setClsClms
public void setClsClms(String clms)
【TAG】holdTagを使用するとき、そのタグの属性にclass属性を出力する場合のカラム名をCSV形式で指定します。- パラメータ:
clms
- class属性を出力する場合のカラム名を、CSV形式で指定- 関連項目:
setHoldTag( String )
-
setTipsClms
public void setTipsClms(String clms)
【TAG】holdTagを使用するとき、そのタグの属性にtitle属性を出力する場合のカラム名をCSV形式で指定します。- パラメータ:
clms
- title属性を出力する場合のカラム名を、CSV形式で指定- 関連項目:
setHoldTag( String )
-
setReqAttUpClms
public void setReqAttUpClms(String clms)
【TAG】{@^XXXX}使用時に request.getAttribute() をセットすると同時に設定するカラム名をCSV形式で指定します。- パラメータ:
clms
- request.getAttribute()使用時に、同時に置き換えるカラム名を、CSV形式で指定
-
setSeparator
public void setSeparator(String sepa)
【TAG】キーとなるカラム名の値を連結する項目区切り文字をセットします(初期値:"_")。- パラメータ:
sepa
- 連結文字列 (初期値:"_")
-
setXssCheck
public void setXssCheck(String flag)
【TAG】パラメータの HTMLTag開始/終了文字(><) 存在チェックを実施するかどうか[true/false]を設定します (初期値:USE_XSS_CHECK[=])。- パラメータ:
flag
- XSSチェック [true:する/false:しない]- 関連項目:
SystemData.USE_XSS_CHECK
-
toString
public String toString()
このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。- オーバーライド:
toString
クラス内CommonTagSupport
- 戻り値:
- このクラスの文字列表現
-
-