2

次のように定義されたEJBインターセプターを持つWeblogic 10.3のEJBがあります。

@Stateless(name="MyEJB")
@Interceptors ({AuditInterceptor.class})
public class MyEJBImpl extends BaseEJB implements MyEJB 

インターセプターのアドバイスが EJB の特定のメソッドにのみ適用されているように見えます。インターセプターで @AroundInvoke アノテーションを使用しています。なぜこれが起こるのかについてのアイデアはありますか?

4

1 に答える 1

2

これは実際には Weblogic 10.3 のバグのようです。何が起こっているのかというと、MyEJB インターフェイスにはインターセプトされているメソッドがいくつかありましたが、そのインターフェイスは別のインターフェイスを拡張しており、スーパー インターフェイスで定義されたメソッドはインターセプトされていませんでした。すべてのメソッド定義を MyEJB インターフェースに移動し、インターフェースの継承を削除したところ、すべてのメソッドが期待どおりにインターセプトされるようになりました。

于 2009-06-11T20:43:00.083 に答える