1

com.sun.xml.ws.transport.http.servlet.WSSpringServlet(JAX-WS RI Spring プラグイン)を使用して JAX-WS Web サービスをデプロイするアプリケーションを開発しています。アプリケーションは、エンドポイント クラス (注釈付き@WebService) が 1 つまたは複数のサービスを呼び出し、そのサービスが DAO を呼び出すようにセットアップされています。

エンドポイント クラスで Bean のオートワイヤリングが機能してサービス レイヤーをプルするように見えますが、サービス レイヤーで注釈が付けられたもの@Autowiredは、DAO をプルするために機能していません。このアプリケーションのみをDisptacherServlet使用して他の Web コンテンツをホストしていないため、Spring をロードしていません。ContextLoaderListenerWSSpringServlet

アプリケーション内のすべてのクラスで自動配線を機能させる方法はありますか? または、Web サービスのデプロイを検討すべき別の方法はありますか?

さらに、これは他の状況でも適用される問題のようですDispatcherServlet。たとえば、Spring-Quartz 統合を使用します。Spring が管理する Quartz ジョブで自動配線を試みたことはありませんが。

4

1 に答える 1

0

したがって、多くの調査 (および私の側で髪を引っ張る) の結果、全体の問題は PICNIC ではないという結論に達したようです。基本的に開発の早い段階で、サービスのインスタンスを配線するのではなく、インラインで作成するだけのテスト用のコード行を配置しました。明らかに、Spring はクラスを管理して何も自動配線しませんでした。インラインのインスタンス化を削除し、 autowired インスタンスで問題が修正されました。

  *facepalm*
  *facepalm*
  *facepalm*
于 2012-09-04T21:17:15.050 に答える