【发布时间】:2016-01-02 10:08:55
【问题描述】:
我将 Scala 与 Play 一起用于我的微服务。它有一个控制器,它使用带有自定义正文解析器的 Action.async 构造。这是一个示例代码:
def crud(param: String) = Action.async(SomeCustomBodyParser) { implicit request =>
try {
<some code>
} catch {
case _ => <Exception Handling logic>
}
}
这段代码的问题是,如果SomeCustomBodyParser 中出现异常,它不会在catch 块中得到处理。我尝试了几种方法,将其提取到外部,然后手动处理,但未正确捕获异常。 Action.async 的代码表明它需要一段代码并在单独的上下文中执行它。我不清楚它是如何工作的。
如何处理异常并输出更好的异常消息。
【问题讨论】:
标签: scala asynchronous playframework action body-parser