Default
Date: 2015-09-11

javax.enterprise.inject

## Annotation Type Default

-     @Target(value={TYPE,METHOD,PARAMETER,FIELD})
      @Retention(value=RUNTIME)
      @Documented
      @Qualifier
      public @interface Default

  The default qualifier type.

  If a bean does not explicitly declare a qualifier other than `@Named`, the bean has the qualifier `@Default`.

  If an injection point declares no qualifier, the injection point has exactly one qualifier, the default qualifier `@Default`.

  The following are equivalent:

       @ConversationScoped
       public class Order {

          private Product product;
          private User customer;

          @Inject
          public void init(@Selected Product product, User customer) {
             this.product = product;
             this.customer = customer;
         }

       }

       @Default @ConversationScoped
       public class Order {

          private Product product;
          private User customer;

          @Inject
          public void init(@Selected Product product, @Default User customer) {
             this.product = product;
             this.customer = customer;
          }

       }