Esta regla señala valores @Target distintos de ElementType.TYPE en anotaciones
personalizadas que cumplen las condiciones siguientes:
@InterceptorBinding.@Interceptor.A continuación se indican las anotaciones de interceptor de ciclo de vida:
El ejemplo siguiente no cumple con la especificación de Java EE 7 CDI (Contexts and Dependency Injection) 1.2 pero se toleraba en la implementación de CDI 1.0, que se basa en la implementación de Apache OpenWebBeans. En CDI 1.2, que se basa en la implementación de Weld, la aplicación no se inicia.
@InterceptorBinding @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.TYPE, ElementType.METHOD}) public @interface MyIInterceptorBinding {}
@Interceptor @MyIInterceptorClase pública de enlace MyIInterceptor {
@PostActivate
void postActivate (InvocationContext inv)
@PreDestroy
void preDestroy (InvocationContext inv)
}
Para resolver este problema, elimine ElementType.METHOD de la anotación @Target
y elimine todas las referencias a la anotación en los métodos de aplicación.
Si se especifica
algún tipo de elemento distinto de ElementType.TYPE, también deben eliminarse.
Para obtener más información sobre la implementación de EE 7 CDI 1.2, consulte Cambios de comportamiento de Contexts and Dependency Injection 1.2.