Java @带有枚举方法的拦截器接口只返回默认值

Java @带有枚举方法的拦截器接口只返回默认值,java,jakarta-ee,annotations,cdi,interceptor,Java,Jakarta Ee,Annotations,Cdi,Interceptor,我有下列情况 拦截器接口 @Inherited @InterceptorBinding @Documented @Target({ ElementType.TYPE, ElementType.METHOD }) @Retention(RetentionPolicy.RUNTIME) public @interface IErrorHandlerInterceptor { Car tyre() default Car.FOUR; } 枚举类 public enum Car{

我有下列情况

拦截器接口

@Inherited
@InterceptorBinding
@Documented
@Target({ ElementType.TYPE, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
public @interface IErrorHandlerInterceptor {
    Car tyre() default Car.FOUR;
}
枚举类

 public enum Car{
        FOUR,FIVE;
    }
@ErrorHandlerInterceptor(tyre= Car.FIVE)
public List<?> getCarByName(String name) {
    ----------
    return List<?>;
}
EJB无状态类

 public enum Car{
        FOUR,FIVE;
    }
@ErrorHandlerInterceptor(tyre= Car.FIVE)
public List<?> getCarByName(String name) {
    ----------
    return List<?>;
}
现在我的问题是:

每当我调用
String tyresNumber=ei.tyre().toString()它只返回我在接口声明中设置的默认值

我做错了什么? 我忘了什么吗

谢谢你的帮助

这个答案对我很有帮助

IErrorHandlerInterceptor ei = getClass().getAnnotation(IErrorHandlerInterceptor.class);
getClass().getAnnotation(…)
错误。正确的调用必须来自上下文

IErrorHandlerInterceptorei = context.getMethod().getAnnotation(IErrorHandlerInterceptor.class);