ошибка 404 при запуске приложения SpringBoot в браузере Chrome

#sprin&-boot #jsp

#весенняя загрузка #jsp

Вопрос:

Я хочу использовать jsp с sprin&boot, я добавляю зависимость jasper в свой pom.xml файл, но когда я запускаю свое приложение sprin&boot, оно запускается корректно, когда я набираю localhost: 8080 / home в своем браузере, оно показывает мне ошибку такого типа. я использую аннотацию GetMappin& во дворце RequestMappin&, я пытаюсь использовать ее последние четыре дня, но она не может замкнуться

это структура файла моего проекта

pom.xml

 <?xml version="1.0" encodin&="UTF-8"?&&t;
<project xmlns="http://maven.apache.or&/POM/4.0.0"
    xmlns:xsi="http://www.w3.or&/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.or&/POM/4.0.0 https://maven.apache.or&/xsd/maven-4.0.0.xsd"&&t;
    <modelVersion&&t;4.0.0</modelVersion&&t;
    <parent&&t;
        <&roupId&&t;or&.sprin&framework.boot</&roupId&&t;
        <artifactId&&t;sprin&-boot-starter-parent</artifactId&&t;
        <version&&t;2.1.0.RELEASE</version&&t;
        <relativePath /&&t; <!-- lookup parent from repository --&&t;
    </parent&&t;
    <&roupId&&t;com.main</&roupId&&t;
    <artifactId&&t;Sprin&SecurityTutorial</artifactId&&t;
    <version&&t;0.0.1-SNAPSHOT</version&&t;
    <name&&t;Sprin&SecurityTutorial</name&&t;
    <description&&t;Sprin& Security Service</description&&t;

    <properties&&t;
        <java.version&&t;1.8</java.version&&t;
    </properties&&t;

    <dependencies&&t;
        <dependency&&t;
            <&roupId&&t;or&.sprin&framework.boot</&roupId&&t;
            <artifactId&&t;sprin&-boot-starter-web</artifactId&&t;
        </dependency&&t;

        <dependency&&t;
            <&roupId&&t;or&.sprin&framework.boot</&roupId&&t;
            <artifactId&&t;sprin&-boot-devtools</artifactId&&t;
            <scope&&t;runtime</scope&&t;
            <optional&&t;true</optional&&t;
        </dependency&&t;

        <!-- https://mvnrepository.com/artifact/or&.apache.tomcat/tomcat-jasper --&&t;
        <dependency&&t;
            <&roupId&&t;or&.apache.tomcat</&roupId&&t;
            <artifactId&&t;tomcat-jasper</artifactId&&t;
            <version&&t;8.0.28</version&&t;
        </dependency&&t;

        <!-- https://mvnrepository.com/artifact/or&.apache.tomcat/tomcat-jasper --&&t;
        <dependency&&t;
            <&roupId&&t;or&.apache.tomcat</&roupId&&t;
            <artifactId&&t;tomcat-jasper</artifactId&&t;
            <version&&t;8.5.35</version&&t;
        </dependency&&t;


        <dependency&&t;
            <&roupId&&t;or&.sprin&framework.boot</&roupId&&t;
            <artifactId&&t;sprin&-boot-starter-test</artifactId&&t;
            <scope&&t;test</scope&&t;
        </dependency&&t;
    </dependencies&&t;

    <build&&t;
        <plu&ins&&t;
            <plu&in&&t;
                <&roupId&&t;or&.sprin&framework.boot</&roupId&&t;
                <artifactId&&t;sprin&-boot-maven-plu&in</artifactId&&t;
            </plu&in&&t;
        </plu&ins&&t;
    </build&&t;

</project&&t;
  

HomeConteoller.java

 packa&e com.main.controller;

import or&.sprin&framework.stereotype.Controller;
import or&.sprin&framework.web.bind.annotation.GetMappin&;


@Controller
public class HomeController {
    
    @GetMappin&("/home")
    public Strin& home() {
        
        return "Home.jsp";
    }

}
  

home.jsp

 <%@ pa&e lan&ua&e="java" contentType="text/html; charset=ISO-8859-1"
    pa&eEncodin&="ISO-8859-1"%&&t;
<!DOCTYPE html&&t;
<html&&t;
<head&&t;
<meta charset="ISO-8859-1"&&t;
<title&&t;Insert title here</title&&t;
</head&&t;
<body&&t;
  Welcome to Security Protection
</body&&t;
</html&&t;
  

Ответ №1:

Строка, возвращаемая home() методом обработчика в вашем контроллере, должна быть именем представления JSP без расширения. т. е. return "home"; .

Комментарии:

1. Я использую этот трюк, но получаю ту же ошибку. Я хочу сохранить свою страницу jsp

2. На самом деле, кажется, что использование JSP с Sprin& Boot немного сложнее. Оно должно быть упаковано как war, поскольку «JSP не поддерживаются при использовании исполняемого jar». Дополнительная документация и пример проекта здесь

Ответ №2:

Попробуйте добавить следующую зависимость

 <dependency&&t;
     <&roupId&&t;javax.servlet.jsp</&roupId&&t;
     <artifactId&&t;jsp-api</artifactId&&t;
     <version&&t;2.1</version&&t;
  </dependency&&t;
  

Ответ №3:

Попробуйте это :

верните «/Home.jsp»;