問題タブ [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 投票する
3 に答える
1420 参照

spring - Spring-AOPでAbstractFactoryパターンを実装する方法は?

AOPを使用した春ベースのプロジェクトにAbstractFactoryパターンを実装することは、通常のプロジェクトとは異なるはずですか?

0 投票する
8 に答える
83110 参照

java - Spring AOP vs AspectJ

Spring AOPは、フレームワークとしてカスタムJava5アノテーションを使用するため、セキュリティ、ロギング、トランザクションなどのアプリケーション固有のタスクに最適であるという印象を受けています。ただし、AspectJは、よりフレンドリーなデザインパターンのようです。

SpringアプリケーションでSpringAOPとAspectJを使用することのさまざまな長所と短所を強調できる人はいますか?

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

java - java.lang.NoClassDefFoundError: ProceedingJoinPoint

主な顧客向けアプリケーションとバックエンド Web サービスとの間のインターフェースとなる、多数の Web サービス クライアント アプリケーションがあります。これらの Web サービス アプリケーションは、独自の JAXWS スタブ コードを生成して、Web サービスおよび実装コードと直接やり取りし、JAXWS コードとそれを使用する任意のアプリケーションとの間のクリーンなインターフェイスを提供します。ここ数週間、これらに関していくつかの小さな問題がありましたが、それらのほとんどは解決されました。

これらを顧客向けアプリケーションに統合する段階になったとき、主に JDK1.5 と 1.6 の非互換性に焦点を当てた多数の問題に遭遇しました。これらは現在解決されていますが、解決策のない別の問題が発生しています。Web サービス クライアントは AOP を使用して、ヘッダー資格情報、例外処理、スロットリングなどの一般的な設定を行います。

各アスペクトは POJO Bean を参照します。これらの Bean には、org.aspectj.lang.ProceedingJoinPoint のメソッド パラメータ タイプを使用して構成に記述されたメソッドが含まれます。これは、インターセプトしているメソッドの引数を抽出するために使用されます。

これらは、Web サービス クライアントごとに 1 つずつあります (applicationContext-webservicename.xml 内)。この xml ファイルは、パッケージ化された JAR に含まれています。この JAR は顧客向けアプリケーションに含まれ、顧客向けアプリケーションの web.xml によってロードされるメインの applicationContext.xml にインポートされます。

これらの Web クライアントには多数の単体テストがあり、すべて合格しており、個別に問題がないことを証明しています。すべてのサービスが顧客向けアプリケーションに含まれている場合、起動時に java.lang.NoClassDefFoundError: ProceedingJoinPoint 例外が発生します (JDK1.5.0_17 で tomcat 5.5 を使用しています)。

特別な意味がある場合に備えて、java.lang.NoClassDefFoundError の JavaDoc を調べました。JVM がクラスが存在しないと考えているようです。次に、見つからないと主張しているクラス(aspectjrt-1.5.4.jarおよびaspectjweaver-1.5.4.jar)を含むjarを探しました。これらのクラスの重複があるため、各jarを順番に削除して確認しましたまったく同じエラーが発生します。

必要な依存関係がありませんか? この問題の一般的な原因はありますか (昨日これを検索しましたが、あまり見つかりませんでした)。どんな助けでも大歓迎です。

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

java - GWT: サーバー側からロケール情報を取得しますか?

Spring/Hibernate/AOP と共に GWT を使用しています。アスペクトを使用して通知メールを送信しています。私のアスペクトの 1 つで、GWT から現在のロケールを取得して、ローカライズされた電子メールをユーザーに送信できるようにしたいと考えています。クライアント側から GWT Locale データにアクセスする方法はありますか?

ありがとう

0 投票する
10 に答える
164896 参照

java - 特定のアノテーションを持つクラスのすべてのメソッドの@AspectJポイントカット

指定されたアノテーション(@Monitorなど)を使用して、すべてのクラスのすべてのパブリックメソッドを監視したい(注:アノテーションはクラスレベルです)。これの可能なポイントカットは何でしょうか?注:私は@AspectJスタイルのSpringAOPを使用しています。

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

java - ロギングにSpringAOPを使用するのは良い考えですか?

私は現在Springについて読んでおり、AOPの使用に使用される例の1つは、メソッド呼び出しの開始と終了をログに記録することです。

また、AOPを使用するとパフォーマンスに影響を与える可能性があることも読みました。

Spring AOPを使用することは、このタイプのロギングに適していますか?私の理解では、Springは動的AOPを使用しますが、このタイプのAOPには静的AOP(AspectJのような)を使用する方がよいでしょう。

現在、私が働いている会社のコーディングポリシーでは、ばかげた量のロギングが必要です。作成する必要のあるロギングコードの量を減らし、コードの可読性を向上させたいと考えています。

私は間違った木を吠えていますか?

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

spring - Spring MVC アプリケーション - セッション スコープの Bean 値を設定するにはどうすればよいですか

私のアプリケーションでは、ある画面で情報を収集し、次の画面に表示する必要があります。

この情報を、セッションとして設定されたスコープを持つ Bean に保存することを選択しました (最初のデータ収集画面の後に、他のいくつかの画面で使用されます)。

Manager は次のように構成されます。

Bean は次のように構成されます。

そして、私はjspページに出力しています

しかし、ページをロードするたびに値は空ですか?

Bean は正常にロードされているように見えますが、値が入力されていないため、セッション Bean が入力されていないか、Bean がセッション Bean として作成されていないと思いますか?

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

java - Springframework @Transactional を AspectJ で設定する方法

メソッドをトランザクション対応にするために使用したいのですspring-aspectsが、Spring AOP を使用しません (Spring AOP は: で問題なく動作します<tx:annotation-driven/>)。プロジェクトの管理に Maven を使用しています。

私のプロジェクトクラスでコンパイル時の織りを行う方法はありますかTransactional? Mojo の AspectJ Maven Pluginを使用しようとしましたが、良い結果は得られませんでした。

助けてください。

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

spring - AND、OR、および NOT の Spring AOP ポイントカット構文

Spring (バージョン 2.5.6) のポイントカット定義に問題があります。特定のメソッド (以下の例では someMethod) を除いて、クラスへのすべてのメソッド呼び出しをインターセプトしようとしています。

ただし、インターセプターは someMethod に対しても呼び出されます。

それから私はこれを試しました:

しかし、これは有効な構文ではないためコンパイルされません (BeanCreationException が発生します)。

誰でもヒントを教えてもらえますか?

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

spring - カスタムメソッドインターセプターでBean名にアクセスする

データベースで実行されるBeanの名前とメソッドを記述したいので、カスタムインターセプターを作成することにしました。ただし、Bean名にアクセスできません。

ExposeBeanNameAdvisorsが解決策の1つである可能性がありますが、名前を設定するポイントを見つけることができませんでした。

誰かがこれについての考えを持っていますか?どうもありがとう!!