Я сейчас обновляюсь до Grails 4.1. В прошлой версии у меня было сопоставление stati c в моих сопоставлениях URL. groovy следующим образом:
class UrlMappings {
static mappings = {
name tool: "tool/$controller/$action?/$id?"{
"/$controller/$action?/$id?"{
constraints {
// apply constraints here
}
}
}
"/"(controller: "auth", action: "login")
"500"(view:'/error')
"404"(view:'/notFound')
}
}
Это отлично работало в предыдущих версиях Grails и когда я нажимал на ссылку, чтобы перенаправить на url localhost:8000/tool/converters/list
, конвертер будет распознан как контроллер, список будет распознан как действие, и будет отображен правильный вид. Теперь, когда я обновился, когда я нажимаю на ссылку, URL-адрес, на который он перенаправляется, равен localhost:8080/tool%2Fconverters/list
, а сообщение об ошибке «Эта страница не работает» - это то, что отображается в представлении. «% 2F» каким-то образом вставляется в URL и приводит к тому, что страница не отображается.
Я просмотрел документацию Grails 4 и не вижу никаких признаков того, что формат сопоставлений stati c в сопоставлениях URL изменился. Кто-нибудь знает, почему это происходит и как я могу это исправить?