Annotation Type Default


  • @Target({TYPE,METHOD,PARAMETER,FIELD})
    @Retention(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;
         }
    
     }
     
    Author:
    Pete Muir, Gavin King