当前位置: 首页 > 知识库问答 >
问题:

更改dispatcher-servlet.xml的位置不起作用

华佐
2023-03-14

在web.xml中已经将dispatcher servlet的位置定义为context-param中的[/web-inf/config/dispatcher-servlet.xml],这仍然是它查找[/web-inf/dispatcher-servlet.xml]的原因。

在[/web-inf/config/dispatcher-servlet.xml]和[/web-inf/dispatcher-servlet.xml]上使用dipatcher-servlet时,这将起作用,然后只有它才起作用。

它是怎么做出这样的行为的?如果将其当前位置更改为[/WEB-INF/CONFIG/Dispatcher-Servlet.xml],为什么还要在这个[/WEB-INF/Dispatcher-Servlet.xml]位置进行搜索?

web.xml

<servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>  

    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/config/dispatcher-servlet.xml,
            /WEB-INF/config/spring-security.xml,
            /WEB-INF/config/database-config.xml
        </param-value>
    </context-param>

错误:

May 01, 2016 3:55:49 AM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring FrameworkServlet 'dispatcher'
2016-05-01 03:55:49 INFO  DispatcherServlet:488 - FrameworkServlet 'dispatcher': initialization started
2016-05-01 03:55:49 INFO  XmlWebApplicationContext:578 - Refreshing WebApplicationContext for namespace 'dispatcher-servlet': startup date [Sun May 01 03:55:49 IST 2016]; parent: Root WebApplicationContext
2016-05-01 03:55:49 INFO  XmlBeanDefinitionReader:317 - Loading XML bean definitions from ServletContext resource [/WEB-INF/dispatcher-servlet.xml]
May 01, 2016 3:55:49 AM org.apache.catalina.core.ApplicationContext log
SEVERE: StandardWrapper.Throwable
org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from ServletContext resource [/WEB-INF/dispatcher-servlet.xml]; nested exception is java.io.FileNotFoundException: Could not open ServletContext resource [/WEB-INF/dispatcher-servlet.xml]
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:344)
    at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
    at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)

共有1个答案

姜杜吟
2023-03-14

您已经定义了Dispatcher servlet,如下所示:

<servlet>
   <servlet-name>dispatcher</servlet-name>
   <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
   <load-on-startup>1</load-on-startup>
</servlet>

因此,默认情况下,它将在类路径(servlet名称后加上'-servlet.xml')中查找dispatcher servlet文件(dispatcher-servlet.xml)。

您已经定义了dispatcher-servlet.xml,但将其保存在/web-inf/config/的位置下。因此,为dispatcher servlet 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/conf/dispatcher-servlet.xml
        </param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
 类似资料:
  • 问题内容: 我正在尝试将ID为“ absPos”的div相对于其父div放在绝对位置。但它不起作用,div放置在页面的左上角。 我的代码示例如下 您能帮我解决这个问题吗?在我的实际情况下,我必须放置背景图像,而不是红色背景色。 问候 问题答案: 绝对定位的元素从其最近的祖先开始定位。在您的代码中,祖先都不是“定位”元素,因此div从body元素(即)偏移。 解决方案是将其应用于父div,这迫使它成

  • 我有一个小的测试页面设置来测试我有的一个sprite表。中的每个sprite如下所示... 我的页面是这样的... null null 在循环过程中,我记录了类名,可以看到它的变化,并且这些名称对应于我的样式表中存在的类。和都在images文件夹中,并且images文件夹与我的页面位于同一目录中。 如果我只是从我的样式表中复制一个规则并将其直接放到我的页面上,并将名称替换为以进行测试,我就可以显示

  • 我正在尝试以编程方式更改页面。这第一行代码正在工作,但我不需要它延迟,所以我尝试了第二行,但它不起作用。我错过了什么? 工作(但我不想延迟): 不工作: 我在<代码>中调用它

  • 我正在尝试更改一个JLabel的图标(背景),但我有一个问题,图标没有更新。每当我尝试更改main方法中的JLabel时,编译器首先抱怨变量不存在,所以我将它从JFrame初始化方法移到了类级变量。在此之后,Eclipse抱怨我试图从静态上下文引用一个非静态方法,因此我将设置为静态的。这使得程序可以编译,但是图标并没有在任何时候改变。 由于很难理解我的问题,这里提供了一个Eclipse工作区的下载

  • 我的web.xml 我的调度器-servlet.xml 然后这个 编辑2 我创建了新的clean Spring MVC项目,但问题仍然存在。我想问题可能出在Weblogic上,我会试着重新安装它