問題タブ [spring-aop]

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 に答える
3347 参照

spring - 春の@Aspectが依存性を注入しない

Maven、Spring、Aspectjを使用したコンパイル時のウィービングを使用しています

私のaspectjアドバイザーはこのように見えます

私のapplicationContext.xmlは次のようになります

logManagerは常にnullです...。

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

java - TomcatによってSESSIONS.serから逆シリアル化された後、@ ConfigurableとマークされたBeanをどのように依存性注入しますか?

注:Java、Spring AOP、Tomcatに精通していない限り、これは意味がありません。

問題は、Tomcat SESSIONS.serによって逆シリアル化されたときに、@ConfigurableとマークされたBeanが注入されないことです。

Spring 2.5.4、spring-tomcat-weaver-2.5.4、Tomcat6.0.14を使用するStruts1.2.9ベースの(レガシー)アプリケーションでこの動作に気づきました。

コード:

XMLは、BarをプロトタイプBeanとして構成します。

正しいcontext:spring-configuredおよびcontext:load-time-weaver設定が適用されます(Tomcatのコールドスタートで機能するため)。

初めて起動するときは、すべて正常に動作します。ただし、Tomcatを再起動すると、SESSIONS.serが書き込まれ、再起動するとMyFormが逆シリアル化されます。ただし、Barの依存関係は設定されていません。

しかし、Tomcatをシャットダウンし、SESSIONS.serファイルを削除して再起動すると、すべてが機能します。

変。

どんなアドバイスも大歓迎です。

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

java - Spring AOP は、特定のメソッドが別のメソッドから呼び出された回数をカウントします

rangeQuery()Spring AOPを使用して、すべてのサブタイプでプロファイリングしようとしているメソッドを備えたインターフェースがあります。特に、への呼び出しについて、本体からフィールドでrangeQuery()別のメソッドを呼び出す回数を知りたいです。distance()

次のように、距離へのすべての呼び出しをカウントするメソッドを記述できることを知っています。

ただし、それはどのrangeQuery()呼び出しがそれを呼び出したかをキャプチャしません。

何か案は?

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

spring - AOPを有効にすると、文字列を受け取るファクトリBeanの依存性注入が中断されます

AOPを有効にすると、文字列を受け取るファクトリBeanの依存性注入が中断されます。

コンテキストファイルのフラグメントは次のとおりです。

これがファクトリービーンです。

宣言されている唯一の側面は次のとおりです。

そしてこれは例外です

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

c# - Hibernate Spring .NETがトランザクションプロキシにアドバイスを追加する

Spring .NET と NHibernate を ASP .NET MVC と共に使用しています。

最近、トランザクション管理を Spring と統合することにしました。Spring は、サービスの [Transaction()] 属性を使用してトランザクションを簡単に統合する方法を提供することを理解しています。これを機能させました。

私の古いアーキテクチャは、AOP を使用してアドバイスを介してサービスへの呼び出しをインターセプトし、このメソッドの呼び出しが許可されているかどうかを確認するものでした。

CALL --> Tx Advice --> Permission Advice --> Service --> execute logic --> Tx Advice 内の Tx のコミット/ロールバック --> End CALL。

これで、サービス メソッドの Transaction() 属性により、Tx アドバイスは不要になりました。

ただし、トランザクションが PermissionAdvice に到達する前に開始されるようにするにはどうすればよいですか。

ファイル: services.xml

ファイル: Dao.xml

古いコード:

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

spring - Spring 宣言型トランザクションと AOP

アプリケーションでの宣言的なトランザクション管理にスプリングを使用することにしました。永続層に休止状態 (独立したスプリング テンプレート アプローチではありません) を使用していますが、スプリングの力を使用してトランザクションの境界を管理したいと考えています。

物事を管理するためにAOPを使用しているため、Transcation管理についてのアイデアを得るためにSpring refrenceの資料を調べていました.ポイントカットとその表現についての基本的なアイデアは得られましたが、SpringのAOPの完全な理解や深い理解は得られませんでした.

私の質問は、Spring の Transcation 管理を使用するために AOP についてどれだけ知る必要があるかということです。なぜなら、私が理解したのは、transcation で重要なのはポイントカット式だけだからです。

ヘルプ/提案は非常に高く評価されます

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

java - エラーが発生する理由/方法:NoClassDefFoundError:org / springframework / aop / framework / ProxyFactory

目標:メソッド呼び出しへのリモートアクセスをサポートするサーバーを起動します。

すべてのサービスが作成されるまで、アプリケーションは失敗しません。

jarはtarget/libディレクトリにあります。

親pomには依存関係があります:

注:次のタイプのSpringBeanを作成できます:org.springframework.aop.framework.ProxyFactory

スタックトレース:

application-context-service-web-server.xml:

注:これは機能しますが、上記は失敗します

0 投票する
4 に答える
11097 参照

java - Spring AOP: 引数名へのアクセスを取得する

Spring 3.x、Java 6 を使用しています。

次のジョインポイントを持つ @Around アスペクトがあります。

したがって、私は基本的に、クラス名が「Connector」で終わるクラスのパブリック メソッドへのすべての呼び出しをインターセプトすることに関心があります。ここまでは順調ですね。

さて、私の観点では、メソッドの実際の引数名にアクセスしたいと思います:

myarganotherArg

私はそれを使用して理解しています:

実際には動作しますが、" -g " フラグ (完全なデバッグ) を指定してコードをコンパイルし、実行したくない場合に限ります。

その種のランタイム情報にアクセスする他の方法はありますか?

ありがとうL

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

java - Spring MVC の Integer (Final クラス) の CGLib プロキシ

私はそのような使用法が必要です:

リクエストごとに userId を DemoController に注入したいのですが、空のコンストラクターのない最終クラスであるため、注入できません。そのような場合のベストプラクティスは何ですか? リクエストスコープのサービスでいいの?

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

java - Spring AOP のサービスでサービスの同じインスタンスを注入する最良の方法は何ですか?

私は、Spring の @Service ステレオタイプで注釈が付けられた ServiceImpl を使用し、Spring によってインターセプトされるカスタム注釈で注釈が付けられた 2 つのメソッドをそれぞれに持っています。

現在、Spring はプロキシ ベースの AOP アプローチを使用しているthis.method1()ため、@CustomAnnotation にインターセプターを使用しているため、この呼び出しをインターセプトできません。以前は、このサービスを別の FactoryClass に注入していたため、次のようなプロキシ インスタンスを取得できました -

現在、Spring 3.0.x を使用していますが、プロキシ インスタンスを取得する最良の方法はどれですか?