如何在java的Play2框架中处理异常

如何在java的Play2框架中处理异常,java,playframework-2.0,Java,Playframework 2.0,我应该如何/在哪里设置异常处理,这样我就可以抛出某种通用的“oops-简直不能处理这种”类型的异常并适度地处理它 答案提示它应该是优雅的(AppException),当然它应该是优雅的,但我不太清楚捕捉应该在哪里,以及它应该如何导致后续错误页面呈现 (谷歌在scala世界中揭示了这一问题的答案,但我还没有弄清楚java中的等价物是什么)。请参见此处的“提供应用程序错误页面”: 它是一个全局异常处理程序,因此您不需要捕获任何内容 注意:如果复制并粘贴提供的代码,则需要创建一个名为“errorPa

我应该如何/在哪里设置异常处理,这样我就可以抛出某种通用的“oops-简直不能处理这种”类型的异常并适度地处理它

答案提示它应该是优雅的(AppException),当然它应该是优雅的,但我不太清楚捕捉应该在哪里,以及它应该如何导致后续错误页面呈现

(谷歌在scala世界中揭示了这一问题的答案,但我还没有弄清楚java中的等价物是什么)。

请参见此处的“提供应用程序错误页面”:

它是一个全局异常处理程序,因此您不需要捕获任何内容

注意:如果复制并粘贴提供的代码,则需要创建一个名为“errorPage”的新视图,该视图使用Throwable类型的一个参数。大概是这样的:

@(t: Throwable)

<h1>My Error page</h1>
@t.getMessage
@(t:可丢弃)
我的错误页面
@t、 获取消息

在从GlobalSettings扩展而来的默认包下开发Global.java并实现onError(-)方法,它将处理异常

Hah-这很简单:)谢谢!您能否详细说明在哪里可以“适当”地声明特定于应用程序的例外情况?它也在Global.java中吗?(我还不清楚在Play框架中从何处可以看到哪些包,因此我不知道Global.java是否是声明将从模型抛出的异常的正确位置,例如……我会将AppException放在“app/models/common”中的某个位置。)。感谢您的持续帮助。不幸的是,您指向的代码给了我一个麻烦:找不到symbol:class html。箭头指向views.html.errorPage(t)。我已尝试导入views.html.*,但无效。提示?再次感谢!抱歉,我已向您发送指向旧版本Play framework的链接。请检查我的答案,我已更新了它。