[ 
https://issues.apache.org/jira/browse/ARIES-2059?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17415743#comment-17415743
 ] 

ASF subversion and git services commented on ARIES-2059:
--------------------------------------------------------

Commit 31b7e3e2a82785c491c7559ee1aeec9c48a17f6e in aries-cdi's branch 
refs/heads/master from Raymond Augé
[ https://gitbox.apache.org/repos/asf?p=aries-cdi.git;h=31b7e3e ]

ARIES-2059 Component properties are sometimes merged in the incorrect order

Signed-off-by: Raymond Augé <[email protected]>


> Component properties are sometimes merged in the incorrect order
> ----------------------------------------------------------------
>
>                 Key: ARIES-2059
>                 URL: https://issues.apache.org/jira/browse/ARIES-2059
>             Project: Aries
>          Issue Type: Bug
>          Components: CDI
>            Reporter: Raymond Augé
>            Assignee: Raymond Augé
>            Priority: Major
>             Fix For: cdi-1.1.4
>
>
> Component properties are sometimes merged in the incorrect order.
> This was caused by the following misuse of the CDI annotated APIs as follows:
> When a repeatable annotation is defined on a class, the API 
> {{javax.enterprise.inject.spi.Annotated}} can be misleading because {{<T 
> extends Annotation> Set<T> getAnnotations(Class<T> annotationType);}} returns 
> a Set.
> This means that implementations are free to return annotations not in 
> definition order.
> Aries CDI mistakenly used this API to retrieve {{@PID}} annotations (which 
> are repeatable.)
> The work around is pretty simple, when needing to retrieve repeatable 
> annotations in definition order pass the container annotationType (all 
> repeatable annotations have a container annotation type) to the method 
> instead, in this case {{getAnnotations(PIDs.class)}} and then get the 
> {{@PIDs.value()}} array which contains the {{@PID}} annotations in definition 
> order.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to