You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@aries.apache.org by "Christian Schneider (JIRA)" <ji...@apache.org> on 2016/01/13 17:26:40 UTC
[jira] [Resolved] (ARIES-1481) blueprint-maven-plugin: fix
detection of inherited @OsgiService/@PersistenceContext/Unit-annotated
fields
[ https://issues.apache.org/jira/browse/ARIES-1481?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christian Schneider resolved ARIES-1481.
----------------------------------------
Resolution: Fixed
Merged the PR with some refactorings
> blueprint-maven-plugin: fix detection of inherited @OsgiService/@PersistenceContext/Unit-annotated fields
> ---------------------------------------------------------------------------------------------------------
>
> Key: ARIES-1481
> URL: https://issues.apache.org/jira/browse/ARIES-1481
> Project: Aries
> Issue Type: Bug
> Components: Blueprint
> Reporter: Sam Wright
> Assignee: Christian Schneider
> Fix For: blueprint-maven-plugin-1.4.0
>
>
> Fields inherited from parent classes annotated with @Inject are properly detected by blueprint-maven-plugin, but the presence of @OsgiService,
> @PersistenceContext, and @PersistenceUnit annotations on fields declared in parent classes is ignored.
> This is because @Inject-annotated fields are found in the Bean.resolve(Matcher) method which recursively searches all parent classes for declared fields, whereas @PersistenceContext/Unit-annotated fields are discovered in Bean.getPersistenceFields() by simply using the fields declared in the bean class. Similarly, @OsgiService-annotated fields are discovered in Context.addServiceRefs(Class) by looking through the fields declared in the bean class.
> This commit extracts the field-getting algorithm used for finding
> @Inject fields to a utility method which is used for finding fields for the other
> annotations.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)