Не выводит ошибку 404 страница не найдена

205
06 февраля 2020, 07:30

Я хочу в своем проекте вывести ошибку 404 страница не найдена, в том случае если неправильный адрес будет. Я написал код но он не работает.

ErrorController

package adil.java.schoolmaven.controller;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.servlet.ModelAndView;
@Controller
public class ErrorController {
    @RequestMapping(value = "errors", method = RequestMethod.GET)
    public ModelAndView renderErrorPage(HttpServletRequest httpRequest) {
        ModelAndView errorPage = new ModelAndView("errorPage");
        String errorMsg = "";
        int httpErrorCode = getErrorCode(httpRequest);
        switch (httpErrorCode) {
            case 400: {
                errorMsg = "Http Error Code: 400. Bad Request";
                break;
            }
            case 401: {
                errorMsg = "Http Error Code: 401. Unauthorized";
                break;
            }
            case 404: {
                errorMsg = "Http Error Code: 404. Resource not found";
                break;
            }
            case 500: {
                errorMsg = "Http Error Code: 500. Internal Server Error";
                break;
            }
        }
        errorPage.addObject("errorMsg", errorMsg);
        return errorPage;
    }
    private int getErrorCode(HttpServletRequest httpRequest) {
        return (Integer) httpRequest
          .getAttribute("javax.servlet.error.status_code");
    }
    @RequestMapping(value = "500Error", method = RequestMethod.GET)
        public void throwRuntimeException() {
    throw new NullPointerException("Throwing a null pointer exception");
}
}

Web XML

<?xml version="1.0" encoding="windows-1251"?>

<error-page>
    <location>/views</location>
</error-page>

ErrorPage JSP

<!DOCTYPE html>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ page session="false"%>
<html>
<head>
    <title>Home</title>
</head>
<body>
    <h1>${errorMsg}</h1>
</body>
</html>

READ ALSO
Unable to start activity ComponentInfo{com.example.test03datetime/com.example.test03datetime.MainActivity}: java.lang.NullPointerException [закрыт]

Unable to start activity ComponentInfo{com.example.test03datetime/com.example.test03datetime.MainActivity}: java.lang.NullPointerException [закрыт]

Хотите улучшить этот вопрос? Переформулируйте вопрос, чтобы он соответствовал тематике «Stack Overflow на русском»

252
Добавление новой строки в таблицу

Добавление новой строки в таблицу

Подскажите, пожалуйста, как реализовать цикл проверки добавления поверх основных полей? есть 6 вкладок добавления1я вкладка обязательных...

210
из Java не видно наследование в файле в Kotlin

из Java не видно наследование в файле в Kotlin

Есть такой метод который сидит в Java классе

188
Связь методов System.arraycopy() и Arrays.binarySearch()

Связь методов System.arraycopy() и Arrays.binarySearch()

На фото ниже - наглядная схема метода Systemarraycopy()

215