簡體   English   中英

HTTP狀態404 –找不到tomcat spring

[英]HTTP Status 404 – Not Found tomcat spring

我開始學習spring並且無法贏得tomcat服務器。

這是文件樹

這是web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">    
    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcher</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

這是dispatcher-servlet.xml

和MainController

package com.burmistrov;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class MainController {`

    @GetMapping("/")
    public String view() {
        return "hello";
    }}

和Tomcat的默認設置

任何人都可以幫助我,我在哪里犯了錯誤?

您正在訪問未在程序中映射的頁面,因此服務器不知道該怎么做並發送404。您將必須映射正在訪問的頁面。

在/ WEB-INF / jsp目錄下添加hello.jsp或在MainController.view上添加Annotation @ResponseBody,如下所示,

package com.burmistrov;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class MainController {`

@GetMapping("/")
@ResponseBody
public String view() {
    return "hello";
}}

希望這可以幫助。

在您的web.xml ,沒有配置dispatcher-servlet.xml 這就是為什么您會出錯。

將此代碼添加到您的web.xml

<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            WEB-INF/dispatcher-servlet.xml
        </param-value>
    </context-param>
   <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM