問題タブ [pointcuts]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
463 参照

java - ポイントカットが適切にフォーマットされていない

このポイントカットのフォーマットの問題は何ですか?

.i追加するのを忘れました:例外は「ポイントカットが整形式ではありません:「名前パターン」(&&の前の最後の閉じ括弧)を期待しています

たとえば、ポイントカットはこのクラスで機能するはずです。

0 投票する
0 に答える
294 参照

spring-aop - Spring AOP アノテーションを使用してデータベース内の挿入または更新をログに記録する方法は?

私のアプリケーションには、次のようなメソッドを持つDAOレイヤーがあります

このような保存または更新メソッドが呼び出されるたびに、AOP アスペクトを実行し、これをデータベースに記録する必要があります。

選択クエリのみを実行するメソッドで aspwect を実行したくありません。

daoパッケージで保存または更新されるメソッドが実行されるときのような私のAOPポイントカットは何ですか?

助けてください

0 投票する
1 に答える
1532 参照

java - 動的ポイントカット式。

これが問題です。私は、あらゆる種類のコンポーネントに拡張できる AOP を使用した監視ソリューションに取り組んできました。私は自分の懸念を領域で打破しようとします。

アイデア:
Spring Bean である型に基づいて動的なポイントカット式の定義を可能にするメカニズムを用意します。

私がしたこと:
ApplicationContextAware を実装するコンポーネントを作成しました。これは、Spring コンテキストを検査し、Pointcut で考慮する必要があるすべての Bean タイプと名前のリストを作成します。

問題:
この問題は、Spring AOP プロセスが既にプロキシされたオブジェクトを作成しているため、この時点で Pointcut を再定義したり使用したりできないことです。

私が試したこと:
• Bean のリストと比較する独自の Pointcut、Advisor、および Advice を実装しましたが、無視されています。
• PointcutFactoryBean を実装しました。これは、すでに宣言されている Advisor に Pointcut を提供するものです。
• すでに宣言されている Pointcut を変更し (beanId に基づいて新しい式を追加)、それを BeanNameAutoProxyCreator に関連付け、Interceptor をこの Pointcut に関連付けようとしました。たとえば、次のようになります。
bean(bean1) || bean(otherBean) など。

これらすべての試みで、私は同じ問題に出くわしました。すべてがすでに定義されており、コンテキストから変更することはできません。

質問:
これは Spring AOP でも可能ですか? ウィービングなど、これに AspectJ の問題を巻き込みたくありません... 要約すると、ポイントカット式を作成し、アプリケーションの起動時にポイントカットに割り当てて、すべての豆を考慮してください。

明確であったことを願っています。そうでない場合はお知らせください。詳細またはコードを提供するために最善を尽くします。

よろしくお願いします!

0 投票する
2 に答える
16930 参照

aop - AspectJ : @Around アドバイスで複数のポイントカットを組み合わせる際の問題

私は AspectJ の初心者ですので、以下のアプローチに従って問題を解決する方法を教えてください。

動作していないときは?3 つのポイントカットすべてを OR で組み合わせると。

それはいつ働いていますか?ポイントカットを 2 つだけ保持すると、機能します。

@aroundアドバイスのルールに違反していますか?複数の実行/ポイントカットを持つことは可能ですか?

答えを期待して...

0 投票する
1 に答える
555 参照

aop - テンプレート クラスの Spring AOP ポイントカットが機能しない

ポイントカットとして次のクラスがあります

そして、それに対して定義された次のアドバイス...

これを実行しようとすると、次の例外エラー メッセージが表示されます。

**

インターフェース javax.ws.rs.ext.ExceptionMapper の型引数が見つかりません

** このクラスによってエラーがスローされてい ます http://grepcode.com/file/repo1.maven.org/maven2/org.jboss.resteasy/resteasy-jaxrs/2.2.2.GA/org/jboss/resteasy/ util/Types.java#Types.getActualTypeArgumentsOfAnInterface%28java.lang.Class%2Cjava.lang.Class%29

RESTEasy コードの一部。

これは、「Spring AOP はテンプレート インターフェイスを実装するポイントカット クラスをアドバイスできない」ためですか? 何か案は?Spring AOP は、パラメータ化されたインターフェースを実装するクラスのプロキシ オブジェクトをどのように作成しますか?...CGLIB または JDK プロキシを使用しますか?

0 投票する
3 に答える
940 参照

java - ポイントカットとワイルドカード式を使用して Bean を作成しようとするとエラーが発生するのはなぜですか?

Spring チュートリアル 28 - ポイントカットとワイルドカード式を練習する と、次の問題が発生します。

以下に私のコードが表示されます。私の問題に対する解決策をいただければ幸いです。

LoggingAspectPointcuts :

AopMainWildCardPointcuts :

springPointcuts.xml :

0 投票する
1 に答える
252 参照

annotations - 名前付きポイントカット注釈と匿名ポイントカット注釈の解像度範囲は異なりますか?

私はAspectJアノテーションを使用していますが、何らかの理由で、ポイントカットの解決範囲が名前付きポイントカットと匿名ポイントカットで異なるようです。

たとえば、以下のコードでは、匿名の場合は同じポイントカットが解決されますが、名前が付けられている場合は解決されません。ただし、特定のタイプの代わりにワイルドカードを使用すると、名前付きポイントカットは一致します。

何かご意見は?

0 投票する
1 に答える
88 参照

statistics - よく使われるポイントカット

一般的な AspectJ と AOP について:
最も使用されているポイントカット プリミティブは何ですか?
これに関する統計はありますか?

私はそれが可能だと思います、そうexecutionですcallか?

ありがとう。

0 投票する
1 に答える
1106 参照

java - JAX-RS アノテーション付き Interface メソッドでの AspectJ Pointcut 呼び出し

JAX-RS @POST で注釈が付けられたインターフェースのメソッドをインターセプトしようとしています。私のポイントカットは、すべての非インターフェースメソッドで機能し、@POST-Annotation が呼び出されたメソッドに直接ある場合に機能します。

インターセプトするインターフェイス メソッド:

メソッドに一致するポイントカット:

インターフェイスはパッケージ com.myapp.social.webapi.v1 内にあり、メソッドを public に変更しても、AspectJ は呼び出しをインターセプトしません。

ポイントカット内で変更することはありますか? どうすればこれを機能させることができますか?