Servlet
サービスからデータを取得し、データをサーブレット応答に書き戻すクラスがあります。このservice
クラスは既に spring xml で宣言されています ( dispatcher-servlet.xml
)。だから私はから取得しservice class bean
たいdispatcher-servlet.xml
。
以下のコードを試しました
ApplicationContext context = new FileSystemXmlApplicationContext("classpath:../WebContent/WEB-INF/dispatcher-servlet.xml");
ServiceImpl serviceImpl = (ServiceImpl) context.getBean("service");
以下のコード
ServletContextResource res = new ServletContextResource(getServletContext(),"/WEB-INF/dispatcher-servlet.xml");
ApplicationContext context = new FileSystemXmlApplicationContext("file:"+res.getURL()+"dispatcher-servlet.xml");
ServiceImpl serviceImpl = (ServiceImpl) context.getBean("service");
しかし、これらが投げているものFileNotFoundException
dispatcher-servlet.xml
tosrc
フォルダを移動すると、正常に動作します。しかし、dispatcher-servlet.xml は長い間 WEB-INF に存在し、他の多くのクラスが使用しているため、移動できません。dispatcher-servlet.xml
Web.xml で適切に宣言されており、適切に読み込まれて動作します。
唯一の問題は、サーブレット クラスの Java コードからロードできないことです。
dispatcher-xml の場所は /WebContent/WEB-INF/dispatcher-servlet.xml です。
ポインタや回避策は大歓迎です。ありがとう。