繁体   English   中英

HTTP 状态 404 - 未找到 - Java Spring MVC

[英]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>

web.xml

调度程序-servlet.xml

controller

用户.java

(查看页面)

主页.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>

用户.jsp

我需要帮助来修复这个错误。

就我而言,当我搜索互联网时 - 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 初始化程序 web 网站

当我尝试新的 spring 零件时,我总是从https://start.spring.io/开始,然后添加我想要的依赖项(按下添加按钮时搜索mvc )。

在那里定义你的设置后,你可以直接从 web 页面下载一个工作 maven 或一个 gradle 示例作为 ZADC2ZD79A8D84127F 文件解压后的文件可以通过IDE直接导入(如eclipse、intelliJ等)

官方Spring MVC教程

当您正在搜索一个良好且开箱即用的 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM