Glassfish has incorrect @javax.annotation.Resource annotation class.
Resource.authentication() member should be
*Resource.authenticationType()* according to JSR-250 PFD spec.
JSR250 PFD says:
public @interface Resource {
public enum AuthenticationType {
CONTAINER,
APPLICATION
}
String name() default ““;
Class type() default Object.class;
AuthenticationType authenticationType() default
AuthenticationType.CONTAINER;
boolean shareable() default true;
String description() default ““;
}