title: Using @Produces with @Qualifier
body: <p>Is there any way to force the use of producer method if using <code>@Qualifier</code>? I have a <code>@Produces</code> factory method but the constructor is still being called, which is an issue because I need the <code>InjectionPoint</code> to read parameters. Using the code below <code>RRRRRRRR</code> is always printed out.</p>
  
  <pre><code>@ProductTypeA
  public class ProductA implements Product
  {
      public String test="testA";
  
      private ProductA()
      {
          System.out.println("RRRRRRRRRRRRRRRRRRRR");
          this.test = "testB";
      }
      private ProductA(InjectionPoint injectionpoint)
      {
          System.out.println("TTTTTTTTTTTTTTTT");
          this.test="testC";
      }
      @Produces
      public ProductA getProductA(InjectionPoint injectionpoint)
      {
          this.test="testD";
          System.out.println("-----------------------------");
          System.out.println("injectionpoint.getAnnotated() = "+injectionpoint.getAnnotated());
          return new ProductA(injectionpoint);
      }
  
      @Override
      public LinkedList&lt;Feature&gt; getFeatures()
      {
          LinkedList&lt;Feature&gt; rtn = new LinkedList&lt;Feature&gt;();
          rtn.add( new Feature("AAA","111") );
          return rtn;
      }
  
      @Override
      public String toString()
      {
          return "ProductA []";
      }
  
  }
  </code></pre>
  
  <p>Qualifier:</p>
  
  <pre><code>@Qualifier
  @Retention(RUNTIME)
  @Target({TYPE, METHOD, FIELD, PARAMETER})
  public @interface ProductTypeA
  {
      @Nonbinding
      String testfield() default "23";
  }
  </code></pre>