I'm just now trying to upgrade to Weld 3.0.0 Alpha 16 (from Alpha10) and I'm
finding a significant change in the way the proxies are generated. This
seems to be the result of this ticket:
In short, it seems that decorated beans that have private methods that
@Observe events are invoked on the wrong instance. They get invoked on an
uninitialized proxy instance instead of the properly initialized bean
I'm still working to put together a small project that reproduces this
problem, but that may take me until tomorrow. My actual project is too
Has anyone else reported this type of problem? Where an @ApplicationScope
bean with a decorator and a private method with arguments that @Observe some
event are invoked on the wrong object instance? In this case, I'm enabling
RunnableDecorator, and one of my AppScope beans implements Runnable, and it
has a private observer method.
I did my best to search for any other posts on this problem, but didn't find
anything relevant (other than the JIRA ticket I referenced above).