-
Bug
-
Resolution: Done
-
Minor
-
None
-
None
I propose the following addition to section 8.1:
"If the set of decorated types of a decorator is empty, the container automatically detects the problem and treats it as a definition error."
This would be helpful in cases where the developer is not aware that a decorator and decorated bean must share the same interface, and thinks that a decorator can be defined simply by extending the decorated class (as in the following example).
public class MyBean { public Object foo() {...} } @Decorator public class MyDecorator extends MyBean { @Inject @Delegate MyBean delegate; public Object foo() {...} }
Even though the spec does explicitly state that "superclasses are not decorated types of the decorator", throwing an error would probably save some people's debugging time.