【问题标题】:TypeMismatch in PropertyEditorSupportPropertyEditorSupport 中的类型不匹配
【发布时间】:2015-07-25 08:36:37
【问题描述】:

恐怕我还没有完全理解如何在 Spring 中使用 PropertyEditorSupport。

public class IntegerFormat extends PropertyEditorSupport
{

    @Override
    public void setAsText(String text) throws IllegalArgumentException
    {
        try
        {
            int v = Integer.parseInt(text);
            super.setValue(v);
        }
        catch(Exception ex)
        {
            super.setValue(null); // TypeMismatch
        }   
    }    
}

在上面的代码 sn-p 中,我应该如何指示发生了类型不匹配?
如果我确实 setValue(null) 类型不匹配,则会与根本不提供参数的情况混淆。

【问题讨论】:

  • 在 catch 块中添加 null 的任何具体原因
  • 我应该做些什么来指示类型不匹配?这是我的疑问

标签: java spring validation spring-mvc


【解决方案1】:

有两种解决方案

  1. 理想情况下,您应该选择client side validation using JavaScript 使用 typeMismatch.java.lang.Integer

  2. 否则您可以进行服务器端弹簧验证

    public static boolean isParsable(String input){ boolean parsable = true;尝试{整数.parseInt(输入); }catch(NumberFormatException e){ 可解析 = false; } 返回可解析的; }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-06
    • 2015-05-28
    • 2020-03-31
    • 2014-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-27
    相关资源
    最近更新 更多