openGionopenGion
5.6.9.0

org.opengion.hayabusa.taglib
クラス SelectTag

java.lang.Object
  上位を拡張 javax.servlet.jsp.tagext.TagSupport
      上位を拡張 javax.servlet.jsp.tagext.BodyTagSupport
          上位を拡張 org.opengion.hayabusa.taglib.CommonTagSupport
              上位を拡張 org.opengion.hayabusa.taglib.HTMLTagSupport
                  上位を拡張 org.opengion.hayabusa.taglib.SelectTag
すべての実装されたインタフェース:
java.io.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 SelectTag
extends HTMLTagSupport

プルダウンメニューを作成するHTML拡張タグです。 プルダウンメニュー内の選択肢は、selectタグの内容であるoptionタグ、 またはqueryOptionタグによって指定します。 optionタグがセットされない場合は、name属性の、コードリソース からoption文字列より、 プルダウンメニューの選択肢を作成します。 name 属性に ラベルリソース のキーを与えることで、 ロケールにあわせたリソースを使用して、 画面に表示します。ロケールは、ユーザー情報の lang 属性を初期値で使用し、 セットされていない場合は、リクエスト情報のロケールから取得します。 language 属性で定義されている場合は、そちらを優先します。

関連項目:
直列化された形式
形式サンプル:
 ●形式:<og:select name="…" />
 ●body:あり(EVAL_BODY_INCLUDE:BODYをインクルードし、{@XXXX} は解析しません)

 ●Tag定義:
   <og:select
       name             ○【TAG】メニューの名称を指定します。(必須)
       value              【TAG】値を指定します
       defaultVal         【TAG】value属性に値がセットされていないとき使用する、初期値を指定します
       lbl                【TAG】ラベルリソースのラベルIDを指定します
       must               【TAG】必須入力を表す色に変えるかどうか[true/false]を指定します(初期値:false)
       mustAny            【TAG】選択必須入力(どれかひとつ必須)を表す色[true/mustAny/その他]を指定します(初期値:無指定)
       addNoValue         【TAG】値なしのOptionを含めるかどうか[true/false]を指定します(初期値:false)
       td                 【TAG】テーブル形式の <td> タグを使用するかどうか[yes/no/false]を指定します(初期値:yes)
       colspan            【TAG】フィールド部分の colspan を指定します
       optionAttributes   【TAG】JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します
       size               【TAG】リストボックスとして表示する場合の表示行数を指定します
       multiple           【TAG】複数選択を可能(multiple)にします(初期値:未設定)
       id                 【HTML】要素に対して固有の名前(id)をつける場合に設定します
       caseKey            【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null)
       caseVal            【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null)
       caseNN             【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:true)
       caseNull           【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:true)
       lang               【HTML】要素の内容と他の属性値の言語(lang,xml:lang)を指定します
       dir                【HTML】文字表記の方向(dir)を指定します
       title              【HTML】要素に対する補足的情報(title)を設定します
       style              【HTML】この要素に対して適用させるスタイルシート(style)を設定します
       disabled           【TAG】その部品に対して、選択や変更が出来ないように(disabled)指定します(サーバーに送信されない)
       tabindex           【HTML】タブの移動順(tabindex)を指定します(0 ~ 32767)
       clazz              【HTML】要素に対して class 属性を設定します
       language           【TAG】タグ内部で使用する言語コード[ja/en/zh/…]を指定します
       onClick            【HTML】JavaScriptのイベント onClick を設定します(例:onClick="renew('query.jsp','QUERY');")
       onChange           【HTML】JavaScriptのイベント onChange を設定します(例:onChange="renew('query.jsp','QUERY');")
       onBlur             【HTML】JavaScriptのイベント onBlur を設定します(例:onBlur="this.value=value.toUpperCase();")
       onFocus            【HTML】JavaScriptのイベント onFocus を設定します
       ondblClick         【HTML】JavaScriptのイベント ondblClick を設定します
       onMouseDown        【HTML】JavaScriptのイベント onMouseDown を設定します
       onMouseUp          【HTML】JavaScriptのイベント onMouseUp を設定します
       onMouseMove        【HTML】JavaScriptのイベント onMouseMove を設定します
       onMouseOut         【HTML】JavaScriptのイベント onMouseOut を設定します
       onMouseOver        【HTML】JavaScriptのイベント onMouseOver を設定します
       onSelect           【HTML】JavaScriptのイベント onSelect を設定します
       onKeydown          【HTML】JavaScriptのイベント onKeydown を設定します
       onKeypress         【HTML】JavaScriptのイベント onKeypress を設定します
       onKeyup            【HTML】JavaScriptのイベント onKeyup を設定します
       roles              【TAG】ロールをセットします
       eventColumn        【TAG】イベントカラム(親カラム)を指定します
       eventURL           【TAG】イベントカラム指定時に呼び出すURL
       eventCallback      【TAG】eventColumn実行後のcallbak関数指定
       debug              【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
   >   ... Body ...
   </og:select>

 ●使用例
    <og:select name="CDC">                       CodeResource プロパティの値を使用したいときはcode属性を使います。
        <og:option code="CDC" />
    </og:select>

    <og:select name="CDC">                       選択項目の一番上に項目を付け足すことも可能です。
        <og:option msg="MSG0001" />              MessageResource プロパティの値を使用したいとききはmsg属性を使います。
        <og:option code="CDC" />
    </og:select>

    <og:select name="CDC">                       選択項目の一番上に項目を付け足すことも可能です。
        <og:option lbl="CDC1" />                 LabelResource プロパティの値を使用したいとききはlbl属性を使います。
        <og:option code="CDC" />
    </og:select>

    <og:select name="CDC" multiple="multiple">   選択肢の中から複数選択できるようにするときはmultiple属性を使います。
        <og:option code="CDC" />
    </og:select>

    <og:select name="CDC" disabled="disabled">   選択不可にするときはdisabled属性を使います。
        <og:option code="CDC" />
    </og:select>

    <og:select name="CDC">                       選択肢をSELECT文の結果から作成したいときはqueryOptionタグと組み合わせて使います。
        <og:queryOption>
                    select NOSYN,NOSYN,':',NMSYN from DB01 ORDER BY 1
        </og:queryOption>
    </og:select>

    <og:select name="CDC" eventColumn="OYA" >    親子関係のプルダウンを作る場合
        <og:queryOption>
                    select NOSYN,NOSYN,':',NMSYN from DB01
                     where CLM = "{@OYA}" ORDER BY 1
        </og:queryOption>
    </og:select>
