自定义ErrorController无法与resourcesHandler一起使用?

时间:2018-08-03 16:43:55

标签: spring-boot

我正在创建一个像这样的错误控制器:

@Controller
class ErrorController : org.springframework.boot.web.servlet.error.ErrorController {
    @RequestMapping
    fun handlerError(): String {
        return "component/error"
    }

    override fun getErrorPath(): String {
        return "error"
    }
}

当我重新启动项目时,我发现默认资源处理程序不起作用(在创建此错误控制器之前它可以工作)!
我的资源文件夹结构: folder structure

即使我在WebMvcConfiguration中重写addResourceHandler,它也无法正常工作:

override fun addResourceHandlers(registry: ResourceHandlerRegistry) {
    registry.addResourceHandler("/public/**")
        .addResourceLocations(CLASSPATH_PUBLIC_RESOURCE_LOCATION)
    registry.addResourceHandler("/private/**")
        .addResourceLocations(CLASSPATH_PRIVATE_RESOURCE_LOCATION)
}

如果我删除ErrorController,一切正常!

我认为,他们应该能够同时工作。
我用谷歌搜索,但没有发现有人问相同的问题(也许我错过了?),所以,有人告诉我为什么如何
非常感谢您!

已解决: 这是我的错误,我没有在@RequestMapping的{​​{1}}中添加值,只是将代码更改为:

ErrorController

0 个答案:

没有答案