4

struts2に基づく従来の Web アプリケーションが 1 つあります(主にアノテーションを使用)。デバッグ中に、すべての依存関係 (サービス層や dao 層など) が struts 2 アクションに自動的に挿入されることがわかりました。これを行う必要があるスプリングインターセプターが定義されているに違いないと思っstruts.xmlていました。

しかし、そこにはスプリング関連のインターセプターは見つかりませんでした。また、web.xmlこの種の作業を行っているに違いない関連するものは見つかりませんでした。依存関係 ( springを使用) がstruts2アクションにどのように注入されるかわかりません...

struts2-convention-plugin-2.2.3.1.jarクラスパスにファイルが表示されます。filterDispatcher実行時にこのjarを探し、それが見つかった場合は、依存関係を実際に注入するという意味ですか。このプロセス中にインターセプターも役立ちますか?

4

3 に答える 3

4

struts-plugin.xmlのを参照してください。オブジェクト ファクトリと自動配線インターセプターstruts2-spring-plugin-x.x.x.x.jarに関する構成を見つけることができます。これはstruts2のプラグイン機能を使用しており、詳細については Struts ガイドから「プラグイン」を検索できます。

于 2012-06-14T09:00:47.087 に答える
1

Dependency Injection が spring で行われている場合は、spring pluginを確認してください。

そうでない場合、struts2 には独自のDependency Injection 実装
がありますCore Developers Guideをご覧ください

于 2012-06-14T13:49:55.513 に答える
0

アクション クラスの前に実行され、Java リフレクション API または Struts 2 リフレクション ツールを使用してこの依存性注入を行うインターセプターが必要です。 http://struts.apache.org/2.3.4/struts2-plugins /struts2-convention-plugin/apidocs/org/apache/struts2/convention/ReflectionTools.html インターセプタ スタックを確認します。

于 2012-06-14T08:20:03.677 に答える