org.apache.struts2.components
Class Form

java.lang.Object
  extended by org.apache.struts2.components.Component
      extended by org.apache.struts2.components.UIBean
          extended by org.apache.struts2.components.ClosingUIBean
              extended by org.apache.struts2.components.Form

public class Form
extends ClosingUIBean

Renders HTML an input form.

The remote form allows the form to be submitted without the page being refreshed. The results from the form can be inserted into any HTML element on the page.

NOTE:

The order / logic in determining the posting url of the generated HTML form is as follows:-

  1. If the action attribute is not specified, then the current request will be used to determine the posting url
  2. If the action is given, Struts will try to obtain an ActionConfig. This will be successfull if the action attribute is a valid action alias defined struts.xml.
  3. If the action is given and is not an action alias defined in struts.xml, Struts will used the action attribute as if it is the posting url, separting the namespace from it and using UrlHelper to generate the final url.

Examples

 
 

<s:form ... />


Field Summary
protected  String acceptcharset
           
protected  String action
           
protected  Configuration configuration
           
protected  boolean enableDynamicMethodInvocation
           
protected  String enctype
           
private static Log LOG
          Provide a logging instance.
protected  String method
           
protected  String namespace
           
protected  ObjectFactory objectFactory
           
protected  String onsubmit
           
static String OPEN_TEMPLATE
           
protected  String portletMode
           
private  int sequence
           
protected  String target
           
static String TEMPLATE
           
protected  String validate
           
protected  String windowState
           
 
Fields inherited from class org.apache.struts2.components.ClosingUIBean
openTemplate
 
Fields inherited from class org.apache.struts2.components.UIBean
accesskey, cssClass, cssStyle, defaultTemplateDir, defaultUITheme, disabled, key, label, labelPosition, name, onblur, onchange, onclick, ondblclick, onfocus, onkeydown, onkeypress, onkeyup, onmousedown, onmousemove, onmouseout, onmouseover, onmouseup, onselect, request, required, requiredposition, response, tabindex, template, templateDir, templateEngineManager, templateSuffix, theme, title, tooltip, tooltipConfig, value
 
Fields inherited from class org.apache.struts2.components.Component
actionMapper, COMPONENT_STACK, id, parameters, stack
 
Constructor Summary
Form(ValueStack stack, HttpServletRequest request, HttpServletResponse response)
           
 
Method Summary
private  void evaluateClientSideJsEnablement(String actionName, String namespace, String actionMethod)
           
protected  void evaluateExtraParams()
           
private  void evaluateExtraParamsPortletRequest(String namespace, String action)
          Constructs the action url adapted to a portal environment.
private  void evaluateExtraParamsServletRequest(String action, String namespace, boolean isAjax)
           
protected  boolean evaluateNameValue()
           
 String getDefaultOpenTemplate()
           
protected  String getDefaultTemplate()
          A contract that requires each concrete UI Tag to specify which template should be used as a default.
protected  int getSequence()
          Get a incrementing sequence unique to this Form component.
 List getValidators(String name)
           
protected  void populateComponentHtmlId(Form form)
          The Form component determines its HTML element id as follows:- if an 'id' attribute is specified.
 void setAcceptcharset(String acceptcharset)
           
 void setAction(String action)
           
 void setConfiguration(Configuration configuration)
           
 void setEnableDynamicMethodInvocation(String enable)
           
 void setEnctype(String enctype)
           
 void setMethod(String method)
           
 void setNamespace(String namespace)
           
 void setObjectFactory(ObjectFactory objectFactory)
           
 void setOnsubmit(String onsubmit)
           
 void setPortletMode(String portletMode)
           
 void setTarget(String target)
           
 void setValidate(String validate)
           
 void setWindowState(String windowState)
           
 
Methods inherited from class org.apache.struts2.components.ClosingUIBean
setOpenTemplate, start
 
