[英]HTTP Status 404 - not found - Java Spring MVC
我正在尝试使用 XML 配置在 eclipse 上运行我的第一个 Spring MVC 程序,但我的目录上没有错误标记,但我在运行程序时收到此响应。 我还尝试了 Spring java 配置并得到了类似的响应。 漏洞
我使用 eclipse 版本:2021-06 (4.20.0) 和 apache-tomcat-10.0.13 安装在我的设备上,在 http://localhost:8080/ 发送请求,返回 apache-tomcat 安装成功。 到目前为止,我已经尝试了我在网上找到的所有建议,包括更新 maven 项目、maven 构建干净安装、清除文件缓存、删除我的根目录中的临时文件夹更改工作区目录、多次卸载并重新安装 apache-tomcat、清除源中丢失的文件java 构建路径中的目录,但这些方法都没有奏效。 下面是我的程序的截图(XML配置)
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.idevelope</groupId>
<artifactId>spring-mvc</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>Spring MVC</name>
<description>Spring MVC example</description>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-core -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>5.3.14</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.3.14</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.14</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.3.14</version>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>16</release>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.3</version>
</plugin>
</plugins>
</build>
</project>
(查看页面)
主页.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Spring MVC tutorial - Home JSP</title>
</head>
<body>
<h1>Hello World!</h1>
<h4>Message- </h4><span>${message}</span>
<form:form action="showUser" modelAttribute="user" method="post">
<tr>
<td>
<form:label path="firstName">First Name</form:label>
</td>
<td>
<form:input path="firstName" id="firstname" />
</td>
</tr>
<tr>
<td>
<form:label path="lastName">Last Name</form:label>
</td>
<td>
<form:input path="lastName" id="lastname" />
</td>
</tr>
<input type="submit" value="Submit">
</form:form>
</body>
</html>
我需要帮助来修复这个错误。
就我而言,当我搜索互联网时 - tomcat 10 不起作用。 我下载了 tomcat 9 和 404 消失了。 Spring MVC 5 does not work on Tomcat 10. This is because Tomcat 10 is based on Jakarta EE 9 where package names for APIs have changed from javax.* to jakarta.*.
可能缺少*<mvc:annotation-driven/>*注解驱动注入(如Controller、@requestMapping等)导致页面总是提示无法访问相关资源信息
你写,你尝试用 Spring MVC 运行你的第一个 spring 程序。 我没有深入了解您的详细信息,但我会建议两种不同的方法来学习和使用 Spring MVC:
当我尝试新的 spring 零件时,我总是从https://start.spring.io/开始,然后添加我想要的依赖项(按下添加按钮时搜索mvc
)。
在那里定义你的设置后,你可以直接从 web 页面下载一个工作 maven 或一个 gradle 示例作为 ZADC2ZD79A8D84127F 文件解压后的文件可以通过IDE直接导入(如eclipse、intelliJ等)
当您正在搜索一个良好且开箱即用的 MVC 示例时,您应该查看https://spring.io/guides/gs/serving-web-content/
这很好用,您可以直接开始,而不会出现依赖问题等。
尝试将 tomcat jasper 依赖项添加到 pom.xml
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jasper</artifactId>
<version>10.1.0-M5</version>
</dependency>
在添加依赖项之前检查 tomcat 版本
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.