【问题标题】:grails outputs "an error has occurred", how do I show the actual error?grails 输出“发生错误”,我如何显示实际错误?
【发布时间】:2014-08-31 12:09:19
【问题描述】:

在我的 grails 控制器或服务的内部,有些东西正在引发异常(我假设)。结果就是网页只显示“出现错误”,帮助不大。

关于 grails 的奇怪之处在于它似乎不会抛出异常,所以我不能使用 try/catch 并执行诸如记录错误或向用户发送带有堆栈跟踪的显式错误消息之类的操作。

有什么想法可以用 grails 完成吗?不幸的是,当我搜索时,我只找到有关显示验证错误的信息。我相信有一个简单的方法!

由于我不知道实际发生了什么样的异常,或者为什么,我需要使用堆栈跟踪来捕获并显示任何异常。

【问题讨论】:

    标签: exception grails


    【解决方案1】:

    好的,答案其实很简单。您只需在视图的根目录中创建一个 error.gsp,使用以下代码(无论存在什么环境,它都会输出 except:

    <!DOCTYPE html>
    <html>
        <head>
            <title><g:if env="development">Grails Runtime Exception</g:if><g:else>Error</g:else></title>
            <meta name="layout" content="main">
            <g:if env="development"><link rel="stylesheet" href="${resource(dir: 'css', file: 'errors.css')}" type="text/css"></g:if>
        </head>
        <body>
        <h2>Time: <g:formatDate format="yyyy-MM-dd hh:mm:ss" date="${new Date()}"/> </h2>
            <g:renderException exception="${exception}" />
    
        </body>
    </html>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多