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

嵌套的异常是 java.io.文件不发现异常: 无法打开 Servlet上下文资源 [/Spring/servlet-context.xml]

毋修为
2023-03-14

好了,谢谢帮忙解答最后一个问题。这是我新的错误和下面的代码。错误中的粗体文本是我所关心的,因为这是唯一的错误。

[Thread-36] ContextLoader错误上下文初始化失败org . spring framework . beans . factory . bean definitionstoreexception:io exception从ServletContext资源[/spring/servlet-context.xml]解析XML文档;嵌套异常为java.io.FileNotFoundException:无法打开org . spring framework . beans . factory . XML . xmlbeandefinitionreader . loadbean definitions(xmlbeandefinitionreader . Java:341)在org . spring framework . beans . factory . XML . xmlbeandefinitionreader . loadbean definitions(xmlbeandefinitionreader . Java:302)在org . spring framework . beans . factory . support . abstractbeandeditionreader . loadbean definitions(abstractbeanditionreader...19 more 2013年10月16日7:44:51AM org . Apache . catalina . core . standard Context start internal SEVERE:Error listener start 2013年10月16日7:44:51AM org . Apache . catalina . core . standard Context start internal SEVERE:Context[/mdimgmtsys-1.0-SNAPSHOT]由于以前的错误,启动失败

现在代码

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns="http://java.sun.com/xml/ns/javaee" 
     xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
     version="2.5">


<context-param>
    <param-name>contextAppConfigLocation</param-name>
    <param-value>app-context.xml classpath*:app-context.xml</param-value>
</context-param>
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/spring/servlet-context.xml classpath*:servlet-context.xml</param-value>
</context-param>

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

<!-- Enables Spring Security -->
<filter>
    <filter-name>springSecurityFilterChain</filter-name>
    <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
    <filter-name>springSecurityFilterChain</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<servlet>
    <servlet-name>appServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextAppConfigLocation</param-name>
        <param-value>app-context.xml</param-value>            
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet>
    <servlet-name>contextServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/spring/servlet-context.xml</param-value>

    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>          
<servlet-mapping>
    <servlet-name>appServlet</servlet-name>
    <url-pattern>/</url-pattern>
    <servlet-name>contextServlet</servlet-name>
    <url-pattern>/</url-pattern>        
</servlet-mapping>    
<session-config>
    <session-timeout>
        30
    </session-timeout>
</session-config>        
</web-app>

我所做的一切都无法在Tomcat中启动应用程序。

共有3个答案

桂志新
2023-03-14

我通过将servlet.xml放在正确的位置,即WEB-INF文件夹下,解决了同样的错误。你也可以试试。

浦琪
2023-03-14

正如错误所说,这是servlet上下文的问题。xml文件位置。改变路径,它会很好地工作。

洪雅健
2023-03-14

Spring Web项目中的Application Context和Servlet Context有区别。我们用来配置Application Context,用法与您的用法相同

<context-param>
    <param-name>contextAppConfigLocation</param-name>
    <param-value>classpath:app-context.xml</param-value>
</context-param>

对于Servlet Context,默认Web容器会尝试在WEB-INF目录中找到#servlet-name#-servlet.xml,因此对于您的问题,您需要移动到WEB-INF目录并将其名称更改为相应的名称(contextServlet-servlet.xml,appServlet-servlet.xml)

 类似资料:
  • 消息 说明服务器遇到内部错误(),无法运行 根本原因 根本原因 当我将浏览器用作http://localhost:8080/sample/rest/app/test将返回一个json数据类型。。 产品类 StringService类 StringServiceApplication 我的网络。xml 我的jboss网站。xml 构建路径上的我的库——javassist-3.12.1。GA-json

  • 在eclipse中运行此程序时出现异常。Servlet。servlet示例的init()引发了异常描述服务器遇到了一个内部错误,使其无法满足此请求。

  • 我在尝试使用Maven将servlet部署到Tomcat时遇到了一个问题;我已经在其他帖子中读到了关于这个问题的文章,但仍然不能成功地给出答案/建议。 不管我做什么,我都有一个例外: 这是我的web.xml文件: 以防万一: 我试着重新清洁和建造它,但仍然没有改变;我错过了什么?多谢了。

  • 问题内容: 我已经通过像许多环节去Jedis,无法获取jedis连接:无法从池中获取资源,并不能得到Jedis连接; 无法从池中获取资源,但仍收到以下错误。 我 在Spring Batch中 使用 Spring Data Redis, 并从mysql读取数据并写入 Redis DB。似乎有些连接错误。 下面的错误供参考。 我正在使用以下简单配置。 问题答案: 我在这里发布了答案:无法在10.XX.

  • 问题内容: 考虑这两个python程序: : : 运行。在运行时,启动。两者都将愉快地运行,但是如果当前通过打开文件,则会输出一个空字符串。 我期望会引发异常,告诉我该文件已经打开,但是没有发生,而是文件看起来是空的。为什么会这样?检查它是否已被另一个进程打开的正确方法是什么?可以简单地检查是否返回了空字符串,然后重试直到读取其他内容,或者还有其他更Python化的方法吗? 问题答案: 有关在Py