"Bar extends Foo"

The problem is that both Bar and Foo are added as AnnotatedType against 
ClassTransformer,
and eventually deployed as such.

But WeldClassImpl::superclass is looked-up against ClassTransformer::classes 
--> diff WC_Foo instances

> ClassTransformer
> 
>     private final ConcurrentMap<TypeHolder<?>, WeldClass<?>> classes;
>     private final ConcurrentMap<AnnotatedType<?>, WeldClass<?>> 
> annotatedTypes;
> 
> ... and no equals/hash impl on WeldClassImpl ...
> 
> 
>> WELD-802 is due to WeldClassImpl not being the same for same class:
>> 
>> clazz = {java.lang.Class@5703}"class 
>> org.jboss.weld.tests.specialization.weld802.Foo"
>> weldClass = 
>> {org.jboss.weld.introspector.jlr.WeldClassImpl@5687}"public@RequestScoped 
>> class org.jboss.weld.tests.specialization.weld802.Foo" 
>> 
>> --
>> 
>> key: org.jboss.weld.introspector.jlr.WeldClassImpl = 
>> {org.jboss.weld.introspector.jlr.WeldClassImpl@5709}"public@RequestScoped 
>> class org.jboss.weld.tests.specialization.weld802.Foo"
>> value: org.jboss.weld.bean.ManagedBean = 
>> {org.jboss.weld.bean.ManagedBean@5961}"Managed Bean [class 
>> org.jboss.weld.tests.specialization.weld802.Foo] with qualifiers [@Any 
>> @Default]" 
>> 
>> ... investigating further ...
>> 
> 

_______________________________________________
weld-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/weld-dev

Reply via email to