繁体   English   中英

验证不适用于持久性

[英]Validation doesn't work with persist

我正在使用Spring 3.1.0.RELEASE,JSF 2.x,JPA 2和Hibernate Provider进行Web应用程序。 该应用程序在Tomcat 6.X上运行。

我在我的实体中使用bean验证。 Hibernate Validator是提供程序,版本4.2.0.Final。

@NotEmpty(message="{site.checklangs}")
    @OrderBy("position ASC")
    @OneToMany(mappedBy = "site", fetch = FetchType.EAGER, cascade= CascadeType.ALL, orphanRemoval=true)
    private List<SiteLanguage> langs;

@NotEmpty用于persist但不用于merge

@Override
    @Transactional
    public Site updateSite(Site site) {
        return entityManager.merge(site);
    }

当我的列表为空时,这不会抛出任何异常。 为什么? 如何解决?

尝试调用entityManager.flush(); merge()merge() ;

请参阅验证不适用于EntityManager.merge()作为参考。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM