gpt4 book ai didi

java - 验证不适用于 Play Framework 2 中的嵌套对象

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:49:14 24 4
gpt4 key购买 nike

我正在使用约束注释来验证我在 Play 中的对象!框架 2。它适用于顶级对象,但不适用于嵌套对象。如何让我的嵌套对象验证注释起作用?

事件:我正在保存的顶级对象。

@Entity
public class Event {

@Required
public String name;

@OneToMany(cascade = CascadeType.ALL)
public List<Option> options;

...
}

选项:嵌套对象。它没有验证名称属性。

@Entity
public class Option {

@Required
public String name;

...
}

最佳答案

不熟悉 Play,但它看起来非常接近 javax.validation,您需要将 @Valid 放在 options 字段中以告知 validator 陷入那种关系。 Play 有一个 @Valid它自己的,所以我会试一试。

更新:正如 OP 所指出的,上面是 Play 1.0。相反,根据 Play 2.0 docs ,它在底层使用 Spring 数据绑定(bind)和 JSR-303,那么使用 javax.validation @Valid 怎么样?注释吗?也许 Play 1.0 有一个自制的验证框架,他们决定在 2.0 中迁移到 javax.validation?这可以解释为什么几个验证注释似乎在 2.0 API 中消失了。

关于java - 验证不适用于 Play Framework 2 中的嵌套对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13977281/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com