[jboss-jira] [JBoss JIRA] (WFLY-3632) @Inject broken for parameterized interfaces
Jozef Hartinger (JIRA)
issues at jboss.org
Thu Oct 2 01:47:02 EDT 2014
[ https://issues.jboss.org/browse/WFLY-3632?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jozef Hartinger resolved WFLY-3632.
-----------------------------------
Fix Version/s: 8.2.0.CR1
9.0.0.Beta1
Resolution: Done
> @Inject broken for parameterized interfaces
> -------------------------------------------
>
> Key: WFLY-3632
> URL: https://issues.jboss.org/browse/WFLY-3632
> Project: WildFly
> Issue Type: Bug
> Components: CDI / Weld
> Environment: Wildfly 8.1.0Final (tested on MacOS X 10.9.3)
> Reporter: Alexander Langer
> Assignee: Jozef Hartinger
> Fix For: 8.2.0.CR1, 9.0.0.Beta1
>
> Attachments: CDIMultiModuleTest.zip, CDIMultiModuleTest.zip, server.log
>
>
> @Inject is broken on Wildfly 8.1.0 Final when the interface to be injected is parameterized with a type that extends another type. Example code:
> {code}
> public interface Foo<T extends Serializable> { } // will fail
> public class FooBean implements Foo { }
> public interface Bar<T> { } // will work
> public class BarBean implements Bar { }
> @Singleton
> @Startup
> public class TestSingleton {
> @Inject
> private Instance<Foo> foo;
> @Inject
> private Instance<Bar> bar;
> @PostConstruct
> public void init() {
> System.out.println("##### foo is unsatisfied = " + foo.isUnsatisfied());
> for (Foo f : foo)
> System.out.println("foo is: " + f.getClass().getCanonicalName());
> System.out.println("##### bar is unsatisfied = " + bar.isUnsatisfied());
> for (Bar b : bar)
> System.out.println("bar is: " + b.getClass().getCanonicalName());
> }
> }
> {code}
> output:
> {code}
> 22:30:25,904 INFO [stdout] (ServerService Thread Pool -- 50) ##### foo is unsatisfied = true
> 22:30:25,905 INFO [stdout] (ServerService Thread Pool -- 50) ##### bar is unsatisfied = false
> {code}
> The same code works on JBoss AS 7.1.1, so something must have changed for Wildfly.
> The attached small example project can be used to reproduce the error.
--
This message was sent by Atlassian JIRA
(v6.3.1#6329)
More information about the jboss-jira
mailing list