[ 
https://issues.apache.org/jira/browse/OWB-1043?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

V L updated OWB-1043:
---------------------
    Description: 
I found a strange behavior while handling events by private methods. First 
event was processed successfully, but the next ones not. 
Look at the 
/org/apache/webbeans/event/ObserverMethodImpl.java:216
isPrivateMethod is true, then accessible flag sets to true. This means that 
next time isPrivateMethod will be false even observer method has a private 
qualifier. Invocation of such method will be the same as invocation of public 
methods, but invocation handler won't be invoked for private methods.
In this situation proxy instance's method will be invoked, but not a method of 
the contextual bean instance. 
In my case I get a NPE when calling any injected bean methods (each injected 
beans are null inside assist proxy) 

Seems that this code should be changed:
boolean isPrivateMethod = !observerMethod.isAccessible();

  was:
I found a strange behavior while handling events by private methods. First 
event was processed successfully, but the next ones not. 
Look at the 
/org/apache/webbeans/event/ObserverMethodImpl.java:216
isPrivateMethod is true, then accessible flag sets to true. This means that 
next time isPrivateMethod will be false even observer method has a private 
qualifier. Invocation of such method will be the same as invocation of public 
methods, but invocation handler won't be invoked for private fields.
In this situation proxy instance's method will be invoked, but not a method of 
the contextual bean instance. 
In my case I get a NPE when calling any injected bean methods (each injected 
beans are null inside assist proxy) 

Seems that this code should be changed:
boolean isPrivateMethod = !observerMethod.isAccessible();


> Private method observer is not working properly while processing second and 
> next events
> ---------------------------------------------------------------------------------------
>
>                 Key: OWB-1043
>                 URL: https://issues.apache.org/jira/browse/OWB-1043
>             Project: OpenWebBeans
>          Issue Type: Bug
>          Components: Events
>    Affects Versions: 1.1.8
>            Reporter: V L
>
> I found a strange behavior while handling events by private methods. First 
> event was processed successfully, but the next ones not. 
> Look at the 
> /org/apache/webbeans/event/ObserverMethodImpl.java:216
> isPrivateMethod is true, then accessible flag sets to true. This means that 
> next time isPrivateMethod will be false even observer method has a private 
> qualifier. Invocation of such method will be the same as invocation of public 
> methods, but invocation handler won't be invoked for private methods.
> In this situation proxy instance's method will be invoked, but not a method 
> of the contextual bean instance. 
> In my case I get a NPE when calling any injected bean methods (each injected 
> beans are null inside assist proxy) 
> Seems that this code should be changed:
> boolean isPrivateMethod = !observerMethod.isAccessible();



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to