notempty - java.lang.NoClassDefFoundError: javax/validation/ParameterNameProvider
javax validation parameternameprovider maven (2)
Hibernate Validator 5x no es compatible con validation-api 1.0.x
JPA 2.0: excepción al uso del paquete javax.validation. * En JPA 2.0
Escribo una pequeña aplicación de hibernación y obtengo el siguiente stacktrace:
org.hibernate.cfg.beanvalidation.IntegrationException: Error activating Bean Validation integration
at org.hibernate.cfg.beanvalidation.BeanValidationIntegrator.integrate(BeanValidationIntegrator.java:154)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:312)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1857)
at com.beingjavaguys.hbn.HibernateUtil.buildSessionFactory(HibernateUtil.java:18)
at com.beingjavaguys.hbn.HibernateUtil.<clinit>(HibernateUtil.java:10)
at crud.UserDao.addUser(UserDao.java:12)
at com.beingjavaguys.hbn.App.main(App.java:53)
Caused by: java.lang.NoClassDefFoundError: javax/validation/ParameterNameProvider
...
No entiendo la razón de este error.
código:
Configuration configuration = new Configuration();
configuration.configure();
ServiceRegistry serviceRegistry = new StandardServiceRegistryBuilder().applySettings(
configuration.getProperties()).build();
return configuration.buildSessionFactory(serviceRegistry); // exception thrown here
mi pom.xml:
...
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.3.5.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.1.1.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate.common</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>4.0.4.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.0-api</artifactId>
<version>1.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>4.3.5.Final</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
<scope>provided</scope>
</dependency>
...
...
He leído temas relacionados, pero realmente no entiendo cómo solucionarlo, no quiero pasar a la versión 4.0 de hibernación.
¿Como arreglarlo?
Solo remueve la dependencia javax.validation
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.0.0.GA</version>
</dependency>
Eso solucionó este problema en particular en mi final.