问题标签 [bean-validation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
validation - JSR 303 中的 GroupSequence 和有序评估
在我们的应用程序中,我们有这样一个案例:
- 应按特定顺序评估约束。(便宜到贵)
- 在每个字段违规后不应评估约束。
- 应验证所有字段。
对于前两个,groupsequence 非常适合。但是,对于我的第三个要求,我找不到解决方法。
例如,
假设,对于名称字段 VeryExpensiveValidationconstraint 被违反,而对于姓氏字段 ExpensiveValidation 约束被违反。
对于这种情况,我应该显示:
对于字段名称:仅非常昂贵的验证错误消息对于字段姓氏:仅是昂贵的验证错误消息
请注意,对于字段 surname,我们没有评估 VeryExpensiveValidation 约束。
有没有办法用 JSR 303 来实现它?
谢谢
java - @Past 或今天的 Bean 验证?
这是一个简单的来源,说明这个日期必须是过去使用 Bean Validation :
是否有任何 BV 注释来验证日期必须是今天还是前一天?
或者也许我需要扩展约束并提供我自己的约束?
java - 有没有办法使用 javax.validation 来验证日期是否大于/小于或介于特定日期之间?
我知道,@Future
但@Past
它们与本地 VM 系统日期进行比较。我错过了什么?
java - Bean Validation + Resource Bundle 的想法?
这是我希望能够在我的 JPA 实体中对 bean 验证进行的操作:
- 而不是
@NotNull
,我想做@NotNull(message="keyInMyResourceBundleFile")
- 我还想参数化resourceBundle,我不知道它的语法,因为在我看来消息属性只包含一个字符串。
- 参数本身可以是 i18n-ed。例如,假设 resourcebundle 参数有一个 param 属性,在英文中,
@NotNull(message="missing.value", params={"credit card"}) String creditCard;
它将显示如下内容:“Missing required value for field credit card。在印度尼西亚,它将类似于“Nilai harus di isi untuk Kartu Kredit . 在此示例中,我无法对“信用卡”进行硬编码,因为在印度尼西亚,它是“Kartu Kredit” - 在日志文件或 UI 上显示资源包中定义的错误消息。我不确定该怎么做,我应该
ConstraintViolationException
通过自己的代码捕获、获取消息并处理资源包吗?
请分享您对此的看法?
谢谢 !
jsf - JSF 2 重用 JPA 实体中定义的验证?
让我们从一个例子开始:
在我的 JPA 实体中
在我的 JSF Bean 中
是否可以重用实际将方法调用委托给实体的 JSF bean 的实体验证,这样我就不必重新定义 JSF bean 上的 bean 验证?
我什至可以将重用扩展到资源包中的错误消息级别,以及是否可以像往常一样使用 {0} 等参数化消息?我想知道网络上是否有任何示例,因为我一直找不到。
请分享您对此的想法..
谢谢 !
java - JSF 2 中 Bean Validation 的 resourcebundle 参数化可能性?
在 JSF 2 中使用带有 BV 的资源包看起来像这样:
而且我必须在可以注册的属性文件之一中定义 ResourceBundle 条目faces-config.xml
creditcard.length=信用卡长度必须至少为 13 个字符
我们可以看到 creditcard.length 的值是非参数化的。
我可以执行可以从 BV 或其他地方填充的参数化 ResourceBundle 条目吗?
这是我想实现的一个简单场景:
creditcard.length=信用卡长度必须至少为 {0} 个字符。感谢您选择 {1} 信用卡。
我希望有这样的事情:
当验证失败时,creditcard 属性的错误消息将显示如下字符串:
信用卡长度必须至少为13 个字符。感谢您选择Plantvszombie信用卡。
这个 ResourceBundle 消息参数化是否可行?
请分享您在这件事上的经验。
谢谢 !
java - 使用 javax.validation.Validator 等时的问题
我正在尝试使用GWT BeanValidation验证某些内容,但这两条线给我带来了一些麻烦:
问题是,我已经导入了相应的类:
但是,代码中的 Validator、Validation、ConstraingViolation 和 Default 引用仍以红色下划线显示,它们显示的错误是:
我已经检查了必要的 lib validation-api-1.0.0.GA.jar 是否在类路径中,一切看起来都很正常。
任何人碰巧知道可能是什么问题?
谢谢!!
spring-mvc - Spring 中的 JSR 303 Bean 验证
这是我的formbean:-
在我的 message.properties 文件中我写: -
它向我显示错误消息:userId must not empty.
和password must not empty.
但我想将错误消息显示为User Id must not empty.
或'Password must not
empty.'
我知道我可以@NotEmpty(message="User Id must not empty")
在我的 formBean 中使用,但我想要同步消息,就好像我们需要更改消息一样,它会减少开销。
我搜索了 JSR 文档,但没有找到任何东西来替换我的属性userId
名称User Id
。请大家帮助我,从两天开始就卡住了。
如果不可能,请告诉我,或者如果不能,请帮助我做些其他的事情。
谢谢沙姆斯
_
jpa - 为什么 Bean 验证器在不可为空但自动生成的 id 字段上抛出 ConstraintViolationException?
实体类:
使用代码:
输出 :
环境 :
JDK 6 u23
GlassFish Server 开源版 3.1-b41(有 bean-validator.jar)
NetBeans IDE 7.0 Beta 2
问题 :
有没有人建议为什么 Bean 验证器在不可为空但自动生成的 id 字段上抛出此异常?什么是正确的方法?
java - 带有 Spring 和 Hibernate 混合错误消息的 JSR-303
我想做的是有一个标准的错误消息,它使用注释来填写所述错误消息的值。代码应该有助于解释。
我有一个模型 POJO,上面有带有 JSR-303 注释的字段,如下所示:
目前,我有两个属性文件:一个用于保存我的字段的标签,另一个用于保存实际消息:
然后我遍历东西来构建我想要的东西:
这一切都很好而且很花哨,但我希望能够坚持基于注释的做事方式并在字段上添加某种标签。例如:
然后我可以编写一个辅助函数,它只使用注释来标记我在属性文件中的错误消息。我还需要它来处理基于 Spring 的验证错误,例如 typeMismatch。有趣的东西,那个。
在此先感谢您的帮助!