dea*_*mon 3 java grails groovy exception-handling exception
下面是Grails中自定义异常处理的示例,我得到了以下代码:
exceptionHandler.exceptionMappings = [
'my.project.AccessDeniedException': '/accessDenied',
'my.project.NoSessionException' : '/accessDenied',
'java.lang.Exception': '/errorProduction'
]
Run Code Online (Sandbox Code Playgroud)
这适用于前两种类型的异常,但所有其他异常(如GroovyPagesException)不再由Grails处理,它们由servlet容器处理.
如何使用Grails(1.3)处理所有异常?
这有效:
UrlMappings.groovy:
"500"(controller: 'errors', action: 'handle')
Run Code Online (Sandbox Code Playgroud)
和控制器:
class ErrorsController {
def handle = {
def exception = request.exception.cause.class
if(exception == my.project.NoSessionException ||
exception == my.project.AccessDeniedException)
render(view: '/accessDenied')
else
render(view: '/errorProduction')
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5913 次 |
| 最近记录: |