On 07/08/2015 09:32 AM, Hardy Ferentschik wrote:
On Wed, Jul 08, 2015 at 09:11:55AM -0400, Scott Marlow wrote:
>> Just fishing here, but "integration code and the ORM 5 persistence
provider" might
>> indicate a problem in the persistence bootstrapping.
>> Have a look at
org.hibernate.cfg.beanvalidation.TypeSafeActivator#getValidatorFactory.
>> Basically ORM expects to retrieve the ValidatorFactory to use for the life cycle
based
>> validation from the properties passed via the Persistence bootstrap. The property
name
>> is javax.persistence.validation.factory. If there is no instance passed ORM will
bootstrap
>> a default factory using Validation.buildDefaultValidatorFactory(). The latter
would
>> of course not be CDI enabled. This would explain why validation occurs, but not
CDI injection.
>> I would for sure put a breakpoint in there as well (and some trace/debug log
would be probably
>> nice to have as well to easily tell whether a factory is passed or a default one
is generated.
>
> Good suggestion, the validation factory does get passed in during the second
> bootstrap phase. If we looked for it during the first JPA bootstrap phase,
> we would not see it in Hibernate ORM 5. We should check that
+1
I am also confused about your debugging instructions. You are suggesting to use the
Wildfly instance
under dist/target. When I do that and have this instance running when while executing
'mvn install -Dtest=*BeanValidationCdiIntegrationTestCase*' the tests actually
pass. Apparently
in this case Arquillian is configured to run against the running Wildfly instance.
If I, however, run the tests without having a running Wildfly instance the tests keep
failing. Seems
to me that a different Wildfly instance is used. I guess I don't fully understand the
test setup
in the widlfly repo and this integration tests in particular, but obviously I want to
debug the
right thing.
I don't know why that is happening. It sounds like we have enough
information from your previous suggestion though and my last email.
I'll follow up with you on IRC next. :)
--Hardy