問題タブ [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 に答える
728 参照

java - 春-宣言型トランザクション管理のロールバック中に情報を収集する方法

@Transactionalメソッド内でSQLやその他の例外をキャッチすることが安全で推奨されているかどうか、誰か教えてもらえますか?プログラムによるトランザクション管理を使用すると、例外をキャッチしてやりたいことが何でもできますが、ロールバックをトリガーするこれらの例外をキャッチしてトランザクションAOPシステムを壊さないかどうかはわかりません...宣言的な方法で行います。

AOPアドバイスの@Transactionalメソッドに個別の接続を使用して論理トランザクションを作成するプロキシがあると思います。そして、「キャッチしたい」という例外をキャッチして、トランザクションをロールバックする必要があります。

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

java - Spring AOP で Web セッションを取得する方法

Spring AspectJ の使用について質問があります。ユーザーが何かを行ったときに監査ログを作成し、Web セッションからユーザー情報を取得して監査ログを作成したいと考えています。誰でもこれを行う方法の例を提供できますか?

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

java - spring 3.0 aopポイントカットが整形式ではありません:「名前パターン」エラーが予想されます

以下は私のポイントカットとアドバイスの宣言です

次のエラーが発生します

これで立ち往生している、任意のポインタ

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

java - アドバイスとしての HibernateInterceptor の自動配線

HibernateInterceptor をアドバイスとして使用しようとしており、自動配線しようとしています。

コードは次のとおりです。

以下は私のXMLマッピングです。

hibernateInterceptop をチェックすると、取得するのは NULL だけです :(...休止状態のインターセプターを自動配線できない理由がわかりません

何か案は?御時間ありがとうございます。

乾杯、J

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

java - Springaopトランザクションがトランザクションをコミットしていません

Apache Tomcat6.0.29でSpring3.0.3、MyBatis 3.0.2、mybatis-spring1.0.0を使用しています。

トランザクション管理には、春の宣言型トランザクションを使用しました。問題は、トランザクションが機能していないことです。トランザクションは1回だけ機能し、その後は何も機能しません。

私はすべての設定をチェックしようとしましたが、手がかりはありません。ポインタはありますか?

私の構成は次のようになります-

コメント後に編集-------------

サーバーを起動してトランザクション機能を実行しますが、機能する場合と機能しない場合があります。時々それは5-6回働き続け、そして突然それは止まります。

TXマネージャーとDS構成-

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

java - Spring AOP (AspectJ スタイル) でメソッド属性にアクセスするにはどうすればよいですか?

注釈をポイント カットとして使用して、いくつかのメソッドとその属性をインターセプトする必要がありますが、これらのメソッド属性にアクセスするにはどうすればよいでしょうか。メソッドが実行される前にコードを正常に実行できる次のコードがありますが、これらの属性にアクセスする方法がわかりません。

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

aop - スキャンするクラスが多すぎて、メソッドキャッシュがメモリをいっぱいにする側面

私たちのアプリケーションには、いくつか(実際には多く、約30)のWebサービスがあります。各Webサービスは独自のWARファイルに常駐し、アプリケーションの起動時に初期化される独自のSpringコンテキストを持っています。

また、Webサービスクラスに適用するアノテーション駆動型のアスペクトクラスもいくつかあります。最初のpoincut式は次のようになりました。

また、AOPは、構成への入力を通じてサービスで有効になりました。

しかし、Webサービスの数が増えるとOutOfMemoryException、サーバーでsを経験し始めました。いくつかのプロファイリングと分析を行った後、AspectJExpressionPointcutクラスのインスタンスによって保持されているキャッシュによってメモリが使用されているように見えました。

各インスタンスのキャッシュは約5MBでした。また、3つの側面と30のサービスがあるため、合計で450MBのデータを保持する90のインスタンスが生成されました。

キャッシュの内容を調べたところ、my.package.service.businessパッケージの一部ではないクラスも含め、WARに存在するすべてのクラスのJavaリフレクションメソッドインスタンスが含まれていることがわかりました。ポイントカット式を変更して、追加のwithin句を追加した後:

メモリ使用量は再び通常に低下しました。そして、すべてのAspectJExpressionPointcutインスタンスは、全体で1MB未満しかかかりませんでした。

誰かがそれがなぜであるか説明できますか?そして、なぜ最初のポイントカット式では不十分なのですか?のキャッシュがAspectJExpressionPointcut共有されないのはなぜですか?

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

java - Spring AOP が Tomcat および tcserver で機能しない

単体テストまたはスタンドアロン アプリケーションから実行すると正常に動作する側面があります。ただし、Web アプリケーションの一部として実行し、Tomcat でホストすると、アスペクトは適用されません。

私の側面は次のように見えます

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

spring - tomcatでロード時間ウィービングが有効になっている場合、spring tx:annotation-drivenはモードを無視します

アノテーションを使用してトランザクションを構成しようとしています。ロードタイムウィービングが有効になっている環境(たとえば、ウィービングクラスローダーを使用したtcサーバーまたはtomcat)で実行している場合、トランザクションインターセプトはaspectjによって処理されているようですが、完全に構成されていないため、機能しません(Iメッセージを取得します"Skipping transactional joinpoint [<method name>] because no transaction manager has been configured")。

私の設定は述べてい<tx:annotation-driven mode="proxy" transaction-manager="transactionManager" />ます。とにかくこれらはすべてデフォルトであるはずですが、私は明示的にプロキシモードを指定し、aspectjモードを取得しています。モードaspectjに切り替えると機能しますが、本番環境ではLTWが有効になっていないため、どこでもモードプロキシを使用したいと思います。

何が起こっているのか分かりますか?私はSpring3.0.5を使用しており、を使用していHibernateTransactionManagerます。

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

java - Spring Java 構成コンテキストのトランザクション構成

私はこれに数時間苦労しています。

Spring XML 構成を完全な Java ベースの構成に移行しようとしています。

AnnotationConfigApplicationContextコンテキスト実装として使用しています。

古い XML 構成から、この行に相当する Java を見つけるのに苦労しています。

その結果、Spring はトランザクションを管理しません。

私の Java 構成では、トランザクションに関連する Bean (セッション ファクトリ、トランザクション マネージャーなど) を初期化しましたが、その行がないと、トランザクション プロキシが使用されないため、実際にはトランザクションは行われません。

したがって、私の質問は、その行を Java コンテキスト構成にどのように変換するか、または別の方法で問題を解決する方法です。

どんな助けでも大歓迎です。ありがとう。