Title: Message Title
|
|
Issue Type: |
Bug |
Affects Versions: |
3.0.0.Final, 3.0.1.Final |
Assignee: |
Unassigned |
Attachments: |
test.zip |
Components: |
Interceptors and Decorators, WildFly integration |
Created: |
10/Aug/17 8:06 AM |
Priority: |
Major |
Reporter: |
Alexander Korsukov |
|
public interface BaseService<T> { |
void setSomething(T param); |
|
T getSomething(); |
} |
|
public abstract class BaseServiceImpl<T> implements BaseService<T> { |
@Override |
public void setSomething(T param) { |
} |
|
@Override |
public T getSomething() { |
return null; |
} |
} |
|
public interface SpecialService extends BaseService<String> { |
@Override |
// for declaring some special annotations |
void setSomething(String param); |
|
@Override |
String getSomething(); |
} |
|
@SomeInterceptorBinding |
public class ManagedSpecialServiceImpl extends BaseServiceImpl<String> implements SpecialService { |
} |
|
@Stateless |
@Local(SpecialService.class) |
@SomeInterceptorBinding |
public class EJBSpecialServiceImpl extends BaseServiceImpl<String> implements SpecialService { |
}
|
- getSomething() - interceptor is not invoked at all.
- Injecting ManagedSpecialServiceImpl as SpecialService - for setSomethig() interceptor is not invoked, moreover setSomethig(Sting) of Weld proxy is bridge method of ManagedSpecialServiceImpl that direct call BaseServiceImpl#setSomethig(Object), so in BaseServiceImpl#setSomethig(Object) we have this = Weld proxy.
- Not reproduced by attached testcase, but in my application, for EJB injection interceptor for setSomethig() also is not invoked.
|
|
|
|
|
|
_______________________________________________
weld-issues mailing list
weld-issues@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/weld-issues