我有grails申请。
我想实现全局grails后端异常处理程序。
表示如果后端应用程序中存在任何异常,如NullPointer,ArrayIndexOutOfBounds或引发任何其他异常,则应执行某些代码。我们如何在grails中做到这一点2.4.4。
答案 0 :(得分:2)
您可以使用UrlMappings
对其进行攻击。
来自documentation
static mappings = {
"403"(view: "/errors/forbidden")
"404"(view: "/errors/notFound")
"500"(controller: "errors", action: "illegalArgument",
exception: IllegalArgumentException)
"500"(controller: "errors", action: "nullPointer",
exception: NullPointerException)
"500"(controller: "errors", action: "customException",
exception: MyException)
"500"(view: "/errors/serverError")
}
使用此配置,IlrorsController中的illegalArgument操作将处理IllegalArgumentException,nullPointer操作将处理NullPointerException,并且customException操作将处理MyException。其他异常将由catch-all规则处理,并使用/ errors / serverError视图。
答案 1 :(得分:0)
对控制器使用Grails声明性异常处理
def handleLException(Exception e) {
render "Opps: ${e.message}"
}
此处提供更多信息:http://docs.grails.org/2.4.5/guide/single.html#controllerExceptionHandling