表单验证在Play中使用子对象进行约束

Chr*_*ail 2 java validation playframework playframework-2.0

我有一个公平的复杂表单,我试图在Play Framework 2.0中创建.我没有将所有字段都放在主窗体模型类中,而是将其分解为子对象.遗憾的是,这似乎不适用于验证限制.绑定确实有效,所以我最终得到了正确填充的对象.

有没有办法让验证工作在子对象上.请参阅以下模型和视图代码.客户端下的电子邮件地址未经过验证.

表格型号:

public class Inspection {
    // This works!
    @Email
    private String email;

    private Client client;

    // ... getters and setters
}

public class Client {
    // This does not work
    @Email
    private String email;

    // ... getters and setters
}
Run Code Online (Sandbox Code Playgroud)

视图:

@inputText(inspectionForm("email"), '_label -> "Email Address 1")
@inputText(inspectionForm("client.email"), '_label -> "Email Address 2")
Run Code Online (Sandbox Code Playgroud)

Ran*_*ggs 5

尝试在客户端上使用@Valid注释

public class Inspection {
    // This works!
    @Email
    private String email;

    @Valid
    private Client client;

    // ... getters and setters
}
Run Code Online (Sandbox Code Playgroud)