微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Vaadin和Joda DateTime

如何解决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 举报,一经查实,本站将立刻删除。