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

Mark Struberg resolved OWB-1133.
--------------------------------
       Resolution: Fixed
         Assignee: Mark Struberg
    Fix Version/s: 1.6.0

This issue is fixed in the 1.6.x line which targets the CDI-1.2 specification.
We do not plan to change the behaviour in the old 1.2.x maintenance versions.
Usually this makes no problems as normal CDI beans are only available _after_ 
the container got started anyway. 

Do you still use CDI-1.0 somewhere? Or can you update to OWB-1.6.3?

> Container lifecycle events are observed by non-Extension classes
> ----------------------------------------------------------------
>
>                 Key: OWB-1133
>                 URL: https://issues.apache.org/jira/browse/OWB-1133
>             Project: OpenWebBeans
>          Issue Type: Bug
>          Components: Events
>    Affects Versions: 1.2.8
>            Reporter: Andrzej K
>            Assignee: Mark Struberg
>             Fix For: 1.6.0
>
>
> Because of erroneus usages of method fireEvent (where fireLifecycleEvent 
> should be) if a situation as described below holds, an error is generated.
> When:
> -bean A depends on bean B and C
> -bean A declares observer method with parameters @Observes Object event 
> (which means, that it observes all events)
> There is (sometimes, it depends on a classpath) a deployment error because A 
> cannot be built if B and C were not analyzed from the classpath. A should be 
> build, because a containter wants to fire an event ProcessObserverMethod. The 
> problem is, that this event is a lifecycle event and it should be never fired 
> to bean A which is not Extension specialization (however v. 1.2.8 does it -- 
> incorrectly).
> The observation is done according to 11.5 of CDI 1.0 specs which clearly 
> states that: "Observer  methods  of  these  events  must  belong  to
> extensions". The events are Lifecycle events.
> AFAIK it is a problem in class org.apache.webbeans.util.WebBeansUtil, where 
> methods firing lifecycle events (e.g fireProcessObservableMethodBeanEvent) 
> uses method fireEvent instead of fireLifecycleEvent (from class 
> BeanManagerImpl).



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

Reply via email to