public class JSONValidationInterceptor extends MethodFilterInterceptor
Serializes validation and action errors into JSON. This interceptor does not perform any validation, so it must follow the 'validation' interceptor on the stack.
This stack (defined in struts-default.xml) shows how to use this interceptor with the 'validation' interceptor
<interceptor-stack name="jsonValidationWorkflowStack"> <interceptor-ref name="basicStack"/> <interceptor-ref name="validation"> <param name="excludeMethods">input,back,cancel</param> </interceptor-ref> <interceptor-ref name="jsonValidation"/> <interceptor-ref name="workflow"/> </interceptor-stack>
If 'validationFailedStatus' is set it will be used as the Response status when validation fails.
If the request has a parameter 'struts.validateOnly' execution will return after validation (action won't be executed).
If 'struts.validateOnly' is set to false you may want to use JSONActionRedirectResult
.
A request parameter named 'struts.enableJSONValidation' must be set to 'true' to use this interceptor
If the request has a parameter 'struts.JSONValidation.set.encoding' set to true the character encoding will NOT be set on the response - is needed in portlet environment - for more details see issue WW-3237
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_ENCODING |
static String |
NO_ENCODING_SET_PARAM |
static String |
VALIDATE_JSON_PARAM |
static String |
VALIDATE_ONLY_PARAM |
excludeMethods, includeMethods, log
Constructor and Description |
---|
JSONValidationInterceptor() |
Modifier and Type | Method and Description |
---|---|
protected String |
buildResponse(ValidationAware validationAware) |
protected String |
doIntercept(ActionInvocation invocation) |
void |
setValidationFailedStatus(int validationFailedStatus)
HTTP status that will be set in the response if validation fails
|
applyInterceptor, getExcludeMethodsSet, getIncludeMethodsSet, intercept, setExcludeMethods, setIncludeMethods
destroy, init
public static final String VALIDATE_ONLY_PARAM
public static final String VALIDATE_JSON_PARAM
public static final String NO_ENCODING_SET_PARAM
public static final String DEFAULT_ENCODING
public void setValidationFailedStatus(int validationFailedStatus)
validationFailedStatus
- validation failed statusprotected String doIntercept(ActionInvocation invocation) throws Exception
doIntercept
in class MethodFilterInterceptor
Exception
protected String buildResponse(ValidationAware validationAware)
validationAware
- the validation aware objectCopyright © 2000–2016 Apache Software Foundation. All rights reserved.