Gunnar, Regarding the "javax.persistence.validation.factory" property setting, I think it would also be passed to org.hibernate.jpa.boot.spi.Bootstrap.getEntityManagerFactoryBuilder(info, map).
Scott On 09/23/2015 09:24 AM, Gunnar Morling wrote: > Scott, > > Yes, EntityManagerFactoryBuilder#withValidatorFactory() is called (see > https://github.com/wildfly/wildfly/blob/10.0.0.CR1/jpa/subsystem/src/main/java/org/jboss/as/jpa/service/PersistenceUnitServiceImpl.java#L150, > I see it actually happening in the debugger), so I suppose Hibernate > ORM has the VF at its hands correctly. > > Only that it is not exposed via the > "javax.persistence.validation.factory" key via the EMF-exposed > property map any more. So the call to > > entityManagerFactory().getProperties().get( > "javax.persistence.validation.factory" ); > > returns null whereas it used to return the VF in earlier versions. > > But reading the spec again, it seems it only describes the > "javax.persistence.validation.factory" key as means of passing the VF > *to* JPA but not as means of obtaining it. Apparently that's just > something that happened to be the case in WF before, comments at the > test even states that this behaviour is not portable across > containers. > > So I suppose I'll have to rework that test in the course of the upgrade. > > --Gunnar > > > 2015-09-23 14:51 GMT+02:00 Scott Marlow <smar...@redhat.com>: >> Gunnar, >> >> In a standard bootstrap, the map parameter in the call to >> createContainerEntityManagerFactory(PersistenceUnitInfo info, Map map), >> should have the ValidatorFactory. >> >> For the path that your debugging (2 phase bootstrap), >> org.hibernate.jpa.boot.spi.EntityManagerFactoryBuilder.withValidatorFactory(Object) >> should of been called. If the Hibernate ORM version is 4.3 or 5.0, we >> should be calling EntityManagerFactoryBuilder.withValidatorFactory, could >> you check if that was called or not? >> >> Scott >> >> >> On 09/23/2015 07:38 AM, Gunnar Morling wrote: >>> >>> Scott, >>> >>> Upgrading the Hibernate Validator integration tests to run on WF 10 >>> CR1, two tests fail for me DefaultValidatorFactoryInPersistenceUnitIT >>> and CustomValidatorFactoryInPersistenceUnitIT. >>> >>> These are about accessing the validator factory from the entity >>> manager factory through the "javax.persistence.validation.factory" >>> property. The look-up returns null, though. I tried to debug that a >>> bit but I am a bit lost in WF's PersistenceUnitServiceImpl. The code >>> in start() populates the property in a map, but that map is not used >>> for the EMF actually bootstrapped (which happens through the >>> EntityManagerFactoryBuilder >>> phaseOnePersistenceUnitService.getEntityManagerFactoryBuilder(), which >>> does not get this property set). >>> >>> Could you check this one out? Maybe JipiJapa's >>> EntityManagerFactoryBuilder should set that property to VF given via >>> withValidatorFactory()? >>> >>> Thanks, >>> >>> --Gunnar >>> >>> [1] >>> https://github.com/hibernate/hibernate-validator/blob/master/integration/src/test/java/org/hibernate/validator/integration/wildfly/DefaultValidatorFactoryInPersistenceUnitIT.java >>> [2] >>> https://github.com/hibernate/hibernate-validator/blob/master/integration/src/test/java/org/hibernate/validator/integration/wildfly/CustomValidatorFactoryInPersistenceUnitIT.java >>> >> _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev