JAX-RS @POST で注釈が付けられたインターフェースのメソッドをインターセプトしようとしています。私のポイントカットは、すべての非インターフェースメソッドで機能し、@POST-Annotation が呼び出されたメソッドに直接ある場合に機能します。
インターセプトするインターフェイス メソッド:
@POST
Response postToConnector(@Context CallContext callContext, String contentStream) throws Exception;
メソッドに一致するポイントカット:
@Pointcut("call(@(javax.ws.rs.DELETE || javax.ws.rs.GET || javax.ws.rs.HEAD || javax.ws.rs.OPTIONS || "
+ "javax.ws.rs.POST || javax.ws.rs.PUT) public * org.myapp..webapi..*(..))")
public void anyPublicWebApiPointcut()
{
...
}
インターフェイスはパッケージ com.myapp.social.webapi.v1 内にあり、メソッドを public に変更しても、AspectJ は呼び出しをインターセプトしません。
ポイントカット内で変更することはありますか? どうすればこれを機能させることができますか?