import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
public abstract class BaseValidator {
protected static Messages getMessages(ServletRequestAttributes servletRequestAttributes) {
Messages messages =
(Messages) servletRequestAttributes.getAttribute(
FieldValidationConstants.MESSAGES,
RequestAttributes.SCOPE_REQUEST);
if (messages == null) {
messages = new Messages();
}
return messages;
}
/**
* Add field error message to request attribute
* @param fieldErrorParam Field error tag parameter
* @param fieldErrorMessage Field error message
*/
protected static void addFieldErrorMessage(String fieldErrorParam, String fieldErrorMessage) {
if (!Util.isEmpty(fieldErrorParam) && !Util.isEmpty(fieldErrorMessage)) {
ServletRequestAttributes servletRequestAttributes =
(ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
Messages messages = BaseValidator.getMessages(servletRequestAttributes);
messages.addFieldErrorMessage(fieldErrorParam, fieldErrorMessage);
servletRequestAttributes.setAttribute(FieldValidationConstants.MESSAGES,
messages, RequestAttributes.SCOPE_REQUEST);
}
}
}