title: Can create HashMap with Spring but can't create Map
body: <p>I can do this in my applicationContext with Spring (3.0.5):</p>
  
  <pre><code>&lt;bean id="map" class="java.util.HashMap" scope="prototype" &gt;
      &lt;constructor-arg&gt;
          &lt;map key-type="java.lang.String" value-type="java.lang.String"&gt;
              &lt;entry key="Key 1" value="1" /&gt;
              &lt;entry key="Key 2" value="2" /&gt;
          &lt;/map&gt;
      &lt;/constructor-arg&gt;
  &lt;/bean&gt;
  </code></pre>
  
  <p>And in my controller, I can autowired my map like this:</p>
  
  <pre><code>@Autowired
  @Qualifier("map")
  private HashMap&lt;String, String&gt; map;
  </code></pre>
  
  <p>It works fine, but if I do this:</p>
  
  <pre><code>@Autowired
  @Qualifier("map")
  private Map&lt;String, String&gt; map;
  </code></pre>
  
  <p>I get that:</p>
  
  <blockquote>
    <p>Caused by:
    org.springframework.beans.factory.NoSuchBeanDefinitionException: No
    matching bean of type [java.lang.String] found for dependency [map
    with value type java.lang.String]: expected at least 1 bean which
    qualifies as autowire candidate for this dependency. Dependency
    annotations:
    {@org.springframework.beans.factory.annotation.Autowired(required=true),
    @org.springframework.beans.factory.annotation.Qualifier(value=map)}</p>
  </blockquote>
  
  <p>My question is: Why I can't autowired my map with the interface when I can with the implementation ?</p>
  
  <p>Thanks.</p>