vaadin JPA容器和嵌套属性问题

| 我有实体ExchangeRate {date,currencyFrom,rate}。实体currencyFrom具有属性代码和名称。我将其添加到容器addNestedContainerProperty(\“ currencyFrom.code \”);  它可以正常工作,并且代码显示在vaadin表中。 现在,我创建BeanValidationForm并将此字段添加到其中。它崩溃是因为BeanValidationValidator尝试为currencyFrom.code查找getter并在ExchangeRate中查找方法getCurrencyFrom.code。 怎么了?如何使用表单上的嵌套属性字段显示一些信息。 是否可以修改ExchangeRate嵌套属性?     
已邀请:
        答案在那儿:vaadin论坛      BeanValidationForm假定所有属性都在主bean类中-它对JPAContainer或嵌套属性一无所知。注意,JSR-303 bean验证批注直接从bean类访问,而不是通过容器访问。         要解决此问题,必须为创建的每个BeanValidationValidator提供正确的Bean类-重写BeanValidationForm.addField()并将正确的Bean类提供给BVV.addValidator(),或者直接使用BVV而不是使用帮助程序类BeanValidationForm。         应该有可能(至少使用适当的级联设置)-但是,如果嵌套实例的类具有单独的EntityProvider,则仅将嵌套实体保存为主要实体的一部分时,不会将更改通知给它们。        

要回复问题请先登录注册