Aries
  1. Aries
  2. ARIES-843

Bean can not be created if constructor argument use generics

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.3
    • Fix Version/s: blueprint-core-1.0.1
    • Component/s: Blueprint
    • Labels:
      None

      Description

      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; }

      }

      <bean id="exampleBean" class="example.ExampleImpl"/>

      <bean id="serviceBean" class="example.Service">
      <argument ref="exampleBean"/>
      </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.

        Issue Links

          Activity

          Hide
          Guillaume Nodet added a comment -

          This is actually the same issue.

          Show
          Guillaume Nodet added a comment - This is actually the same issue.
          Hide
          Guillaume Nodet added a comment -

          Added a unit test in http://svn.apache.org/viewvc?rev=1365492&view=rev to check the ARIES-834 fix works with this use case too.

          Show
          Guillaume Nodet added a comment - Added a unit test in http://svn.apache.org/viewvc?rev=1365492&view=rev to check the ARIES-834 fix works with this use case too.

            People

            • Assignee:
              Guillaume Nodet
              Reporter:
              Tomas Forsman
            • Votes:
              2 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development