开发者

Customize spring validation error

I want customize the spring validation error for

    @NotNull
    @Length(max = 80)
    private Str开发者_开发问答ing email; 

but I'm unable to do it. What are the step to follow?


The JSR 303 default message interpolation algorithm allows you to customize messages by supplying a resource bundle named ValidationMessages. Create a ValidationMessages.properties file in the classpath containing:

javax.validation.constraints.NotNull.message=CUSTOM NOT NULL MESSAGE
javax.validation.constraints.Size.message=CUSTOM SIZE MESSAGE

This changes the default message for the @Size constraint, so you should use the @Size constraint instead of the Hibernate-specific @Length constraint.

Instead of changing the default message for all constraints, you can change the message for a specific constraint instance. Set the message attribute on the constraint:

@NotNull(message = "{email.notnull}")
private String email;

And add the message to the ValidationMessages.properties file:

email.notnull=E-mail address is required


By Spring I am assuming you mean Spring MVC.

From the below reference http://static.springsource.org/spring/docs/2.0.x/reference/mvc.html

Here you go -

You create a validator class -

public class UserValidator implements Validator {

    public boolean supports(Class candidate) {
        return User.class.isAssignableFrom(candidate);
    }

    public void validate(Object obj, Errors errors) {
        ValidationUtils.rejectIfEmptyOrWhitespace(errors, "firstName", "required", "Field is required.");
        ValidationUtils.rejectIfEmptyOrWhitespace(errors, "lastName", "required", "Field is required.");
    }
}

Put in any validation text you want in the above field.

In the JSP you will need the following tag -

<tr>
    <td>First Name:</td>
    <td><form:input path="firstName" /></td>
    <!-- Show errors for firstName field -->
    <td><form:errors path="firstName" /></td>
</tr>

This way any validation error for firstName will be printed.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