如何捕获游戏中的配置错误! 2.1.5 避免显示默认错误信息?

How to capture a configuration error in play! 2.1.5 to avoid showing default error message?

我正在玩游戏! 2.1.5 在项目和今天,当 运行 应用程序时,显示配置错误,说它无法连接到数据库。事实证明 MySQL 不是 运行,因此出现错误。

但我的问题是关于如何捕获此配置错误并显示另一个页面而不是默认错误页面(如下图所示)。

如您所见,默认页面就在那里显示密码,这存在相当大的安全风险。

我已经在我的 GlobalSettings extended class 中覆盖了 onError 方法,但是这个错误似乎并没有被那个俘虏了。

有什么方法可以捕获此错误并显示替代错误消息吗?

非常感谢。

您可能 运行正在开发模式下玩游戏(即使用 ~runrun)。此模式只能在开发中使用,因为它可能会显示敏感信息(例如:带有源代码、密码等的堆栈跟踪)。

如果你想在生产模式下运行,你可以使用start~start代替

# Using Play >= 2.3.x
$ activator ~start

# Older versions
$ play ~start

此外,当您 运行 来自 stagedist 命令的工件时,您的应用程序将以生产模式启动。

在生产模式下,除非您使用 Global.onError 覆盖错误页面,否则您只会看到一个页面,说明发生了内部错误和开发人员可以用来调试该错误的异常 ID。