[weld-dev] weld-802
Ales Justin
ales.justin at gmail.com
Sat Nov 19 19:42:45 EST 2011
OK, fixed in my weld-912 branch:
* https://github.com/alesj/core/commit/02fc21b9d5aba3bb80fd11fb2b47ce701f0cb95f
> "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 at 5703}"class org.jboss.weld.tests.specialization.weld802.Foo"
>>> weldClass = {org.jboss.weld.introspector.jlr.WeldClassImpl at 5687}"public at RequestScoped class org.jboss.weld.tests.specialization.weld802.Foo"
>>>
>>> --
>>>
>>> key: org.jboss.weld.introspector.jlr.WeldClassImpl = {org.jboss.weld.introspector.jlr.WeldClassImpl at 5709}"public at RequestScoped class org.jboss.weld.tests.specialization.weld802.Foo"
>>> value: org.jboss.weld.bean.ManagedBean = {org.jboss.weld.bean.ManagedBean at 5961}"Managed Bean [class org.jboss.weld.tests.specialization.weld802.Foo] with qualifiers [@Any @Default]"
>>>
>>> ... investigating further ...
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/weld-dev/attachments/20111120/e0f67a5c/attachment.html
More information about the weld-dev
mailing list