Here are the commits for WELD-1441: https://github.com/weld/core/commit/569c8efc5f0dd1dcc9c942fd3dd8c1f65a216b9e https://github.com/weld/core/commit/9e248b5306b382f88f41cca1325178ed6fbe4306
What bothers me is https://github.com/weld/core/commit/569c8efc5f0dd1dcc9c942fd3dd8c1f65a216b9e#L1R55 It throws CreationException for abstract classes and non-static-inner ones. Anonymous are not even mentioned in this ticket and its commits. And Weld 2.0 does fail when processing an anonymous class! I'm just saying that after reverting this change Wicket+Weld 2.0.2 users will see their apps failing again, no matter whether they use your pattern for DI in anonymous classes or not. Weld 2.0.1 throws exception no matter whether there are @Inject-ed members in the anonymous class or not. On Wed, Jul 3, 2013 at 11:53 AM, Emond Papegaaij <[email protected] > wrote: > Here's my vote: > [X] Yes, revert 5226 and release 6.9.1 > > Emond > > On Wednesday 03 July 2013 10:09:33 Emond Papegaaij wrote: > > Hi all, > > > > The changes made for WICKET-5226 (no longer injecting anonymous > inner > > classes) breaks our applications badly, and I suspect we are not the > only > > one. The following pattern is quite common: > > > > add(new Link<Void>("rest") { > > @Inject > > private AccountRestResourceClient accountClient; > > > > @Override > > public void onClick() {....} > > } > > > > In Wicket 6.9.0, this no longer works: accountClient will not get > injected > > because the Link is an anonymous inner class. To make things worse, > even > > in concrete classes, you can't rely on injection to work, because > someone > > could subclass your class as an anonymous inner class and injection will > > again not work. > > > > This change was made because Weld 2.0 throws an exception when > trying > > to create an InjectionTarget for anonymous classes. This will be reduced > to > > a log-warning in 2.0.2: https://issues.jboss.org/browse/WELD-1441 > > > > As there is no workaround for this problem and it is likely to break all > > applications using wicket-cdi, I'm starting a vote to revert the changes > > made for 5226 and release 6.9.1: > > > > [ ] Yes, revert 5226 and release 6.9.1 > > [ ] No, revert 5226 but not release 6.9.1 > > [ ] No, keep as is > > > > See WICKET-5264 > > > > Best regards, > > Emond >
