org.seasar.s2click.control
クラス S2ClickForm

java.lang.Object
  上位を拡張 org.apache.click.control.AbstractControl
      上位を拡張 org.apache.click.control.AbstractContainer
          上位を拡張 org.apache.click.control.Form
              上位を拡張 org.seasar.s2click.control.S2ClickForm
すべての実装されたインタフェース:
java.io.Serializable, org.apache.click.Control, org.apache.click.control.Container, org.apache.click.Stateful
直系の既知のサブクラス:
EntityForm

public abstract class S2ClickForm
extends org.apache.click.control.Form

publicフィールドを自動的にコントロールとして登録してくれるForm拡張クラスです。 SubmitコントロールによってJavaScriptバリデーションを行うかどうかを制御する機能も備えています。

publicフィールドの自動登録

このクラスのサブクラスでsetFieldAutoRegisteration(boolean)trueが設定された場合、 S2ClickFormはサブクラスのpublicフィールドとして宣言されたコントロール群を自動的にadd(Field)します。 初期化コードでadd(Field)を呼び出す必要はありません。

 public SampleForm extends S2ClickForm {
   private TextField userId = new TextField("userId");
   private PasswordField password = new PasswordField("password");
   private Submit submit = new Submit("submit");

   public SampleForm(){
     setFieldAutoRegisteration(true);
   }

   ...
 } 

送信前に確認ダイアログを表示する

addConfirmMessage(String, String)を使用することで フォームの送信前にJavaScriptによる確認ダイアログを表示することができます。

 public SampleForm extends S2ClickForm {
   ...
   private Submit register = new Submit("register");
   private Submit cancel = new Submit("cancel");

   public SampleForm(){
     addConfirmMessage("register", "登録します。よろしいですか?");
   }

   ...
 

JavaScriptバリデーションを行わないSubmitコントロール

addNoJavaScriptValidateAction(String)を使用することで、 JavaScriptバリデーションを行わないSubmitコントロールを指定することができます。

 public SampleForm extends S2ClickForm {
   ...
   private Submit register = new Submit("register");
   private Submit cancel = new Submit("cancel");

   public SampleForm(){
     addNoJavaScriptValidateAction("register");
   }

   ...
 } 

copyTo()、copyFrom()のpublicフィールド対応

ClickのFormクラスはJavaBeanとフォームの値を相互変換するために copyTo()メソッド、copyFrom()メソッドを備えています。 S2ClickFormではこれらのメソッドをpublicフィールドに対応させています。 なお、S2ClickUtilsを使用することでもpublicフィールドを使用したJavaBeanと フォームの値を相互変換することができます。

作成者:
Naoki Takezoe
関連項目:
直列化された形式

フィールドの概要
protected  java.util.Map<java.lang.String,java.lang.String> confirmMessages
           
protected  boolean fieldAutoRegisteration
           
protected  java.util.List<java.lang.String> noJavaScriptValidateActions
           
 
クラス org.apache.click.control.Form から継承されたフィールド
actionURL, ALIGN_CENTER, ALIGN_LEFT, ALIGN_RIGHT, buttonAlign, buttonList, buttonStyle, columns, defaultFieldSize, disabled, enctype, error, errorsAlign, errorsPosition, errorsStyle, fieldList, fieldStyle, fieldWidths, FOCUS_JAVASCRIPT, FORM_NAME, formSubmission, javaScriptValidation, labelAlign, labelsPosition, labelStyle, method, MULTIPART_FORM_DATA, POSITION_BOTTOM, POSITION_LEFT, POSITION_MIDDLE, POSITION_TOP, readonly, SUBMIT_CHECK, validate
 
クラス org.apache.click.control.AbstractContainer から継承されたフィールド
controlMap, controls
 
クラス org.apache.click.control.AbstractControl から継承されたフィールド
actionListener, attributes, behaviors, headElements, listener, listenerMethod, messages, name, parent, styles
 
インタフェース org.apache.click.Control から継承されたフィールド
CONTROL_MESSAGES
 
コンストラクタの概要
S2ClickForm()
          Create a Form with no name defined.
S2ClickForm(java.lang.String name)
          Construct the Form with the given name.
 
メソッドの概要
 org.apache.click.control.Field add(org.apache.click.control.Field field)
           
 void addConfirmMessage(java.lang.String action, java.lang.String message)
           
 void addNoJavaScriptValidateAction(java.lang.String action)
           
 void copyFrom(java.lang.Object object)
           
 void copyFrom(java.lang.Object object, boolean debug)
           
 void copyTo(java.lang.Object object)
           
 void copyTo(java.lang.Object object, boolean debug)
           
 java.lang.String getActionURL()
           
 boolean isFieldAutoRegistration()
           
 void onInit()
           
protected  void renderHeader(org.apache.click.util.HtmlStringBuffer buffer, java.util.List formFields)
           
protected  void renderHiddenFields(org.apache.click.util.HtmlStringBuffer buffer, java.util.List formFields)
           
protected  void renderTagEnd(java.util.List<org.apache.click.control.Field> formFields, org.apache.click.util.HtmlStringBuffer buffer)
           
protected  void renderValidationJavaScript(org.apache.click.util.HtmlStringBuffer buffer, java.util.List formFields)
           
protected  boolean requiresJavaScript()
          JavaScriptを使用する必要があるかどうかを判定します。
 void setFieldAutoRegisteration(boolean fieldAutoRegisteration)
           
 java.lang.String startTag()
           
 void toHidden()
          このフォームのフィールドをすべてhiddenフィールドに変換します。
 
クラス org.apache.click.control.Form から継承されたメソッド
add, add, add, clearErrors, clearValues, endTag, getButtonAlign, getButtonList, getButtonStyle, getColumns, getControlSizeEst, getDefaultFieldSize, getEnctype, getError, getErrorFields, getErrorsAlign, getErrorsPosition, getErrorsStyle, getField, getFieldList, getFields, getFieldStyle, getFieldValue, getFieldWidths, getFormSizeEst, getHeadElements, getJavaScriptValidation, getLabelAlign, getLabelsPosition, getLabelStyle, getMethod, getState, getTag, getValidate, hasPostError, insert, isDisabled, isFormSubmission, isJavaScriptValidation, isReadonly, isValid, onDestroy, onProcess, onSubmitCheck, onSubmitCheck, onSubmitCheck, performSubmitCheck, remove, removeField, removeFields, removeState, render, renderButtons, renderControls, renderErrors, renderFields, renderFocusJavaScript, replace, restoreState, saveState, setActionURL, setButtonAlign, setButtonStyle, setColumns, setDefaultFieldSize, setDisabled, setEnctype, setError, setErrorsAlign, setErrorsPosition, setErrorsStyle, setFieldStyle, setJavaScriptValidation, setLabelAlign, setLabelsPosition, setLabelStyle, setListener, setMethod, setName, setReadonly, setState, setValidate, validate, validateFileUpload
 
クラス org.apache.click.control.AbstractContainer から継承されたメソッド
contains, getControl, getControlMap, getControls, hasControls, onRender, renderChildren, renderContent, renderTagEnd, toString
 
クラス org.apache.click.control.AbstractControl から継承されたメソッド
addBehavior, addStyleClass, appendAttributes, dispatchActionEvent, getActionListener, getAttribute, getAttributes, getBehaviors, getContext, getHtmlImports, getId, getMessage, getMessage, getMessages, getName, getPage, getParent, getStyle, getStyles, hasAttribute, hasAttributes, hasBehaviors, hasStyles, isAjaxTarget, onDeploy, removeBehavior, removeStyleClass, renderTagBegin, setActionListener, setAttribute, setId, setParent, setStyle
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
インタフェース org.apache.click.Control から継承されたメソッド
getBehaviors, getContext, getId, getMessages, getName, getParent, hasBehaviors, isAjaxTarget, onDeploy, setParent
 

フィールドの詳細

confirmMessages

protected java.util.Map<java.lang.String,java.lang.String> confirmMessages

noJavaScriptValidateActions

protected java.util.List<java.lang.String> noJavaScriptValidateActions

fieldAutoRegisteration

protected boolean fieldAutoRegisteration
コンストラクタの詳細

S2ClickForm

public S2ClickForm()
Create a Form with no name defined.


S2ClickForm

public S2ClickForm(java.lang.String name)
Construct the Form with the given name.

パラメータ:
name - the form name
メソッドの詳細

setFieldAutoRegisteration

public void setFieldAutoRegisteration(boolean fieldAutoRegisteration)

isFieldAutoRegistration

public boolean isFieldAutoRegistration()

addConfirmMessage

public void addConfirmMessage(java.lang.String action,
                              java.lang.String message)

addNoJavaScriptValidateAction

public void addNoJavaScriptValidateAction(java.lang.String action)

requiresJavaScript

protected boolean requiresJavaScript()
JavaScriptを使用する必要があるかどうかを判定します。

戻り値:
JavaScriptを使用する必要がある場合true、必要ない場合false

add

public org.apache.click.control.Field add(org.apache.click.control.Field field)
オーバーライド:
クラス org.apache.click.control.Form 内の add

startTag

public java.lang.String startTag()
オーバーライド:
クラス org.apache.click.control.Form 内の startTag

renderTagEnd

protected void renderTagEnd(java.util.List<org.apache.click.control.Field> formFields,
                            org.apache.click.util.HtmlStringBuffer buffer)
オーバーライド:
クラス org.apache.click.control.Form 内の renderTagEnd

renderValidationJavaScript

protected void renderValidationJavaScript(org.apache.click.util.HtmlStringBuffer buffer,
                                          java.util.List formFields)
オーバーライド:
クラス org.apache.click.control.Form 内の renderValidationJavaScript

onInit

public void onInit()
定義:
インタフェース org.apache.click.Control 内の onInit
オーバーライド:
クラス org.apache.click.control.AbstractContainer 内の onInit

copyFrom

public void copyFrom(java.lang.Object object,
                     boolean debug)
オーバーライド:
クラス org.apache.click.control.Form 内の copyFrom

copyFrom

public void copyFrom(java.lang.Object object)
オーバーライド:
クラス org.apache.click.control.Form 内の copyFrom

copyTo

public void copyTo(java.lang.Object object,
                   boolean debug)
オーバーライド:
クラス org.apache.click.control.Form 内の copyTo

copyTo

public void copyTo(java.lang.Object object)
オーバーライド:
クラス org.apache.click.control.Form 内の copyTo

toHidden

public void toHidden()
このフォームのフィールドをすべてhiddenフィールドに変換します。


renderHeader

protected void renderHeader(org.apache.click.util.HtmlStringBuffer buffer,
                            java.util.List formFields)
オーバーライド:
クラス org.apache.click.control.Form 内の renderHeader

renderHiddenFields

protected void renderHiddenFields(org.apache.click.util.HtmlStringBuffer buffer,
                                  java.util.List formFields)

getActionURL

public java.lang.String getActionURL()
オーバーライド:
クラス org.apache.click.control.Form 内の getActionURL