Bean can not be created if constructor argument use generics
------------------------------------------------------------

                 Key: ARIES-843
                 URL: https://issues.apache.org/jira/browse/ARIES-843
             Project: Aries
          Issue Type: Bug
          Components: Blueprint
    Affects Versions: 0.3
            Reporter: Tomas Forsman


If a bean has a constructor argument which use generics, the injection fails 
with "org.osgi.service.blueprint.container.ComponentDefinitionException: Unable 
to find a matching constructor".

Example:
package example;
public interface Example<A> {}

public class ExampleImpl implements Example<String> {}

public class Service {
  private Example<String> example;
  public Service(Example<String> example) {
    this.example = example;
  }
}

<reference id="exampleReference" interface="example.Example"/>

<bean id="proxyServiceInitialization" class="example.Service">
    <argument ref="exampleReference"/>
</bean>

Changing the constructor of Service to "public Service(Example example)" make 
it work, but it would be better to have it inject correctly with the generics 
intact.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to