java.lang.Object
jp.ecuacion.splib.web.form.SplibGeneralForm
- Direct Known Subclasses:
AdminLoginForm,ConfigForm,LoginForm,SplibEditForm,SplibListForm,SplibSearchForm
-
Nested Class Summary
Nested Classes -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleancontainsConfirmedWarning(String messageId) 引数は、"acc"のような形で渡される想定。Deprecated.protected ObjectgetRootRecord(Field rootRecordField) getLabelItemName() ではfieldも別途使用するため、fieldの二回取得は無駄なのでfieldを引数にするメソッドも作っておく。getRootRecord(String recordName) formからrecordを取得する処理。Deprecated.form配下に存在するrecordを全て取得。booleanhasNotEmptyError(String loginState, SplibSecurityUtil.RolesAndAuthoritiesBean bean) EditFormのメソッドを呼び出すことで、その中の全てのNotEmpty Checkを実施。prepare method内でのvalidation要否判断に使用。voidsetConfirmedWarnings(String confirmedWarnings) voidsetControllerContext(SplibGeneralController.ControllerContext controllerContext) voidsetDataKind(String dataKind) validate(org.springframework.validation.BindingResult bindingResult) prepare method内でのvalidation要否判断に使用。validateNotEmpty(String loginState, SplibSecurityUtil.RolesAndAuthoritiesBean bean) NotEmptyエラーの有無・件数だけを知りたい場合で、localeを取得するのが面倒な際はこちらを使用。validateNotEmpty(Locale locale, String loginState, SplibSecurityUtil.RolesAndAuthoritiesBean bean) NotEmptyエラーのメッセージを取得したい場合はこちらを使用。
-
Field Details
-
dataKind
一つの機能の実装を複数メニューで使い回す場合に使用するメニュー名。使い回しをしない通常機能は、放置しnull(実際にはhtml側でhiddenを持っているのでそれがsubmitされ空文字になる)のままでよい。 searchFormはsessionにformを保持し検索条件を保持するが、複数メニューで使い回す場合は そのメニュー別に検索条件を保持するのが望ましいため、このdataKindもsession保存時のキーとする。
現行設計ではdataKindをrequestで持ち回る形を採用している。 sessionに持たせた方が実装が楽と思われる部分もありながら、navBarから他のメニューを選択された時には sessionに保管されたdataKindではなくrequestの方のdataKindを採用する、あたりをうまく回す必要があり、 その意味ではsessionに持たせるよりrequestで持ち回る方がわかりやすい(dataKindが空ならシステムエラーになるので)ことから まずはrequestで持ち回り、の実装方式としておく。 ※PRGを使用しGETでのアクセスを可としている中で、個々のURLをコピって使用しても使用可能とする意味でも、 全てのURLにdataKindパラメータがついているのが望ましい、という観点もあるので付記。
-
confirmedWarnings
warningを返した際に、それに対してOKした場合は、OKしたという履歴を残さないとまた再度同じチェックに引っかかりワーニングを出してしまう。 それを防ぐため、一度OKしたwarningは、messageIdを本fieldに保管することで避ける。 複数のwarnに対する情報を保持できるよう、本項目はcsv形式とする。(対応するhiddenにjavascript側で","とメッセージIDを追加)
-
-
Constructor Details
-
SplibGeneralForm
public SplibGeneralForm()
-
-
Method Details
-
getPrepareSettings
-
validate
prepare method内でのvalidation要否判断に使用。 -
noValidate
prepare method内でのvalidation要否判断に使用。 -
getDataKind
-
setDataKind
-
getControllerContext
-
setControllerContext
-
get
public SplibRecord get(String itemName) throws IllegalArgumentException, IllegalAccessException, NoSuchFieldException, SecurityException 引数は、"acc"のような形で渡される想定。 -
getRootRecordFields
form配下に存在するrecordを全て取得。 戻り値のmapのkeyはfield名。 -
getRootRecordField
Deprecated.form配下にrecordが1つしかない前提で使用されるメソッド。deprecatedにしたいのだが、状況確認中。 -
getRootRecord
Deprecated.formからrecordを取得する処理。 -
getRootRecord
formからrecordを取得する処理。 -
getRootRecord
getLabelItemName() ではfieldも別途使用するため、fieldの二回取得は無駄なのでfieldを引数にするメソッドも作っておく。 -
getConfirmedWarnings
-
containsConfirmedWarning
-
getConfirmedWarningMessageSet
-
setConfirmedWarnings
-
hasNotEmptyError
EditFormのメソッドを呼び出すことで、その中の全てのNotEmpty Checkを実施。 -
validateNotEmpty
public Set<SplibExceptionHandler.ValidationErrorInfoBean> validateNotEmpty(String loginState, SplibSecurityUtil.RolesAndAuthoritiesBean bean) NotEmptyエラーの有無・件数だけを知りたい場合で、localeを取得するのが面倒な際はこちらを使用。 -
validateNotEmpty
public Set<SplibExceptionHandler.ValidationErrorInfoBean> validateNotEmpty(Locale locale, String loginState, SplibSecurityUtil.RolesAndAuthoritiesBean bean) NotEmptyエラーのメッセージを取得したい場合はこちらを使用。
-