我有一个Servlet
类应该从服务中获取数据并将数据写回 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
到src
文件夹,它工作正常。但我不能移动它,因为 dispatcher-servlet.xml 已经在 WEB-INF 中存在很长时间了,许多其他类都在使用它。dispatcher-servlet.xml
在 Web.xml 中正确声明,它可以正常加载和工作。
唯一的问题是我无法从 servlet 类的 java 代码中加载它。
dispatcher-xml 的位置是 /WebContent/WEB-INF/dispatcher-servlet.xml
非常感谢任何指针或解决方法。谢谢。