[
https://issues.apache.org/jira/browse/OWB-861?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13655819#comment-13655819
]
Romain Manni-Bucau commented on OWB-861:
----------------------------------------
ok, you are right, the issue is the line
{code}
superClass = superClass.getClass().getGenericSuperclass();
{code}
which simply makes the loop ending
> Decorator building fails when decorator has inheritance
> -------------------------------------------------------
>
> Key: OWB-861
> URL: https://issues.apache.org/jira/browse/OWB-861
> Project: OpenWebBeans
> Issue Type: Bug
> Components: Interceptor and Decorators
> Affects Versions: 1.1.8
> Reporter: Thomas Herzog
> Labels: decorator, openejb
> Fix For: 1.1.8
>
>
> When there is a decorator which inherits from a base implementation.
> BaseDecorator - BaseModuleDecorator - ServiceDecorator(abstract) where the
> ServiceDecorator injects the delegate.
> It does not matter if the BaseDecorator or BaseModuleDecorator are abstract
> or not.
> The base decorators hold common resources for the concrete decorator
> implementation.
> The BaseDecorator is not removed from the 'decoratedTypes - set' but the
> BaseModuleDecorator is.
> This happens in
> org.apache.webbeans.component.creation.DecoratorBeanBuilder#defineDecoratedTypes(line:
> 189 - 196)
> {code:title=""}
> ..
> Type superClass = beanClass.getGenericSuperclass();
> while (superClass != Object.class)
> {
> decoratedTypes.remove(superClass);
> superClass = superClass.getClass().getGenericSuperclass();
> }
> decoratedTypes.remove(Object.class);
> decoratedTypes.remove(java.io.Serializable.class); /* 8.1 */
> ..
> {code}
> Is a decorator not supposed to inherit from another class ?
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira