Bir avcı bağlama arayüzü ile bir günlükçü önleme tanımlamak çalışıyorum:post yapım yöntemleri için @Target ({METOD, TYPE)) ile interceptor ciltleme arabirimini kullanamaz mı?
@Inherited
@InterceptorBinding
@Retention(RUNTIME)
@Target({METHOD, TYPE})
public @interface OperationLogger {
@Nonbinding
public String operationName() default "";
@Nonbinding
public String details() default "";
}
ama glassfish 4.1 getiri derlemesinde bu hata iletisi: yaşam döngüsü geri aramaları keseni [sınıf com için
bir avcı. adldoost.dwm.security.interceptor.OperationLoggerInterceptor , @OperationLogger] 'ı kestirir ve kesişme önleyici arabirimi com.adldoost.dwm.security.interceptorbinding.OperationLogger , METHOD ile birlikte @Targ ve.
da 8.1 düzenleyici anlatır NetBeans'i: yaşam döngüsü geri aramalar için
bir önleme sadece @Target (TYPE) olarak tanımlanır önleme bağlayıcı tipleri ilan edebilir. Interceptor com.adldoost.dwm.security.interceptor.OperationLoggerInterceptor , uyumsuzluk önleyici bağlayıcısını com.adldoost.dwm.security.interceptorbinding.OperationLogger olarak bildirir.
Peki benim hatam nedir?
Hedefim şu şekilde ayarlandı: @Target ({METOD, TYPE}) sadece yöntem değil! sadece TYPE olarak değiştirmem gerekiyor mu? –
Dediğim gibi, sadece @ @ Taretle (TYPE) ile bağlayıcınıza not ekleyin veya sınıfınıza "OperationLogger" eklemeyin ve yaşam döngüsü geri çağırma yöntemleri. – andrepnh