java - Web应用程序无法获取资源

标签 java eclipse spring maven

我正在尝试使用 Maven 和 Spring 在 Eclipse 中构建应用程序。

我的应用程序中的一切似乎都构建得很好,但是一旦我部署它,我就会收到以下错误消息:

org.springframework.beans.factory.BeanDefinitionStoreException:从 ServletContext 资源解析 XML 文档时发生 IOException [/src/main/resources/springWeb.xml];嵌套异常是java.io.FileNotFoundException:无法打开ServletContext资源[/src/main/resources/springWeb.xml]

我已经尝试了一切方法来更改 web.xml 文件中的参数值,但没有任何效果。

这是我的 web.xml 文件

<?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
	<display-name>Olympus</display-name>
 
	<servlet>
		<servlet-name>springLoginApplication</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>contextConfigLocation</param-name>
			<param-value>src/main/resources/springWeb.xml</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>
	
 	<servlet-mapping>
   		<servlet-name>springLoginApplication</servlet-name>
      	<url-pattern>/</url-pattern>
   </servlet-mapping>
  
</web-app>

这是我的 springWeb.xml

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="
   http://www.springframework.org/schema/beans
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/context
   http://www.springframework.org/schema/context/spring-context-3.0.xsd">

	<context:component-scan base-package="org.olympus" />

	<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
      <property name="prefix" value="/views/" />
      <property name="suffix" value=".jsp" />
   </bean>
	
	<import resource="springBeanConfiguration.xml"/>
	
</beans>

这是我的文件夹结构

enter image description here

最佳答案

以下配置应该适合您。使用类路径引用 src/main/resources 下的 xml 资源类路径:springWeb.xml

    <servlet>
        <servlet-name>springLoginApplication</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springWeb.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

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

关于java - Web应用程序无法获取资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36754509/

相关文章:

java - 链表和 jFrames

java - 使用.sh文件执行java程序时出错

java - 在 Eclipse 4.6 Neon 中使用注释处理器

java - hibernate : Update many-tomany intermediary table on Delete

java - java.io.Serializable 的 C/C++ 等价物是什么?

ruby-on-rails - 如何在 eclipse aptana 插件中调试 ruby​​ on rails

java - 为什么建议像项目一样用SWT配置一个Eclipse Java项目?

java - 如何在 spring boot 中跳过失败的 beans 以避免 reportFailure :771 >> Application startup failed

spring - 在 HttpSession 中存储 MultipartFile

java - 未能执行目标 org.codehaus.mojo :tomcat-maven-plugin:1. 1:deploy (default-cli)