Class FormSupportImpl

  • All Implemented Interfaces:
    ClientElement, Locatable, InternalFormSupport, FormSupport

    public class FormSupportImpl
    extends java.lang.Object
    implements InternalFormSupport, Locatable
    Provides support to components enclosed by a form when the form is rendering (allowing the components to registry form submit callback commands), and also during form submission time. TODO: Most methods should only be invokable depending on whether the form is rendering or processing a submission.
    • Method Detail

      • allocateControlName

        public java.lang.String allocateControlName​(java.lang.String id)
        Description copied from interface: FormSupport
        Allocates a unique (within the form) control name for some enclosed component, based on the component's id.
        Specified by:
        allocateControlName in interface FormSupport
        id - the component's id
        a unique string, usually the component's id, but sometime extended with a unique number or string
      • store

        public <T> void store​(T component,
                              ComponentAction<T> action)
        Description copied from interface: FormSupport
        Stores an action for execution during a later request. If the action contains any mutable state, it should be in its final state before invoking this method and its internal state should not be changed subsequently.
        Specified by:
        store in interface FormSupport
      • defer

        public void defer​(java.lang.Runnable command)
        Description copied from interface: FormSupport
        Defers a command until the end of the form submission. The command will be executed before the Form's validate notification, but after all other submit actions for the form have been processed. This is used, primarily, to coordinate validations or other operations that involve multiple components, when the order of the components can not be determined. During a form render, runnables are executed after the body of the form has rendered.
        Specified by:
        defer in interface FormSupport
        command - to be executed
      • getClientId

        public java.lang.String getClientId()
        Specified by:
        getClientId in interface ClientElement
        a unique id for the element. This value will be unique for any given rendering of a page. This value is intended for use as the id attribute of the client-side element, and will be used with any DHTML/Ajax related JavaScript.
      • setEncodingType

        public void setEncodingType​(java.lang.String encodingType)
        Description copied from interface: FormSupport
        Sets the encoding type for the Form. This should only be set once, and if
        Specified by:
        setEncodingType in interface FormSupport
        encodingType - MIME type indicating type of encoding for the form
      • addValidation

        public void addValidation​(Field field,
                                  java.lang.String validationName,
                                  java.lang.String message,
                                  java.lang.Object constraint)
        Description copied from interface: FormSupport
        Collects field validation information. A Form may turn off client-side validation, in which case these calls will be ignored.
        Specified by:
        addValidation in interface FormSupport
        field - for which validation is being generated
        validationName - name of validation method (see Tapestry.Validation in tapestry.js)
        message - the error message to display if the field is invalid
        constraint - additional constraint value, or null for validations that don't require a constraint