2015-03-02 47 views
5

我有一个在Spring中编写的Web应用程序。有一个Integer字段的HTML表单。我为typeMismatch.java.lang.Integer添加了一条自定义消息,并且处理正确,但有一个问题。 Spring不区分字符串值和“溢出”整数。换句话说 - 用户输入this is a string还是1000000000000000000000000000没有区别。两者都由Spring处理为typeMismatch。我希望为这两种情况分别提供两条消息。在弹簧绑定过程中溢出数字的自定义消息

我想到了两个解决方案:

  1. 在 表单对象替换java.lang.Integer通过java.math.BigInteger - 那么typeMismatch错误将只适用于this is a string和我将在 验证处理1000000000000000000000000000
  2. 注册我的自己的财产编辑Integer,但我不知道我 可以处理两个不同的错误与一个属性编辑器

你对这个问题有什么更好的概念吗?

回答