如何解决Vaadin和Joda DateTime
| 我使用vaadin 6.6和joda DateTime 1.6.2 我使用如何使用带有Joda DateTime属性的DateField描述的解决方案? 值已正确设置/获取,但不幸的是我遇到了转换异常: BeanValidationValidator内引发异常: 方法是JodaDateTime,值是java.util.Date 从日期不可分配JodaTime JodaTime没有String构造函数 私有对象convertValue(对象值) 引发Property.ConversionException { //尝试直接分配兼容值 如果(值==空 || method.getType()。isAssignableFrom(value.getClass())){ 返回值 }其他{ 尝试{ //获取字符串构造函数 最终构造方法constr = method.getType()。getConstructor( new Class [] {String.class}); return constr.newInstance(new Object [] {value.toString()}); } catch(final java.lang.Exception e){ 抛出新的Property.ConversionException(e); } } } 你有什么想法吗?解决方法
我还没有亲自尝试过,但是从BeanValidationValidator中可以看到,您还需要扩展它并添加JodaTime和java.util.Date之间的隐式转换。
至少BeanValidationValidator.validate(Object)方法需要处理此转换。
,看看PopupDateTimeField.java
您也可以使用PropertyConverter
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。