クラス HTMLTagSupport

  • すべての実装されたインタフェース:
    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
    直系の既知のサブクラス:
    BackGamenTag, ButtonTag, ColumnEditorTag, ColumnTag, FrameTag, ImageTag, InputTag, LinkTag, OptionTag, PopupTag, QueryButtonTag, SelectTag, SubmitTag, TextareaTag

    abstract class HTMLTagSupport
    extends CommonTagSupport
    CommonTagSupport から継承されたサブクラスです。 HTML関連の共通属性を、設定する為のメソッドを持っています。 主な、HTMLタグは、このクラスを継承して作ることで、必要な属性は、 Attributes オブジェクト にセットされるため、#set(String,String) get(String) メソッドで扱う事が可能になります。 不要な属性は、tld ファイルに記述しなければ、使用されません。 以下に、このメソッド内で定義される属性を記述します。 roles 【TAG】ロールをセットします must 【TAG】必須入力を表す色に変えるかどうか[true/false]を指定します(初期値:false) mustAny 【TAG】選択必須入力(どれかひとつ必須)を表す色[true/mustAny/その他]を指定します(初期値:無指定) useMustHidden 【TAG】必須の自動チェック用Hiddenを出力するかどうか[true/false]を指定します(初期値:true) aimai 【TAG】曖昧検索可能フィールドとして、曖昧検索方法を指定します(初期値:null) optionAttributes 【TAG】JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します id 【HTML】要素に対して固有の名前(id)をつける場合に設定します clazz 【HTML】要素に対して class 属性を設定します lang 【HTML】要素の内容と他の属性値の言語(lang,xml:lang)を指定します dir 【HTML】文字表記の方向(dir)を指定します title 【HTML】要素に対する補足的情報(title)を設定します style 【HTML】この要素に対して適用させるスタイルシート(style)を設定します readonly 【TAG】その部品に対して変更が出来ないように(readonly)指定します(サーバーに送信される) disabled 【TAG】その部品に対して、選択や変更が出来ないように(disabled)指定します(サーバーに送信されない) tabindex 【HTML】タブの移動順(tabindex)を指定します(0 ~ 32767) accesskey 【HTML】アクセスキー(alt+キーで直接指定)を割り当てます 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 を設定します onSelect 【HTML】JavaScriptのイベント onSelect を設定します ondblClick 【HTML】JavaScriptのイベント ondblClick を設定します onMouseDown 【HTML】JavaScriptのイベント onMouseDown を設定します onMouseUp 【HTML】JavaScriptのイベント onMouseUp を設定します onMouseMove 【HTML】JavaScriptのイベント onMouseMove を設定します onMouseOut 【HTML】JavaScriptのイベント onMouseOut を設定します onMouseOver 【HTML】JavaScriptのイベント onMouseOver を設定します onKeydown 【HTML】JavaScriptのイベント onKeydown を設定します onKeypress 【HTML】JavaScriptのイベント onKeypress を設定します onKeyup 【HTML】JavaScriptのイベント onKeyup を設定します autocomplete 【HTML5】入力候補を提示して入力内容を自動補完する[on/off](初期値はon)。 autofocus 【HTML5】指定した入力欄にカーソルが当たって自動的にフォーカスされます。 pattern 【HTML5】正規表現で入力値のパターンを指定します。 placeholder 【HTML5】入力欄に初期表示する内容を指定します。 list 【HTML5】ユーザーに入力候補として提案するデータリストの要素のid属性の値を指定します。 min 【HTML5】入力欄で入力できる最小値を指定します。 max 【HTML5】入力欄で入力できる最大値を指定します。 step 【HTML5】入力欄で刻むステップ値を指定する。 required 【HTML5】入力必須を指定します 各属性は、{@XXXX} 変数が使用できます。 これは、ServletRequest から、XXXX をキーに値を取り出し,この変数に 割り当てます。つまり、このXXXXをキーにリクエストすれば、 この変数に値をセットすることができます。 http://localhost/query.jsp?KEY1=VLA1&KEY2=VAL2 のようなリクエストで、{@KEY1} とすれば、 VAL1 がセットされます。 このタグは、ラベル部分と入力フィールド部分がテーブルタグの<td> により左右に分割されます。HTML 表示時は、前後に<tr>タグで囲って, 整形できます。 ※ readonly , disabled , autofocus[HTML5] , required[HTML5] は、論理属性です。 通常は、キーワードのみの指定で、有効です。 よって、readonly="false" としても、readonly というキーワードが存在すると、有効になります。 記述例 ①readonly ②readonly="" ③readonly="readonly" の3種類が推奨されます。 「属性名」 「属性名=""」 「属性名="属性名"」 フレームワーク側の問題として、①や②の渡し方は他の属性との関係や、動的なリクエスト変数の処理の 関係で、③を利用します。また、動的切替の為に、④readonly="[true/false]" も受け付けます。 内部的には、readonly="true" の場合は、readonly="readonly" を作成し、readonly="false" の場合は、 なにも作成しないという処理を行っています。 7.4.2.1 (2021/05/21) システム定数 USE_ACCESSKEY を false に設定すると、accesskey は使用されません。
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • HTMLTagSupport

        public HTMLTagSupport()
        デフォルトコンストラクター
    • メソッドの詳細

      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 javax.servlet.jsp.tagext.Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理
      • release2

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

        protected abstract String makeTag()
        タグ文字列を作成します。 ここでは、#doEndTag() で、jspPrint の出力として書き出されます。 各サブクラスで、実装してください。
        戻り値:
        タグ文字列
      • setId

        public void setId​(String id)
        【HTML】要素に対して固有の名前(id)をつける場合に設定します。
        オーバーライド:
        setId クラス内 javax.servlet.jsp.tagext.TagSupport
        パラメータ:
        id - 固有の名前
      • setClazz

        public void setClazz​(String cls)
        【HTML】要素に対して class 属性を設定します。
        パラメータ:
        cls - class属性
      • setLang

        public void setLang​(String lang)
        【HTML】要素の内容と他の属性値の言語(lang,xml:lang)を指定します。
        パラメータ:
        lang - 言語 [ja/en/zh/…]
      • setDir

        public void setDir​(String dir)
        【HTML】文字表記の方向(dir)を指定します。
        パラメータ:
        dir - 文字表記方向 [ltr:左から右、rtl:右から左]
      • setTitle

        public void setTitle​(String title)
        【HTML】要素に対する補足的情報(title)を設定します。
        パラメータ:
        title - タイトル情報
      • setStyle

        public void setStyle​(String style)
        【HTML】この要素に対して適用させるスタイルシート(style)を設定します。
        パラメータ:
        style - スタイルシート (例 style="color:red; font-size:24pt;" など)
      • setReadonly

        public void setReadonly​(String ronly)
        【TAG】その部品に対して変更が出来ないように(readonly)指定します(サーバーに送信される)。
        パラメータ:
        ronly - 読取専用 [readonly/true/false]
      • setDisabled

        public void setDisabled​(String dis)
        【TAG】その部品に対して、選択や変更が出来ないように(disabled)指定します(サーバーに送信されない)。
        パラメータ:
        dis - disabled指定 [disabled,true:disabled/false:設定なし]
      • setTabindex

        public void setTabindex​(String tabindex)
        【HTML】タブの移動順(tabindex)を指定します(0 ~ 32767)。
        パラメータ:
        tabindex - タブ移動順 (0~32767)
      • setAccesskey

        public void setAccesskey​(String accesskey)
        【HTML】アクセスキー(alt+キーで直接指定)を割り当てます。
        パラメータ:
        accesskey - アクセスキー
      • setOptionAttributes

        public void setOptionAttributes​(String optionAttributes)
        【TAG】JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します。
        パラメータ:
        optionAttributes - オプション属性
      • setOnClick

        public void setOnClick​(String onClick)
        【HTML】JavaScriptのイベント onClick を設定します(例:onClick="renew('query.jsp','QUERY');")。
        パラメータ:
        onClick - onClickイベント (例:onClick="renew('query.jsp','QUERY');")
      • setOnChange

        public void setOnChange​(String onChange)
        【HTML】JavaScriptのイベント onChange を設定します(例:onChange="renew('query.jsp','QUERY');")。
        パラメータ:
        onChange - onChangeイベント (例:onChange="renew('query.jsp','QUERY');")
      • setOnBlur

        public void setOnBlur​(String onBlur)
        【HTML】JavaScriptのイベント onBlur を設定します(例:onBlur="this.value=value.toUpperCase();")。
        パラメータ:
        onBlur - onBlurイベント (例:onBlur="this.value=value.toUpperCase();")
      • setOnFocus

        public void setOnFocus​(String onFocus)
        【HTML】JavaScriptのイベント onFocus を設定します。
        パラメータ:
        onFocus - onFocusイベント
      • setOnSelect

        public void setOnSelect​(String onSelect)
        【HTML】JavaScriptのイベント onSelect を設定します。
        パラメータ:
        onSelect - onSelectイベント
      • setOndblClick

        public void setOndblClick​(String ondblClick)
        【HTML】JavaScriptのイベント ondblClick を設定します。
        パラメータ:
        ondblClick - ondblClickイベント
      • setOnMouseDown

        public void setOnMouseDown​(String onMouseDown)
        【HTML】JavaScriptのイベント onMouseDown を設定します。
        パラメータ:
        onMouseDown - onMouseDownイベント
      • setOnMouseUp

        public void setOnMouseUp​(String onMouseUp)
        【HTML】JavaScriptのイベント onMouseUp を設定します。
        パラメータ:
        onMouseUp - onMouseUpイベント
      • setOnMouseMove

        public void setOnMouseMove​(String onMouseMove)
        【HTML】JavaScriptのイベント onMouseMove を設定します。
        パラメータ:
        onMouseMove - onMouseMoveイベント
      • setOnMouseOut

        public void setOnMouseOut​(String onMouseOut)
        【HTML】JavaScriptのイベント onMouseOut を設定します。
        パラメータ:
        onMouseOut - onMouseOutイベント
      • setOnMouseOver

        public void setOnMouseOver​(String onMouseOver)
        【HTML】JavaScriptのイベント onMouseOver を設定します。
        パラメータ:
        onMouseOver - onMouseOverイベント
      • setOnKeydown

        public void setOnKeydown​(String onKeydown)
        【HTML】JavaScriptのイベント onKeydown を設定します。
        パラメータ:
        onKeydown - onKeydownイベント
      • setOnKeypress

        public void setOnKeypress​(String onKeypress)
        【HTML】JavaScriptのイベント onKeypress を設定します。
        パラメータ:
        onKeypress - onKeypressイベント
      • setOnKeyup

        public void setOnKeyup​(String onKeyup)
        【HTML】JavaScriptのイベント onKeyup を設定します。
        パラメータ:
        onKeyup - onKeyupイベント
      • setAutocomplete

        public void setAutocomplete​(String autocomplete)
        【HTML5】入力候補を提示して入力内容を自動補完する[on/off](初期値はon)。
        パラメータ:
        autocomplete - 自動補完設定 [on/off](初期値はon)
        関連項目:
        autocomplete
      • setAutofocus

        public void setAutofocus​(String atfocus)
        【HTML5】指定した入力欄にカーソルが当たって自動的にフォーカスされます。
        パラメータ:
        atfocus - オートフォーカス
        関連項目:
        autofocus
      • setPattern

        public void setPattern​(String pattern)
        【HTML5】正規表現で入力値のパターンを指定します。
        パラメータ:
        pattern - 入力値正規表現
        関連項目:
        pattern
      • setPlaceholder

        public void setPlaceholder​(String placeholder)
        【HTML5】入力欄に初期表示する内容を指定します。
        パラメータ:
        placeholder - 初期表示文字
        関連項目:
        placeholder
      • setList

        public void setList​(String list)
        【HTML5】ユーザーに入力候補として提案するデータリストの要素のid属性の値を指定します。
        パラメータ:
        list - データリストID
        関連項目:
        list
      • setMin

        public void setMin​(String min)
        【HTML5】入力欄で入力できる最小値を指定します。
        パラメータ:
        min - 入力できる最小値
        関連項目:
        min
      • setMax

        public void setMax​(String max)
        【HTML5】入力欄で入力できる最大値を指定します。
        パラメータ:
        max - 入力できる最大値
        関連項目:
        max
      • setStep

        public void setStep​(String step)
        【HTML5】入力欄で刻むステップ値を指定します。
        パラメータ:
        step - 入力ステップ値
        関連項目:
        step
      • setRequired

        public void setRequired​(String req)
        【HTML5】入力必須を指定します。
        パラメータ:
        req - 入力必須かどうか [required/true/false]
        関連項目:
        required
      • setRoles

        public void setRoles​(String roles)
        【TAG】ロールをセットします。
        パラメータ:
        roles - ロール
      • setMust

        public void setMust​(String flag)
        【TAG】必須入力を表す色に変えるかどうか[true/false]を指定します(初期値:false)。
        パラメータ:
        flag - 必須入力指定 [true:必須入力/false:必須削除/それ以外:何もしない]
        関連項目:
        setUseMustHidden( String )
      • setMustAny

        public void setMustAny​(String flag)
        【TAG】選択必須入力(どれかひとつ必須)を表す色[true/mustAny/その他]を指定します(初期値:無指定)。
        パラメータ:
        flag - 選択必須入力指定 [true/mustAny/その他]
        関連項目:
        setUseMustHidden( String )
      • setUseMustHidden

        public void setUseMustHidden​(String flag)
        【TAG】必須の自動チェック用Hiddenを出力するかどうか[true/false]を指定します(初期値:true)。
        パラメータ:
        flag - 必須自動チェック [true:使用する/それ以外:使用しない]
        関連項目:
        setMust( String ), setMustAny( String )
      • setAimai

        public void setAimai​(String val)
        【TAG】曖昧検索可能フィールドとして、曖昧検索方法を指定します(初期値:null)。
        パラメータ:
        val - 曖昧検索指定 [0,V:完全一致/1,V*:前方一致/2,*V:後方一致/3,*V*:前後曖昧]
      • getMustType

        protected String getMustType()
        mustType 属性を取得します。 must , mustAny 属性を設定する場合に、mustType 属性を設定します。 その設定された値を取り出します。 何も設定されていない状態では、null を返します。
        戻り値:
        mustType属性
      • makeMustHidden

        protected String makeMustHidden​(String name)
        must , mustAny 属性を自動化するためのhiddenタグを生成します。 HybsSystem.MUST_KEY + mustType をキーに、指定のカラム名を値として hidden を作成します。この値を columnChack タグで拾って must 処理します。 なお、must , mustAny 属性を使用していない場合は、ゼロ文字列 を返します。
        パラメータ:
        name - must指定するカラム等の名称
        戻り値:
        自動化するためのhiddenタグ
      • makeAimaiPicker

        protected String makeAimaiPicker​(String name)
        aimai 属性を自動化するためのAimaiPicker関連タグを生成します。 AIMAI_xxxのid属性をキーに、指定のカラムのvalue値の%付加を、JavaScriptで行います。 そのための、preタグを出力します。
        パラメータ:
        name - aimai指定するカラム
        戻り値:
        自動化するためのpreタグ