注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

和申的个人主页

专注于java开发,1985wanggang

 
 
 

日志

 
 

Failed to convert property value of type [java.lang.String] to required type [double] for property price; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [double] for property price:  

2009-11-25 10:55:27|  分类: 项目开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
struts2 xml 验证出现 Invalid field value for field 的解决 - 和申 - 和申的个人主页

Failed to convert property value of type [java.lang.String] to required type [double] for property price; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [double] for property price: no matching editors or conversion strategy found
Failed to convert property value of type [java.lang.String] to required type [long] for property priority; nested exception is java.lang.NumberFormatException: For input string: ""
昨天做项目的时候发现 SimpleFormController 绑定的字段中double ,long型的字段,在空的时候,或类型不对时抛出如上的异常
查资料时看到:需要加入initBinder
@Override
    protected void initBinder(HttpServletRequest request,
            ServletRequestDataBinder binder) throws Exception {
//        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-mm-dd");
//        dateFormat.setLenient(true);
//        binder.registerCustomEditor(Date.class, null, new CustomDateEditor(dateFormat, true));
        binder.registerCustomEditor(byte[].class,new ByteArrayMultipartFileEditor());
        binder.registerCustomEditor(Integer.class, null,new CustomNumberEditor(Integer.class, null, true));
        binder.registerCustomEditor(Long.class, null,new CustomNumberEditor(Long.class, null, true));
        binder.registerCustomEditor(Double.class, null,new CustomNumberEditor(Double.class, null, true));
        binder.registerCustomEditor(double.class, null,new CustomNumberEditor(Double.class, null, true));
        super.initBinder(request, binder);
    }

加入后发现没有正常,后来想是不是国际化的事
/WEB-INF/applicationContext.xml
    <bean id="messageSource" class="org.springframework.context.support.ResourceBundleMessageSource">
        <property name="basenames">
            <list>        
                <value>common_messages</value>
                <value>error_messages</value>
            </list>
        </property>
    </bean>
在/src 下加入如下文件
common_messages_zh_CN.properties
common_messages.properties
error_messages_zh_CN.properties
error_messages.properties
正常,可以用中文提示了

Failed to convert property value of type [java.lang.String] to required type [double] for property price; nested exception is java.lang.IllegalArgumentException: Cannot convert value of type [java.lang.String] to required type [double] for property price: - 和申 - 和申的个人主页
  评论这张
 
阅读(11752)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016