Methods inherited from class org.apache.struts2.components.UIBean
addFormParameter, buildTemplateName, enableAncestorFormCustomOnsubmit, end, ensureAttributeSafelyNotEscaped, escape, evaluateParams, getTemplate, getTemplateDir, getTheme, getTooltipConfig, getValueClassType, mergeTemplate, setAccesskey, setCssClass, setCssStyle, setDefaultTemplateDir, setDefaultUITheme, setDisabled, setKey, setLabel, setLabelposition, setName, setOnblur, setOnchange, setOnclick, setOndblclick, setOnfocus, setOnkeydown, setOnkeypress, setOnkeyup, setOnmousedown, setOnmousemove, setOnmouseout, setOnmouseover, setOnmouseup, setOnselect, setRequired, setRequiredposition, setTabindex, setTemplate, setTemplateDir, setTemplateEngineManager, setTheme, setTitle, setTooltip, setTooltipConfig, setValue
 
Methods inherited from class org.apache.struts2.components.Component
addAllParameters, addParameter, altSyntax, copyParams, determineActionURL, determineActionURL, determineNamespace, end, fieldError, findAncestor, findString, findString, findValue, findValue, findValue, getComponentStack, getId, getParameters, getStack, popComponentStack, setActionMapper, setId, toString, usesBody
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

private static final Log LOG
Provide a logging instance.


OPEN_TEMPLATE

public static final String OPEN_TEMPLATE
See Also:
Constant Field Values

TEMPLATE

public static final String TEMPLATE
See Also:
Constant Field Values

sequence

private int sequence

onsubmit

protected String onsubmit

action

protected String action

target

protected String target

enctype

protected String enctype

method

protected String method

namespace

protected String namespace

validate

protected String validate

portletMode

protected String portletMode

windowState

protected String windowState

acceptcharset

protected String acceptcharset

enableDynamicMethodInvocation

protected boolean enableDynamicMethodInvocation

configuration

protected Configuration configuration

objectFactory

protected ObjectFactory objectFactory
Constructor Detail

Form

public Form(ValueStack stack,
            HttpServletRequest request,
            HttpServletResponse response)
Method Detail

evaluateNameValue

protected boolean evaluateNameValue()
Overrides:
evaluateNameValue in class UIBean

getDefaultOpenTemplate

public String getDefaultOpenTemplate()
Specified by:
getDefaultOpenTemplate in class ClosingUIBean

getDefaultTemplate

protected String getDefaultTemplate()
Description copied from class: UIBean
A contract that requires each concrete UI Tag to specify which template should be used as a default. For example, the CheckboxTab might return "checkbox.vm" while the RadioTag might return "radio.vm". This value not begin with a '/' unless you intend to make the path absolute rather than relative to the current theme.

Specified by:
getDefaultTemplate in class UIBean
Returns:
The name of the template to be used as the default.

setEnableDynamicMethodInvocation

public void setEnableDynamicMethodInvocation(String enable)

setConfiguration

public void setConfiguration(Configuration configuration)

setObjectFactory

public void setObjectFactory(ObjectFactory objectFactory)

evaluateExtraParams

protected void evaluateExtraParams()
Overrides:
evaluateExtraParams in class UIBean

populateComponentHtmlId

protected void populateComponentHtmlId(Form form)
The Form component determines its HTML element id as follows:-
  1. if an 'id' attribute is specified.
  2. if an 'action' attribute is specified, it will be used as the id.

Overrides:
populateComponentHtmlId in class UIBean

evaluateExtraParamsServletRequest

private void evaluateExtraParamsServletRequest(String action,
                                               String namespace,
                                               boolean isAjax)
Parameters:
isAjax -
namespace -
action -

evaluateClientSideJsEnablement

private void evaluateClientSideJsEnablement(String actionName,
                                            String namespace,
                                            String actionMethod)

evaluateExtraParamsPortletRequest

private void evaluateExtraParamsPortletRequest(String namespace,
                                               String action)
Constructs the action url adapted to a portal environment.

Parameters:
action - The action to create the URL for.

getValidators

public List getValidators(String name)

getSequence

protected int getSequence()
Get a incrementing sequence unique to this Form component. It is used by Form component's child that might need a sequence to make them unique.

Returns:
int

setOnsubmit

public void setOnsubmit(String onsubmit)

setAction

public void setAction(String action)

setTarget

public void setTarget(String target)

setEnctype

public void setEnctype(String enctype)

setMethod

public void setMethod(String method)

setNamespace

public void setNamespace(String namespace)

setValidate

public void setValidate(String validate)

setPortletMode

public void setPortletMode(String portletMode)

setWindowState

public void setWindowState(String windowState)

setAcceptcharset

public void setAcceptcharset(String acceptcharset)


Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.