We have already discussed the problem of interceptorLookup for PartialBean
on Wildfly.
IMHO due to subdeployment CL-visibilty issues (not flat!) the interceptors
in jar A are not visible in jar DS-partial-bean-impl.
A possible solution for this can be:
BeanMangerProvider#getBeanManager(): extend decision on lookup strategy like
private static boolean useDelegateLookup()
{
return CoreBaseConfig.BeanManagerIntegration.DELEGATE_LOOKUP
&& System.getProperty("jboss.server.name") == null;
}
Then all tests in partial-bean-impl -P wildfly-build-managed run
successfully!
Another issue that could be resolved this way: TransactionStrategy lookup
in data-impl:
Instead of @Priority workaround
- activate ContainerMangedTxStrategy in beans.xml
- and change Injection of TransactionStrategy in TransactionalQueryRunner
like:
protected Object executeTransactional(final QueryBuilder builder, final
CdiQueryInvocationContext context)
{
TransactionStrategy strategy =
BeanProvider.getContextualReference(TransactionStrategy.class);
will also work fine!
Just to show the massive impact of the identified (supposed?) bug in
Wildfly subdeployment class visibility.
First step: your feedback on the proposed (temporary?) fix on
abovementioned change in BeanManagerLookup
:-/