Как отобразить 500 ошибок в файле urlmappings? - PullRequest
0 голосов
/ 25 сентября 2018

Для проверки статуса отображения 500 в файле urlmappings.Цель состоит в том, чтобы отобразить пользовательскую страницу просмотра ошибок.Я намеренно бросил исключение, чтобы проверить это.

Я настроил этот простой код.

import java.nio.file.AccessDeniedException

class HomeController {

    def index() {

        throw new AccessDeniedException('asd')
    }
}

Я сопоставляю код 500 в urlmappings

package exceptiontest
import java.nio.file.AccessDeniedException

class UrlMappings {

    static mappings = {
        "/$controller/$action?/$id?(.$format)?"{
            constraints {
                // apply constraints here
            }
        }

        "/"(controller: 'home', action: 'index')
        "404"(view:'/notFound')

        "500"(controller: "errors", action: "error403")

    }
}

Здесь контроллер ошибок

package exceptiontest

class ErrorsController {

    def error403() {}

}

Здесь файл error403.gsp

<html>
<head>
    <title>Access denied!</title>
    <meta name='layout' content='main' />
</head>

<body>
<h1>Access Denied</h1>
<p>We're sorry, but you are not authorized
to perform the requested operation.</p>
</body>
</html>

Это не отображает эту ошибку.Чего мне не хватает, чтобы заставить эти urlmappings работать для 500 кода?Я ценю любую помощь.Спасибо!

Я использую Grails 3.3.8.

1 Ответ

0 голосов
/ 25 сентября 2018

Вы получаете 500 ошибок или 403?Попробуйте добавить 403 в сопоставления URL-адресов или попробуйте следующее в вашем контроллере, чтобы получить ошибку 500.

import static org.springframework.http.HttpStatus. *

состояние рендеринга: INTERNAL_SERVER_ERROR

...