機能分類
選択データ制御
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
 
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド
bodyContent
 
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド
id, pageContext
 
インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド
EVAL_BODY_AGAIN
 
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
コンストラクタの概要
SelectTag()
           
 
メソッドの概要
protected  void addOption(java.lang.String opt)
          メニュー項目の選択項目を追加します。
 int doStartTag()
          Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
protected  java.lang.String getValue()
          値を外部から取り出します。
protected  boolean isMultipleAll()
          複数選択可能時に全選択を設定するかどうかを返します。
protected  java.lang.String makeTag()
          入力用のプルダウンメニューを作成します。
protected  void release2()
          タグリブオブジェクトをリリースします。
 void setAddNoValue(java.lang.String flag)
          【TAG】値なしのOptionを含めるかどうか[true/false]を指定します(初期値:false)。
 void setColspan(java.lang.String sp)
          【TAG】フィールド部分の colspan を指定します。
 void setDefaultVal(java.lang.String dv)
          【TAG】value属性に値がセットされていないとき使用する、初期値を指定します。
 void setEventCallback(java.lang.String callback)
          【TAG】eventColumn実行後のcallbak関数指定。
 void setEventColumn(java.lang.String col)
          【TAG】イベントカラム(親カラム)を指定します。
 void setEventURL(java.lang.String url)
          【TAG】イベントカラム指定時に呼び出すURL。
 void setMultiple(java.lang.String multi)
          【TAG】複数選択を可能(multiple)にします(初期値:未設定)。
 void setName(java.lang.String name)
          【TAG】メニューの名称を指定します。
protected  void setRawParam(java.lang.String param)
          パラメーター変換({@XXXX}の置き換えをしない状態のパラメーターをセットします。
 void setSize(java.lang.String size)
          【TAG】リストボックスとして表示する場合の表示行数を指定します。
 void setTd(java.lang.String flag)
          【TAG】テーブル形式の <td> タグを使用するかどうか[yes/no/false]を指定します(初期値:yes)。
 void setValue(java.lang.String val)
          【TAG】値を指定します。
 java.lang.String toString()
          このオブジェクトの文字列表現を返します。
 
クラス org.opengion.hayabusa.taglib.HTMLTagSupport から継承されたメソッド
doEndTag, getMustType, makeMustHidden, setAccesskey, setClazz, setDir, setDisabled, setId, setLang, setMust, setMustAny, setOnBlur, setOnChange, setOnClick, setOndblClick, setOnFocus, setOnKeydown, setOnKeypress, setOnKeyup, setOnMouseDown, setOnMouseMove, setOnMouseOut, setOnMouseOver, setOnMouseUp, setOnSelect, setOptionAttributes, setReadonly, setRoles, setStyle, setTabindex, setTitle
 
クラス org.opengion.hayabusa.taglib.CommonTagSupport から継承されたメソッド
add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getHostName, getLabel, getLabelInterface, getLanguage, getLASTAttri, getLongLabel, getMsglbl, getNVLAttri, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getReservedParameter, getReservedValue, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getTagName, getUser, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, 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, setPageContext, setParent, setValue
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド
getParent, setPageContext, setParent
 

コンストラクタの詳細

SelectTag

public SelectTag()
メソッドの詳細

doStartTag

public int doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の doStartTag
オーバーライド:
クラス CommonTagSupport 内の doStartTag
戻り値:
後続処理の指示( EVAL_BODY_INCLUDE )
変更履歴:
5.0.2.0 (2009/11/01) 複数パラメーターの選択に対応
5.1.7.0 (2010/06/01) command=RENEWの場合はdefaultValを無視する。
5.1.9.0 (2010/08/01) addNoValue 対応
5.2.2.0 (2010/11/01) caseKey 、caseVal 属性対応
5.3.7.0 (2011/07/01) 5.1.7.0 (2010/06/01)の対応で判定条件が逆転しているバグを修正

release2

protected void release2()
タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。

オーバーライド:
クラス HTMLTagSupport 内の release2
変更履歴:
2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加
2.0.0.8 (2002/10/09) yes/no/false で指定するように変更
3.0.1.3 (2003/03/11) colspan 属性を追加。
3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。
3.5.4.0 (2003/11/25) value ,defaultVal 属性を追加。
3.8.0.9 (2005/10/17) 複数選択可能時に全選択を設定する。
4.1.2.1 (2008/03/13) must , mustAny 属性を自動化します。
4.3.6.0 (2009/04/01) eventColumn,eventURL追加
5.1.7.0 (2010/06/01) 動的プルダウン実装見直し
5.1.9.0 (2010/08/01) columnタグで動的プルダウンが動作しない不具合に対応
5.1.9.0 (2010/08/01) addNoValue 属性を追加。
5.2.1.0 (2010/10/01) must , mustAny 属性の処理を、HTMLTagSupport に移します。

makeTag

protected java.lang.String makeTag()
入力用のプルダウンメニューを作成します。 表示順の項目名タグは、あらかじめ作成済みの値をここでは受け取ります。 hasSelect 属性の値に応じて,タグの作成方法は変わります。

定義:
クラス HTMLTagSupport 内の makeTag
戻り値:
表示順選択用のプルダウンメニュータグ
変更履歴:
2.0.0.8 (2002/10/09) yes/no/false で指定するように変更
2.0.1.0 (2002/10/10) ラベルとフィールドのセパレーターとして、コロン(:)を使用するかどうかを指定できる
3.0.1.3 (2003/03/11) colspan 属性を追加。
3.5.4.0 (2003/11/25) value ,defaultVal 属性を追加。
4.0.0.0 (2005/01/31) マルチセレクションのON/OFFをここで指定。
4.1.2.1 (2008/03/13) must , mustAny 属性を自動化します。
4.3.6.0 (2009/04/01) eventColumn対応
4.3.7.1 (2009/06/08) id=labelのclass化
5.1.7.0 (2010/06/01) 動的プルダウン実装見直し
5.2.1.0 (2010/10/01) must , mustAny 属性の処理を、HTMLTagSupport に移します。
5.5.3.0 (2012/06/01) idのセット見直し
5.6.2.2 (2013/03/15) 自動must処理の出力位置を変更

addOption

protected void addOption(java.lang.String opt)
メニュー項目の選択項目を追加します。 select タグのBODY要素の OptionTag よりアクセスされます。

パラメータ:
opt - オプションタグ文字列
変更履歴:
3.1.2.0 (2003/04/07) taglib パッケージ内部で使用している箇所を protected 化する。

setName

public void setName(java.lang.String name)
【TAG】メニューの名称を指定します。

パラメータ:
name - 名称
説明:
 メニューの名称を指定します。

setSize

public void setSize(java.lang.String size)
【TAG】リストボックスとして表示する場合の表示行数を指定します。

パラメータ:
size - 表示行数
説明:
 表示行数を指定します。

setMultiple

public void setMultiple(java.lang.String multi)
【TAG】複数選択を可能(multiple)にします(初期値:未設定)。

パラメータ:
multi - 複数選択("multiple" または "true") ,初期値全選択( "ALL" )
説明:
 multiple 値が "multiple" または "true" の場合、複数選択状態になります。
 また、"ALL" を設定する場合は、OptionTag上で、すべてのOption が選択状態に
 初期設定されます。
 大文字、小文字の種別はなくしますが、指定以外の文字が設定された場合は、エラーになります。
変更履歴:
3.8.0.9 (2005/10/17) 複数選択可能時に全選択を設定する。

setTd

public void setTd(java.lang.String flag)
【TAG】テーブル形式の <td> タグを使用するかどうか[yes/no/false]を指定します(初期値:yes)。

パラメータ:
flag - [yes:tdタグを使用/no:ラベルとフィールド/false:フィールドのみ]
説明:
 初期値は、使用する("yes") です。
変更履歴:
2.0.0.8 (2002/10/09) yes/no/false で指定するように変更
5.5.1.0 (2012/04/03) エラーメッセージ変更

setColspan

public void setColspan(java.lang.String sp)
【TAG】フィールド部分の colspan を指定します。

パラメータ:
sp - フィールド部分の colspan
説明:
 通常は、3 を指定して、フィールド、ラベル、フィールドの
 組み合わせ部分に、長いフィールドが適用されるように使用します。

  <og:select name="CDK" colspan="3" />
変更履歴:
3.0.1.3 (2003/03/11) colspan 属性を追加。

setValue

public void setValue(java.lang.String val)
【TAG】値を指定します。

パラメータ:
val - 値
説明:
 ここで指定された値が、optionタグの値と同じであれば、選択状態になります。

    <og:select name="CDC" value="{@ABC}" defaultVal="XYZ"  >
         <og:option value="ABC" lbl="CDC1" />
         <og:option value="XYZ" lbl="CDC2" />
    </og:select>
変更履歴:
3.5.4.0 (2003/11/25) 新規作成
5.0.2.0 (2009/11/01) 複数パラメーターの選択に対応

getValue

protected java.lang.String getValue()
値を外部から取り出します。 OptionTag で、value を取り出して、内部の値と同じ場合は、選択状態にします。

戻り値:
内部に設定された値
変更履歴:
3.5.4.0 (2003/11/25) 新規作成

setEventColumn

public void setEventColumn(java.lang.String col)
【TAG】イベントカラム(親カラム)を指定します。

パラメータ:
col - 親カラム名
説明:
 親子関係のカラムを作成する場合に利用します。
   queryOptionタグとセットで利用して下さい。

   ※詳細はcolumnTagのeventColumn属性の説明をご覧下さい。
変更履歴:
4.3.6.0 (2009/04/01)

setEventURL

public void setEventURL(java.lang.String url)
【TAG】イベントカラム指定時に呼び出すURL。

パラメータ:
url - 呼び出すURL
説明:
 イベントカラム指定時に部品を作成するJSPを指定します。
   初期値はシステムリソースのEVENT_COLUMN_URLです。
   (例:eventURL="makeColumn_custom.jsp")

   ※詳細はcolumnTagのeventURL属性の説明をご覧下さい。
変更履歴:
4.3.6.0 (2009/04/01)

isMultipleAll

protected boolean isMultipleAll()
複数選択可能時に全選択を設定するかどうかを返します。 これは、上位入れ子のタグの OptionTag で、multipleAll を取り出して、 true であれば、全選択に設定します。

戻り値:
全選択:true / 通常:false
変更履歴:
3.8.0.9 (2005/10/17) 新規作成

setDefaultVal

public void setDefaultVal(java.lang.String dv)
【TAG】value属性に値がセットされていないとき使用する、初期値を指定します。

パラメータ:
dv - 初期値
説明:
 value属性に値がセットされていないときに、初期値をセットします。

 なお、commandがRENEWの場合は、このdefaultValは適用されません。
 これは、defaultValの値が埋め込まれた項目が存在する画面に戻った際に、
 defaultValの項目の値がnullとなっていた場合に、defaultValの値が復元されると、
 検索結果との不一致が発生するためです。
変更履歴:
3.5.4.0 (2003/11/25) 新規作成
5.0.2.0 (2009/11/01) 複数パラメーターの選択に対応

setAddNoValue

public void setAddNoValue(java.lang.String flag)
【TAG】値なしのOptionを含めるかどうか[true/false]を指定します(初期値:false)。

パラメータ:
flag - [true:含める/それ以外:含めない]
説明:
 カラムがプルダウンメニュー形式の場合、選択肢には通常データベース登録できる候補が
 並びます。しかし、検索時には、候補を絞りたくない(指定しない)場合があり、
 その様な場合には、値なしのOptionを含める(true)ことで、対応可能です。
 初期値:false(値なしのOptionを含めない)は、過去の互換性を重視しているため、column タグと異なります。
変更履歴:
5.1.9.0 (2010/08/01) 新規追加

setRawParam

protected void setRawParam(java.lang.String param)
パラメーター変換({@XXXX}の置き換えをしない状態のパラメーターをセットします。

パラメータ:
param - パラメーター
変更履歴:
5.1.7.0 (2010/06/01) 新規作成(動的プルダウン実装見直し)
5.5.4.0 (2012/07/02) 予約語対応

setEventCallback

public void setEventCallback(java.lang.String callback)
【TAG】eventColumn実行後のcallbak関数指定。

パラメータ:
callback - callbak関数
説明:
 eventColumnの動作終了後に実行するCallback関数の指定を行います。
 関数名のみを指定して下さい。
  ex) sampleCallback()を実行する場合はeventCallback="sampleCallback"
 実行する関数の第一引数には自動的に次の要素が入った配列が渡されます
  [0] 変更された子カラムのID属性値
  [1] evnetColumn実行後の子カラムの値
  [2] eventColumn実行前の子カラムの値

 この属性は、optionAttributesへの設定と同様の動作を行います。
変更履歴:
5.5.4.0 (2012/07/02) 新規追加

toString

public java.lang.String toString()
このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。

オーバーライド:
クラス CommonTagSupport 内の toString
戻り値:
このクラスの文字列表現

openGion 5.6.9.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.