問題タブ [interceptor]
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.
java - EJB3 インターセプター
EJB3.0 でセッション Bean などにインターセプターを適用する方法を調べています。これらはサーブレットにも適用できますか?
struts - Struts1.3のStrutsアクション呼び出しフレームワーク
ストラットアクションをインターセプトするためにSAIFプラグインを統合しようとしています。私はhttp://struts.sourceforge.net/saif/index.htmlから学びます
私はこのような構成を書きました:struts-config.xml
インターセプター-config.xml
次のようなエラーが発生しました:
この問題を解決するのを手伝ってもらえますか?
structuremap - ストラクチャーマップで傍受を行う
構造マップを使用して属性ベースのインターセプトを実行しようとしていますが、最後のルーズエンドを拘束するのに苦労しています。
アセンブリをスキャンするカスタムレジストリがあり、このレジストリで次のITypeInterceptorを定義しました。その目的は、指定された属性で装飾されたタイプを照合し、照合された場合はインターセプターを適用することです。クラスは次のように定義されます。
Castle.CoreのDynamicProxyを使用してインターセプターを作成していますが、問題は、CreateInterfaceProxyWithTarget(...)呼び出しから返されたオブジェクトが、構造マップでターゲットインスタンスの作成をトリガーしたインターフェイス(つまり、IOrderProcessor)を実装していないことです。上記の例では)。IContextパラメーターがこのインターフェースを明らかにすることを期待していましたが、具体的なタイプ(つまり、上記の例ではOrderProcessor)を把握することしかできないようです。
ProxyGeneratorを呼び出して、すべてのインターフェイスをターゲットインスタンスとして実装するインスタンスを返すか、構造マップから要求されたインターフェイスを取得するか、その他のメカニズムを使用して、このシナリオを機能させる方法についてのガイダンスを探しています。
dependency-injection - ウィンザーインターセプターの例外
InterceptorSelectorとLazyComponentLoaderを使用しているWindsorコンテナがあります。
私のInterceptorSelectorは、次のようなInterceptorAdapterクラスにInterceptorReferenceを返します。
したがって、InterceptorSelectorは
InterceptorSelectorがInterceptorReferenceを初めて返すときは、うまく機能します。次回、InterceptorReferenceを別のジェネリック型引数を持つInterceptorAdapterに返すと、次のようになります。
私のLazyComponentLoaderは単純に
私のコンテナのセットアップは次のようになります
助言がありますか?
ありがとう!
jakarta-ee - CDI: 異なるモジュール / bean アーカイブでインターセプターを使用する
私の Java EE 6 アプリケーションは、ear ファイルにパッケージ化された war と ejb モジュールで構成されています。DI に CDI を使用しています (つまり、両方のモジュールに beans.xml ファイルがあります)。war モジュールの ejb モジュールで定義されているロギング インターセプタも使用したいと考えています。ejb の beans.xml でインターセプターを有効にしました。
これは、 ejb モジュールのインターセプタで注釈が付けられたクラスに対してのみ機能します。war モジュールのクラスはインターセプトされません (ただし、インターセプターのアノテーションも付けられます)。解決策は、戦争のインターセプターでもインターセプターを有効にすることだと思いました(上記のように)。ただし、次のメッセージが表示されてアプリケーションをデプロイできません。
SEVERE: アプリのロード中に例外が発生しました: WELD-001417 有効なインターセプター クラス クラス com.test.interceptor.LoggingInterceptor は、@Interceptor に注釈が付けられておらず、ポータブル拡張機能を介して登録されていません
私の LoggingInterceptor は次のようになります。
そしてインターセプターバインディング:
両方のモジュールにインターセプターを使用するにはどうすればよいですか?
castle-windsor - Castle.Core.InterceptorAttribute がインターセプターを注入しない
Castle.Core.InterceptorAttributeのドキュメントに基づいて、この単純なテストに合格しようとしていますが、うまくいきません:
テストのステップ実行でinstance
は、プロキシではなく、get()
「From Service」を返します。この場合、仮想にする必要はないように思えますが、get()
念のためそうしました。コンテナーに Interceptor 属性を認識させるためにここに登録する必要がある機能はありますか? その趣旨のドキュメントは見つかりません。誰かが私が間違っていることを教えてもらえますか?
Castle バージョン 2.5 と .Net Framework の 4.0 バージョンを使用しています。
sql - 生成された SQL ステートメントを変更するためのカスタム NHibernate エンティティ パーシスタ
私が必要とするのは、DB ビュー (挿入不可) からエンティティを作成し、すべてのエンティティを更新可能な DB テーブルに更新することです。
- エンティティをテーブルにマッピングし、ビューからカスタム ロード SQL を記述することはオプションではありません。これは、NHibernate がまだテーブル名から選択しようとする場合があるためです (たとえば、このエンティティに参加する場合)。
- エンティティをビューにマッピングしてカスタム データ変更クエリを作成することはオプションではありません。クロスデータベースの sql-insert ステートメントを作成できないためです (最後に挿入された ID 値の選択部分のため)。
今のところ思いついた唯一のアイデアは、生成された SQL ステートメントをオンザフライで変更することです。カスタムインターセプターでなんとかできましたが、それは良い考えではないと思います(他のエンティティであっても、すべてのクエリをインターセプトするため)。ただし、 custom を使用して必要なクエリのみを変更できるようにすることは可能であると思いますIEntityPersister
。に基づいて作成しSingleTableEntityPersister
、 で指定しました<class persister="…">
が、NHibernate はそれをインスタンス化することさえ望んでいません。
NHibernate 用のカスタム エンティティ パーシスタを作成する例はありますか?
jms - jmsメッセージインターセプター
JavaアプリとActiveMQキューに出入りするメッセージをインターセプトする方法はありますか?
私が利用できるオープンソースユーティリティはありますか?
ありがとうダミアン
exception-handling - Interceptor を追加した後、Struts2 アプリケーションが例外を非表示にする
だから私は取り組んでいるStruts2アプリケーションを持っています。フロント ページには、アプリケーションがスローする例外を表示するセクションがあります。カスタムインターセプターを追加するまで、これはうまくいきました。
これが私のインターセプターコードです:
これは、例外が生成される Action クラスのコードです。AuthService.Authorize() が呼び出される場所で発生します。
これは AuthService.Authorize() の内部にあり、acc にアクセスすると null ポイント例外がスローされます。
ただし、ページがロードされたとき。これは入力されていません:
私はそれをテストしましたが、単純に Action クラスから例外をスローした場合に機能します。私はredirectActionなどを呼び出していません
これは、他のすべてのパッケージが拡張するデフォルトのパッケージ定義の先頭です
rest - Spring Interceptor で http 応答ステータス コードを確認するにはどうすればよいですか?
HttpServletResponse
に渡されたパラメーターHandlerInterceptor#postHandle
は書き込み専用のようです。そこにはgetStatus()
メソッドがありません。
HttpStatus
リクエスト後に設定されたものを見つける方法について何か考えはありますか?