0

我试图在我的 jpa hibernate db 中保存一个简单的用户。所以我有一个我知道有效的persistence.xml (如果我执行一个简单的测试而不部署gwt 应用程序)。

问题是,当我使用我的用户界面对其进行测试时,persist 方法会抛出下一个错误:(我认为这是因为找不到 persistence.xml)

[错误] javax.persistence.PersistenceException: [PersistenceUnit: isw2.tasks] 无法>配置 EntityManagerFactory

……呜呜呜

[错误] 原因:org.hibernate.HibernateException:无法获取默认 Bean >验证工厂

... 更多 bla bla bla ..

[错误] 原因:java.lang.reflect.InvocationTargetException

... [错误] 原因:org.hibernate.HibernateException:无法构建默认的 ValidatorFactory

[错误] 在 org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.java:383)

[错误] 在 org.hibernate.cfg.beanvalidation.TypeSafeActivator.applyDDL(TypeSafeActivator.java:109)

......

[错误] 原因:javax.validation.ValidationException:找不到默认提供程序

[错误] 在 javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:264)

[错误] 在 javax.validation.Validation.buildDefaultValidatorFactory(Validation.java:111)

[错误] 在 org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.ja

这是我知道的有效方法:

`EntityManagerFactory emf = 持久性 .createEntityManagerFactory("isw2.tasks"); em = emf.createEntityManager();

    em.getTransaction().begin();

    em.persist(u);

    em.getTransaction().commit();
    em.clear();
    em.close();

`

对我们来说最有用的是我的项目骨架:(看看persistence.xml 文件就在那里!)

在此处输入图像描述

我正在使用 Maven 并使用 codehaus 插件部署网络应用程序。

在此先感谢专家;)

4

1 回答 1

2

异常消息Unable to find a default provider表明 hibernate 找不到验证提供程序。

你的 Hibernate Validator jar 在你的运行时类路径上吗?另请注意,您需要使用 Hibernate Validator 4 或更高版本

于 2011-08-24T19:41:19.640 回答