0

我正在尝试使用 ClassPathXmlApplicationContext 类读取 spring xml,如下所示。

    ApplicationContext context = new ClassPathXmlApplicationContext("file:../WebContent/WEB-INF/dispatcher-servlet.xml");
    Service service = (Service ) context.getBean("service");

但我收到 FileNotFound 异常。dispatcher-servlet.xml 位于 WebContent/WEB-INF/dispatcher-servlet.xml 下。如果我将文件移动到 Src 文件夹,它工作正常。

我尝试了不同的方式,比如

    ApplicationContext context = new ClassPathXmlApplicationContext("classpath:../WebContent/WEB-INF/dispatcher-servlet.xml");

 ApplicationContext context = new ClassPathXmlApplicationContext("/WEB-INF/dispatcher-servlet.xml");

但这些都行不通。有人可以提供一些输入。

4

2 回答 2

1

来自Spring 文档

ApplicationContext ctx = new FileSystemXmlApplicationContext("conf/appContext.xml");
于 2013-11-12T22:51:35.127 回答
0

在你的 web.xml 中试试这个:

<servlet>
    <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>WEB-INF/dispatcher-servlet.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

或者ServletContextResource,如果您需要在代码中执行此操作,请使用。见这里

于 2013-11-12T23:03:34.420 回答