Certain annotations should not only be inherited from their super class package
but also from their super class itself
----------------------------------------------------------------------------------------------------------------------
Key: WW-3083
URL: https://issues.apache.org/struts/browse/WW-3083
Project: Struts 2
Issue Type: Bug
Components: Plugin - Convention
Affects Versions: 2.1.6
Reporter: Kris Coolsaet
Priority: Minor
The API documentation of AnnotationTools.findAnnotation expected me to think
that annotation were inherited.
Example: assume mypackage.MyAction extends otherpackage.SuperAction
If MyAction does not have a @ParentPackage annotation and SuperAction does,
then I had expected that the parent package of SuperAction would also be used
for MyAction. This is not the case. However, if the package-info.java of
otherpackage has a @ParentPackage annotation (and mypackage does not) then that
annotation is used also for MyAction. This distinction between classes and the
packages they belong to, feels counterintuitive.
Apart from @ParentPackage, other annotations might benifit from inheritance as
well, e.g., @InterceptorRef.
There are two ways to implement this requested behavior: add and @Inherited
(meta-)annotation to the annotations, or reimplement
AnnotationTools.findAnnotation to also look at the annotations of the super
class. (The latter solution would however not distinguish between different
types of annotation.)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.