Package org.apache.wiki.forms

## Class FormElement

- java.lang.Object
- - org.apache.wiki.forms.FormElement

All Implemented Interfaces:
  `Plugin`

Direct Known Subclasses:
  `FormClose`, `FormInput`, `FormOpen`, `FormOutput`, `FormSelect`, `FormTextarea`

    public abstract class FormElement
    extends java.lang.Object
    implements Plugin

### Field Summary

Fields
`static java.lang.String` `FORM_VALUES_CARRIER` The submit servlet may decide to store a FormInfo with user-entered form values in the Session.
`static java.lang.String` `HANDLERPARAM_PREFIX` In order to make the form-to-handler parameter transfer easier, we prefix all user-specified FORM element names with HANDLERPARAM_PREFIX the HTML output.
`static java.lang.String` `HIDE_SUCCESS` Show values.
`static java.lang.String` `PARAM_ELEMENT` Plugin parameter, mandatory, indicates what form element to insert.
`static java.lang.String` `PARAM_FORM` Plugin parameter, mandatory in open/output: name of the form.
`static java.lang.String` `PARAM_FORMNAMEHIDDEN` HTTP parameter, inserted as hidden variable into the generated form.
`static java.lang.String` `PARAM_HANDLER` Plugin parameter, mandatory in output element, indicates Plugin to use to handle form submitted data.
`static java.lang.String` `PARAM_HIDEFORM` Experimental: hide the form if it was submitted successfully.
`static java.lang.String` `PARAM_INPUTNAME` Plugin parameter, mandatory in input elements: name of an element.
`static java.lang.String` `PARAM_POPULATE` If set to 'handler' in output element, the handler plugin is called even on first invocation (no submit).
`static java.lang.String` `PARAM_SUBMITHANDLER` Plugin parameter, optional, indicates servlet to post to.
`static java.lang.String` `PARAM_VALUE` Plugin parameter, optional: default value for an input.

### Fields inherited from interface org.apache.wiki.api.plugin.Plugin

`CORE_PLUGINS_RESOURCEBUNDLE`

### Constructor Summary

Constructors
`FormElement()`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected FormInfo` `getFormInfo​(Context ctx)` Attempts to retrieve information on the currently handled form from the Context.
`protected void` `storeFormInfo​(Context ctx, FormInfo info)` Utility method stores a FormInfo object into the Context.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.wiki.api.plugin.Plugin

`execute`

### Field Detail

#### HANDLERPARAM_PREFIX

    public static final java.lang.String HANDLERPARAM_PREFIX

In order to make the form-to-handler parameter transfer easier, we prefix all user-specified FORM element names with HANDLERPARAM_PREFIX the HTML output. This lets us differentiate user-defined FormHandler parameters from Form parameters. The submit handler must then use MapUtil.requestToMap() to strip them before executing the handler itself.

See Also:
  Constant Field Values

#### FORM_VALUES_CARRIER

    public static final java.lang.String FORM_VALUES_CARRIER

The submit servlet may decide to store a FormInfo with user-entered form values in the Session. It should use this name, and this class checks for it to pre-fill fields from a previous form submit.

See Also:
  Constant Field Values

#### HIDE_SUCCESS

    public static final java.lang.String HIDE_SUCCESS

Show values. Value is `"onsuccess"`.

See Also:
  Constant Field Values

#### PARAM_SUBMITHANDLER

    public static final java.lang.String PARAM_SUBMITHANDLER

Plugin parameter, optional, indicates servlet to post to.

See Also:
  Constant Field Values

#### PARAM_ELEMENT

    public static final java.lang.String PARAM_ELEMENT

Plugin parameter, mandatory, indicates what form element to insert.

See Also:
  Constant Field Values

#### PARAM_HANDLER

    public static final java.lang.String PARAM_HANDLER

Plugin parameter, mandatory in output element, indicates Plugin to use to handle form submitted data.

See Also:
  Constant Field Values

#### PARAM_FORM

    public static final java.lang.String PARAM_FORM

Plugin parameter, mandatory in open/output: name of the form.

See Also:
  Constant Field Values

#### PARAM_INPUTNAME

    public static final java.lang.String PARAM_INPUTNAME

Plugin parameter, mandatory in input elements: name of an element.

See Also:
  Constant Field Values

#### PARAM_VALUE

    public static final java.lang.String PARAM_VALUE

Plugin parameter, optional: default value for an input.

See Also:
  Constant Field Values

#### PARAM_HIDEFORM

    public static final java.lang.String PARAM_HIDEFORM

Experimental: hide the form if it was submitted successfully.

See Also:
  Constant Field Values

#### PARAM_POPULATE

    public static final java.lang.String PARAM_POPULATE

If set to 'handler' in output element, the handler plugin is called even on first invocation (no submit). The plugin can then place values into its parameter map, and these are seen by subsequent Form elements. (Store a value in the plugin with the same key as an input element, and the value will be visible in the initial form.)

See Also:
  Constant Field Values

#### PARAM_FORMNAMEHIDDEN

    public static final java.lang.String PARAM_FORMNAMEHIDDEN

HTTP parameter, inserted as hidden variable into the generated form.

See Also:
  Constant Field Values

### Constructor Detail

#### FormElement

    public FormElement()

### Method Detail

#### storeFormInfo

    protected void storeFormInfo​(Context ctx,
                                 FormInfo info)

Utility method stores a FormInfo object into the Context.

Parameters:
  `ctx` - The Context to store it in
  `info` - The FormInfo to store.

#### getFormInfo

    protected FormInfo getFormInfo​(Context ctx)

Attempts to retrieve information on the currently handled form from the Context.

Parameters:
  `ctx` - The Context
Returns:
  The FormInfo from the context