我想以某种方式抓住执行例外'通常在浏览器中显示。我不喜欢手动验证数据的事实,当它们似乎无论如何都被Play验证时。
例如,我想捕获下面的例外情况。
[IllegalStateException:错误绑定表单:{" email":["有效的电子邮件 所需"]}]
在我的示例中显示在User user = Form.form(User.class).bindFromRequest().get();
之后。
答案 0 :(得分:1)
IllegalStateException
是运行时异常,并不意味着被捕获。
用以下代码替换您的代码:
Form<User> userForm = Form.form(User.class).bindFromRequest();
if(userForm.hasErrors()) {
return badRequest();
} else {
User user = userForm.get();
// whatever
return ok();
}