You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@karaf.apache.org by Christoforos Vasilatos <ch...@gmail.com> on 2017/05/03 13:23:39 UTC

Enable DDL Hibernate Validator

We have a project using hibernate/karaf and we are trying to enable javax
validation. We added the property <property
name="javax.persistence.validation.mode" value="ddl"/> to our
persistence.xml file. But on the startup of the modules we get the following
exception:

2017-05-03 16:10:25,770 | ERROR | aries.jpa.star]) | configadmin                     
| 10 - org.apache.felix.configadmin - 1.8.8 |
[org.osgi.service.cm.ManagedService, id=233,
bundle=214/mvn:org.apache.aries.jpa/org.apache.aries.jpa.container/2.3.0]:
Unexpected problem updating configuration org.apache.aries.jpa.star
org.hibernate.cfg.beanvalidation.IntegrationException: Bean Validation
provider was not available, but 'ddl' validation was requested
	at
org.hibernate.cfg.beanvalidation.TypeSafeActivator.activate(TypeSafeActivator.java:104)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_92]
	at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_92]
	at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_92]
	at java.lang.reflect.Method.invoke(Method.java:498)[:1.8.0_92]
	at
org.hibernate.cfg.beanvalidation.BeanValidationIntegrator.integrate(BeanValidationIntegrator.java:148)[239:org.hibernate.core:4.3.6.Final]
	at
org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:312)[239:org.hibernate.core:4.3.6.Final]
	at
org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1857)[239:org.hibernate.core:4.3.6.Final]
	at
org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:850)[240:org.hibernate.entitymanager:4.3.6.Final]
	at
org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl$4.perform(EntityManagerFactoryBuilderImpl.java:843)[240:org.hibernate.entitymanager:4.3.6.Final]
	at
org.hibernate.boot.registry.classloading.internal.ClassLoaderServiceImpl.withTccl(ClassLoaderServiceImpl.java:398)[239:org.hibernate.core:4.3.6.Final]
	at
org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:842)[240:org.hibernate.entitymanager:4.3.6.Final]
	at
org.hibernate.osgi.OsgiPersistenceProvider.createContainerEntityManagerFactory(OsgiPersistenceProvider.java:112)[241:org.hibernate.osgi:4.3.6.Final]
	at
org.apache.aries.jpa.container.impl.ManagedEMF.createAndPublishEMF(ManagedEMF.java:129)[214:org.apache.aries.jpa.container:2.3.0]
	at
org.apache.aries.jpa.container.impl.ManagedEMF.updated(ManagedEMF.java:125)[214:org.apache.aries.jpa.container:2.3.0]
	at
org.apache.felix.cm.impl.helper.ManagedServiceTracker.updated(ManagedServiceTracker.java:189)[10:org.apache.felix.configadmin:1.8.8]
	at
org.apache.felix.cm.impl.helper.ManagedServiceTracker.updateService(ManagedServiceTracker.java:152)[10:org.apache.felix.configadmin:1.8.8]
	at
org.apache.felix.cm.impl.helper.ManagedServiceTracker.provideConfiguration(ManagedServiceTracker.java:85)[10:org.apache.felix.configadmin:1.8.8]
	at
org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.provide(ConfigurationManager.java:1444)[10:org.apache.felix.configadmin:1.8.8]
	at
org.apache.felix.cm.impl.ConfigurationManager$ManagedServiceUpdate.run(ConfigurationManager.java:1400)[10:org.apache.felix.configadmin:1.8.8]
	at
org.apache.felix.cm.impl.UpdateThread.run0(UpdateThread.java:143)[10:org.apache.felix.configadmin:1.8.8]
	at
org.apache.felix.cm.impl.UpdateThread.run(UpdateThread.java:110)[10:org.apache.felix.configadmin:1.8.8]
	at java.lang.Thread.run(Thread.java:745)[:1.8.0_92]
Caused by: org.hibernate.cfg.beanvalidation.IntegrationException: Unable to
build the default ValidatorFactory
	at
org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.java:462)
	at
org.hibernate.cfg.beanvalidation.TypeSafeActivator.activate(TypeSafeActivator.java:97)
	... 22 more
Caused by: javax.validation.ValidationException: Unable to create a
Configuration, because no Bean Validation provider could be found. Add a
provider like Hibernate Validator (RI) to your classpath.
	at
javax.validation.Validation$GenericBootstrapImpl.configure(Validation.java:271)
	at
javax.validation.Validation.buildDefaultValidatorFactory(Validation.java:110)
	at
org.hibernate.cfg.beanvalidation.TypeSafeActivator.getValidatorFactory(TypeSafeActivator.java:459)
	... 23 more

Karaf is version 4.0.6 and we are using Hibernate Validator 4.3.2.Final. The 
Is there a standar way to somehow register the hibernate provider to karaf
classpath. The hibernate feature is overriden by our feature xml in order to
use version 4.3.6 instead of 5.0.3 that is distributed by default with karaf
4.0.6.



--
View this message in context: http://karaf.922171.n3.nabble.com/Enable-DDL-Hibernate-Validator-tp4050293.html
Sent from the Karaf - User mailing list archive at Nabble.com.