2016-09-28 10 views
0

Javaアプリケーションでは、コマンドの呼び出しをインターセプトしたいと考えています。すべてのコマンドクラスには、Commandで終わる名前と、コマンドを実行するために呼び出されるメソッドpublic void run(...)があります。@Aroundアドバイスがトリガーされていない

私は@Around("execution(void *.*Command.run(..))")とさまざまなバリエーションを試しましたが、私はそれを引き起こすことができません。

私のアプリケーションには他のポイントカットがありますが、それはAspectJの設定上の問題ではありません。

答えて

1

おそらくsomethingではなくorg.company.application.domainのようなパッケージ名があります。あなたのポイントカットは後者を仮定します。サブパッケージがどの程度深く入れられていても、クラスとのマッチングを行うには、ダブルドット表記..を使用する必要があります。

@Around("execution(void *..*Command.run(..))") 
関連する問題