クラス SubmitTag
java.lang.Object
jakarta.servlet.jsp.tagext.TagSupport
jakarta.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.HTMLTagSupport
org.opengion.hayabusa.taglib.SubmitTag
- すべての実装されたインタフェース:
BodyTag
,DynamicAttributes
,IterationTag
,JspTag
,Tag
,TryCatchFinally
,Serializable
サブミットボタンを表示するHTML拡張タグです(forward.jsp の commonForward タグと同時に使用します)。
このタグは、value に指定された値+".jsp" の画面へサブミットします。
その際、command に設定された値を 送信します。
従来は、value に、copy/modify/delete など、処理するJSPを個別に設定していましたので、
command と lbl が未設定時には、value の値を使用していました。(下位互換性のため残しています)
Ver5 になって、update.jsp ですべての処理を行う方向で開発するに当たり、
command と lbl を記述する必要がでてきました。
そこで、現在最新版では、action 属性を用意し、command を記述するだけで良くなりました。
[action属性] [初期設定されるパラメータ郡]
INSERT value="update" command="INSERT" lbl="INSERT" accesskey="I"
COPY value="update" command="COPY" lbl="COPY" accesskey="C"
MODIFY value="update" command="MODIFY" lbl="MODIFY" accesskey="M"
DELETE value="update" command="DELETE" lbl="DELETE" accesskey="Z"
VIEW value="update" command="VIEW" lbl="VIEW" accesskey="V" 6.3.9.1 (2015/11/27) 追加
ENTRY value="entry" command="ENTRY" lbl="ENTRY" accesskey="E"
RESET value="reset" command="RESET" lbl="RESET" accesskey="R"
7.4.2.1 (2021/05/21)
システム定数 USE_ACCESSKEY を false に設定すると、accesskey は使用されません。
columnWritable , noWritable の属性追加(5.2.2.0 (2010/11/01))
これは、各コマンドごとに、次ページの view のカラム属性の設定に利用する属性です。
Ver4 では、keys,vals の一般引数として設定していましたが、ここでは、専用属性として
用意しています。
- 関連項目:
- 変更履歴:
- 3.1.1.0 (2003/03/28) 新規作成
- 機能分類
- 画面制御
- 形式サンプル:
- ●形式:<og:submit value="…" lbl="…" /> ●body:なし ●Tag定義: <og:submit action 【TAG】アクション(INSERT,COPY,MODIFY,DELETE,VIEW,ENTRY,RESET)を指定します value 【TAG】forward したいJSPファイル名を記述します(例:insert,copy,modify,delete など) command 【TAG】処理コマンドを登録します(初期値:大文字の value 属性値[INSERT,COPY,MODIFY,DELETE など]) gamenId 【TAG】gamenId 属性を登録します lbl 【TAG】ラベルリソースのラベルIDを指定します target 【TAG】サブミット先の文書を表示させるフレーム、またはウィンドウの名前を指定します keys 【TAG】ボタン専用のリクエストキーをCSV形式で複数指定します vals 【TAG】ボタン専用のリクエスト値をCSV形式で複数指定します roles 【TAG】ロールをセットします dbkeys 【TAG】commonForward の dbkeys にカラム指定を行います optionAttributes 【廃止】JavaScript などの HTML基本タグ以外の属性を、そのままタグとして使用します columnWritable 【TAG】書き込み可能カラム名を、CSV形式で与えます noWritable 【TAG】書き込み不可カラム名を、CSV形式で与えます title 【HTML】要素に対する補足的情報(title)を設定します readonly 【TAG】その部品に対して変更が出来ないように(readonly)指定します(サーバーに送信される) disabled 【TAG】その部品に対して、選択や変更が出来ないように(disabled)指定します(サーバーに送信されない) accesskey 【HTML】アクセスキー(alt+キーで直接指定)を割り当てます clazz 【HTML】要素に対して class 属性を設定します language 【TAG】タグ内部で使用する言語コード[ja/en/zh/…]を指定します autofocus 【HTML5】指定した入力欄にカーソルが当たって自動的にフォーカスされます。 img 【TAG】画像ボタンを作る場合の、画像ファイルを指定します useAttStrict 【TAG】XHTMLTag に指定されている Attributes のみ使えるかどうか [true/false]を指定します(初期値:true) caseKey 【TAG】このタグ自体を利用するかどうかの条件キーを指定します(初期値:null) caseVal 【TAG】このタグ自体を利用するかどうかの条件値を指定します(初期値:null) caseNN 【TAG】指定の値が、null/ゼロ文字列 でない場合(Not Null=NN)は、このタグは使用されます(初期値:判定しない) caseNull 【TAG】指定の値が、null/ゼロ文字列 の場合は、このタグは使用されます(初期値:判定しない) caseIf 【TAG】指定の値が、true/TRUE文字列の場合は、このタグは使用されます(初期値:判定しない) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) /> ●使用例 Ver5 推奨ケース:指定の action 属性に設定された値に応じた、value , command , lbl , accesskey を初期化します。 (5.2.2.0 (2010/11/01)以降) <og:writeCheck> <og:submit action="COPY" noWritable="FGJ,UNIQ" /> <og:submit action="MODIFY" noWritable="CLM,FGJ,UNIQ" /> <og:submit action="DELETE" columnWritable="null" /> <og:submit gamenId="GF9110" value="index" dbkeys="SYSTEM_ID,LANG,CLM" command="NEW" lbl="GF9100" target="CONTENTS" /> <br /> </og:writeCheck> Ver4 一般的なケース:value は共通になったため、command と lbl の設定が必要(下位互換性のための設定) <og:writeCheck> <og:submit value="update" command="COPY" lbl="COPY" accesskey="C" /> <og:submit value="update" command="MODIFY" lbl="MODIFY" accesskey="M" /> <og:submit value="update" command="DELETE" lbl="DELETE" accesskey="Z" /> <og:submit gamenId="GF9110" value="index" dbkeys="SYSTEM_ID,LANG,CLM" command="NEW" lbl="GF9100" target="CONTENTS" /> <br /> </og:writeCheck> 従来のケース:value に設定された値JSPに対してサブミットされます。(下位互換性のための設定) <og:writeCheck> <og:submit value="copy" lbl="MSG0035" accesskey="C" /> <og:submit value="modify" lbl="MSG0036" accesskey="M" /> <og:submit value="delete" lbl="MSG0037" accesskey="Z" /> <og:submit gamenId="GF9110" value="index" dbkeys="SYSTEM_ID,LANG,CLM" command="NEW" lbl="GF9100" target="CONTENTS" /> <br /> </og:writeCheck>
- 導入されたバージョン:
- JDK5.0,
-
フィールドの概要
フィールド修飾子とタイプフィールド説明static final String
command 引数に渡す事の出来る コマンド 複写 "COPY"static final String
command 引数に渡す事の出来る コマンド 削除 "DELETE"static final String
command 引数に渡す事の出来る コマンド エントリー "ENTRY"static final String
command 引数に渡す事の出来る コマンド 新規 "INSERT"static final String
command 引数に渡す事の出来る コマンド 変更 "MODIFY"static final String
command 引数に渡す事の出来る コマンド リセット "RESET"static final String
6.3.9.1 (2015/11/27) command 引数に渡す事の出来る コマンド 表示 "VIEW"クラスから継承されたフィールド org.opengion.hayabusa.taglib.CommonTagSupport
BR, BUFFER_MIDDLE, CR
クラスから継承されたフィールド jakarta.servlet.jsp.tagext.BodyTagSupport
bodyContent
クラスから継承されたフィールド jakarta.servlet.jsp.tagext.TagSupport
id, pageContext
インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.BodyTag
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.IterationTag
EVAL_BODY_AGAIN
インタフェースから継承されたフィールド jakarta.servlet.jsp.tagext.Tag
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
-
コンストラクタの概要
コンストラクタ -
メソッドの概要
修飾子とタイプメソッド説明int
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。protected String
makeTag()
サブミットボタンを作成します。protected void
release2()
タグリブオブジェクトをリリースします。void
【TAG】アクション(INSERT,COPY,MODIFY,DELETE,ENTRY,RESET)を指定します。void
setColumnWritable
(String columnName) 【TAG】書き込み可能カラム名を、CSV形式で与えます。void
setCommand
(String cmd) 【TAG】処理コマンドを登録します(初期値:大文字の value 属性値[INSERT,COPY,MODIFY,DELETE など])。void
【TAG】commonForward の dbkeys にカラム指定を行います。void
setGamenId
(String id) 【TAG】画面ID を指定します。void
【TAG】画像ボタンを作る場合の、画像ファイルを指定します。void
【TAG】ボタン専用のリクエストキーをCSV形式で複数指定します。void
setNoWritable
(String columnName) 【TAG】書き込み不可カラム名を、CSV形式で与えます。void
【TAG】サブミット先の文書を表示させるフレーム、またはウィンドウの名前を指定します。void
【TAG】ボタン専用のリクエスト値をCSV形式で複数指定します。void
【TAG】forward したいJSPファイル名を記述します(例:insert,copy,modify,delete など)。toString()
このオブジェクトの文字列表現を返します。クラスから継承されたメソッド org.opengion.hayabusa.taglib.HTMLTagSupport
doEndTag, getMustType, makeAimaiPicker, makeMustHidden, setAccesskey, setAimai, setAutofocus, setClazz, setDisabled, setDynamicAttribute, setMust, setMustAny, setOptionAttributes, setPlaceholder, setReadonly, setRequired, setRoles, setTitle, setUseAttStrict, setUseMustHidden
クラスから継承されたメソッド org.opengion.hayabusa.taglib.CommonTagSupport
add, add, addEventColumn, addEventColumn, check, commitTableObject, debugPrint, debugPrint, doAfterBody, 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, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestMethod, getRequestParameter, getRequestParameterValues, getRequestValue, 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, useStrict, useTag, useXssCheck
クラスから継承されたメソッド jakarta.servlet.jsp.tagext.BodyTagSupport
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
クラスから継承されたメソッド jakarta.servlet.jsp.tagext.TagSupport
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
クラスから継承されたメソッド java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
インタフェースから継承されたメソッド jakarta.servlet.jsp.tagext.Tag
getParent, setPageContext, setParent
-
フィールド詳細
-
ACT_INSERT
command 引数に渡す事の出来る コマンド 新規 "INSERT"- 関連項目:
-
ACT_COPY
command 引数に渡す事の出来る コマンド 複写 "COPY"- 関連項目:
-
ACT_MODIFY
command 引数に渡す事の出来る コマンド 変更 "MODIFY"- 関連項目:
-
ACT_DELETE
command 引数に渡す事の出来る コマンド 削除 "DELETE"- 関連項目:
-
ACT_VIEW
6.3.9.1 (2015/11/27) command 引数に渡す事の出来る コマンド 表示 "VIEW"- 関連項目:
-
ACT_ENTRY
command 引数に渡す事の出来る コマンド エントリー "ENTRY"- 関連項目:
-
ACT_RESET
command 引数に渡す事の出来る コマンド リセット "RESET"- 関連項目:
-
-
コンストラクタの詳細
-
SubmitTag
public SubmitTag()デフォルトコンストラクター- 変更履歴:
- 6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
-
-
メソッドの詳細
-
doStartTag
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。- 定義:
doStartTag
インタフェース内Tag
- オーバーライド:
doStartTag
クラス内CommonTagSupport
- 戻り値:
- 後続処理の指示( SKIP_BODY )
- 変更履歴:
- 5.2.2.0 (2010/11/01) 新規追加, 7.4.2.1 (2021/05/21) accesskey の設定の有効(true)/無効(false)を設定, 8.0.2.0 (2021/11/30) useAccessKey → USE_ACCESSKEY 変更
-
release2
タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。- オーバーライド:
release2
クラス内HTMLTagSupport
- 変更履歴:
- 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。, 3.5.5.2 (2004/04/02) target 属性の追加, 3.5.5.5 (2004/04/23) keys,vals 属性の追加, 5.2.2.0 (2010/11/01) action,columnWritable,noWritable 属性の追加, 5.5.0.0 (2012/03/01) bgImg追加
-
makeTag
サブミットボタンを作成します。- 定義:
makeTag
クラス内HTMLTagSupport
- 戻り値:
- サブミットボタンタグ
- 変更履歴:
- 3.3.1.1 (2003/07/03) ForwardManager クラスの廃止。飛び先のキャッシュを廃止します。, 3.5.5.2 (2004/04/02) target 属性の追加, 3.5.5.9 (2004/06/07) target 属性を、set ではなく add で追加。, 3.5.5.9 (2004/06/07) target 属性を、set ではなく add で追加。, 4.0.0.0 (2005/11/30) title 属性が未設定時の処理追加, 5.5.0.0 (2012/03/01) bgImg対応, 5.6.0.3 (2012/01/24) accesskey に ゼロ文字列を指定した場合、カッコ()だけが残ってしまう。, 6.2.4.2 (2015/05/29) スタイル属性追加時は、一番初めにする。, 6.4.4.1 (2016/03/18) StringBuilderの代わりに、OgBuilderを使用する。, 7.4.2.1 (2021/05/21) accesskey の設定の有効(true)/無効(false)を設定, 8.0.2.0 (2021/11/30) useAccessKey → USE_ACCESSKEY 変更
- このメソッドは、nullを返しません
-
setAction
【TAG】アクション(INSERT,COPY,MODIFY,DELETE,ENTRY,RESET)を指定します。- パラメータ:
act
- アクション文字列- 関連項目:
- 変更履歴:
- 5.2.2.0 (2010/11/01) 新規追加, 6.3.4.0 (2015/08/01) Arrays.toString から String.join に置き換え。, 6.4.3.4 (2016/03/11) String配列 から、Setに置き換えます。
- 説明:
- Ver5 になって、update.jsp ですべての処理を行う方向で開発するに当たり、 command と lbl を記述する必要がでてきました。 そこで、現在最新版では、action 属性を用意し、command を記述するだけで良くなりました。 [action属性] [初期設定されるパラメータ郡] INSERT value="update" command="INSERT" lbl="INSERT" accesskey="I" COPY value="update" command="COPY" lbl="COPY" accesskey="C" MODIFY value="update" command="MODIFY" lbl="MODIFY" accesskey="M" DELETE value="update" command="DELETE" lbl="DELETE" accesskey="Z" VIEW value="update" command="VIEW" lbl="VIEW" accesskey="V" 6.3.9.1 (2015/11/27) 追加 ENTRY value="entry" command="ENTRY" lbl="ENTRY" accesskey="E" RESET value="reset" command="RESET" lbl="RESET" accesskey="R" 7.4.2.1 (2021/05/21) システム定数 USE_ACCESSKEY を false に設定すると、accesskey は使用されません。
-
setValue
【TAG】forward したいJSPファイル名を記述します(例:insert,copy,modify,delete など)。- パラメータ:
val
- JSPファイル名 (insert,copy,modify,delete など)- 説明:
- JSPファイル名は、標準で、insert,copy,modify,delete などと指定します。 実際には、各JSP画面(insert.jsp,copy.jsp,modify.jsp,delete.jsp )に リクエストが転送されます。 このJSPファイル名は、同一画面ID内のフォルダに属している必要があります。 ここのIDは、JSP画面そのものですので、大文字小文字は区別されます。
-
setCommand
【TAG】処理コマンドを登録します(初期値:大文字の value 属性値[INSERT,COPY,MODIFY,DELETE など])。- パラメータ:
cmd
- コマンド- 説明:
- command 属性を指定しない場合は、このvalue 属性値が、コマンドになります。 value 属性に、insert,copy,modify,delete などと指定されていた場合は、 それぞれ、INSERT,COPY,MODIFY,DELETE というコマンドになります。 コマンドは、大文字です。
-
setGamenId
【TAG】画面ID を指定します。- パラメータ:
id
- 画面ID- 説明:
- gamenId 属性は、別の画面にforward する場合に使用します。 実際は、forward ではなく、sendRedirect されます。
-
setTarget
【TAG】サブミット先の文書を表示させるフレーム、またはウィンドウの名前を指定します。- パラメータ:
name
- サブミット先の文書のフレーム名(ターゲット属性)- 変更履歴:
- 3.5.5.2 (2004/04/02) 新規追加
- 説明:
- サブミット先のフレーム名(ターゲット属性)を設定します。
-
setKeys
【TAG】ボタン専用のリクエストキーをCSV形式で複数指定します。- パラメータ:
key
- ボタンが押された時に転送するキー- 変更履歴:
- 3.5.5.5 (2004/04/23) 新規追加, 3.5.6.2 (2004/07/05) CommonTagSupport#getCSVParameter を使用
- 説明:
- このサブミットボタンが押された場合のみ、転送されるリクエスト情報の キーを設定できます。CSV形式で複数指定できます。 vals 属性には、キーに対応する値を、設定してください。 分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。 こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。
-
setVals
【TAG】ボタン専用のリクエスト値をCSV形式で複数指定します。- パラメータ:
val
- keys属性に対応する値- 変更履歴:
- 3.5.5.5 (2004/04/23) 新規追加, 3.5.6.2 (2004/07/05) CommonTagSupport#getCSVParameter を使用
- 説明:
- キーに対応した値を、CSV形式で複数指定出来ます。 指定順序は、キーと同じにしておいて下さい。 分解方法は、CSV変数を先に分解してから、getRequestParameter で値を取得します。 こうしないとデータ自身にカンマを持っている場合に分解をミスる為です。
-
setDbkeys
【TAG】commonForward の dbkeys にカラム指定を行います。- パラメータ:
keys
- dbkeysのカラム指定- 変更履歴:
- 4.0.0.0 (2007/05/23) 新規追加
- 説明:
- カラム指定は、CSV形式(CSV形式)で指定してください。 なお、引数は、自動的に受けるのではなく、commonForward タグに、 dbkeys="{@dbkeys}" の記述は必要です。
-
setColumnWritable
【TAG】書き込み可能カラム名を、CSV形式で与えます。- パラメータ:
columnName
- 書込可能カラム名(CSV形式) (例:"OYA,KO,HJO,SU,DYSET,DYUPD")- 関連項目:
- 変更履歴:
- 5.2.2.0 (2010/11/01) 新規追加
- 説明:
- これは、書き込み不可カラム名の指定(noWritable)と同時にセットする ことは出来ません。 なお、カラム名の代わりに、"null" を指定すると、なにも指定しないこと になります。つまり、noWritable にすべてのカラムを指定することと 同じになります。(デフォルトなので、あまり意味はありません。) "*" を指定すると、すべてのカラムを(columnWritable)指定したことになります。
-
setNoWritable
【TAG】書き込み不可カラム名を、CSV形式で与えます。- パラメータ:
columnName
- 書込不可カラム名(CSV形式) (例:"OYA,KO,HJO,SU,DYSET,DYUPD")- 関連項目:
- 変更履歴:
- 5.2.2.0 (2010/11/01) 新規追加
- 説明:
- これは、書き込み可能カラム名の指定(columnWritable)と同時にセットする ことは出来ません。 なお、カラム名の代わりに、"null" を指定すると、なにも指定しないこと になります。つまり、columnWritable にすべてのカラムを指定することと 同じになります。 "*" を指定すると、すべてのカラムを(noWritable)指定したことになります。
-
setImg
【TAG】画像ボタンを作る場合の、画像ファイルを指定します。- パラメータ:
image
- ボタンの背景画像- 変更履歴:
- 5.5.0.0 (2012/03/01) 新規追加
- 説明:
- 画像ボタン作成支援の属性です。 inputタグでtype=imageにした場合、IEではname,valueのセットが 次の画面に渡されない仕様になっているためエンジンのsubmitでは 利用できません。(どのボタンが押されたか分からない) そこで、typeはsubmitのままcssの背景画像としてここで指定した 画像を配置します。 内部的にはbackground: url(imgFile) center center no-repeat; をstyleタグに書く事と同じです。 高さ、幅は把握できないため、別途style属性でhight,widthを指定して下さい。 6.2.4.2 (2015/05/29) 画像の配置を、left top から、center center に変更します。 スタイル属性追加時は、一番初めにします。そうすることで、style属性で、これらの 設定を上書きできるようになります。
-
toString
このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。- オーバーライド:
toString
クラス内CommonTagSupport
- 戻り値:
- このクラスの文字列表現
- このメソッドは、nullを返しません
-