Home >Java >javaTutorial >How Does Struts2 Handle Conversion and Validation Errors in Form Processing?
Struts2 automatically manages conversion and validation errors encountered during form processing. When an error occurs, it returns an INPUT result instead of raising an exception. This allows users to correct input errors without interrupting the application flow.
Conversion Errors
Parameters Interceptor handles the conversion of form parameters to the appropriate data types (e.g., String to integer). If the conversion fails, it adds a Field Error to the ActionContext's conversionErrors map.
Validation Errors
Validation Interceptor executes validation rules defined for the action. If any validation criteria fail, it adds Field Errors to the ActionContext's fieldErrors map.
After conversion and validation, the Workflow Interceptor checks for the presence of any Field Errors. If errors are found, it returns an INPUT result. This result automatically includes error messages and the original values submitted by the user, ensuring that the user can view the errors and correct their input.
To enable automatic error handling, ensure that the following interceptors are included in the Custom Stack in the correct order:
If a user enters an alphabetic character into a form field that is defined as an integer, the framework returns zero when retrieving the value. This occurs because the Getter method returns the default value for an integer (0) since it cannot set a String into an int field.
Struts2 does not raise an exception for conversion or validation errors since they are considered input errors. Instead, it returns an INPUT result and adds error messages to the Field Errors map for the user to address.
The above is the detailed content of How Does Struts2 Handle Conversion and Validation Errors in Form Processing?. For more information, please follow other related articles on the PHP Chinese website!