当然
然而,Scala类型需要自定义注释,以及集合的自定义处理。
如果有任何兴趣,我会开源我的实现。
有好消息也有坏消息。
好消息是,您可以在Scala代码中使用JSR-303注释,没有任何问题。
下面是我之前项目中的一个例子,其中所有注释都是JSR-303注释,有些是现成的,有些是定制的。
@MessagesValid
class Messages {
@NotEmpty @Valid
private var msgs: java.util.List[DeliveredMessage] = _
def messages = msgs.asScala
@ChannelValid
var channel: String = _
var emailFrom: String = _
var emailReplyTo: String = _
@PublishAtValid
var publishAt: String = _
}
请注意msgs
集合是如何成为java的。util。列表
。它需要是一个Java集合,@NotEmpty
和@Valid
才能工作。但使用JavaConverters
将该字段公开为Scalahtml" target="_blank">集合非常容易。
坏消息是,您不能使用Scala创建JSR-303注释。您必须使用Java编写这些注释。因此,如果您想编写自定义的JSR-303注释,您需要有一个混合的Scala/Java项目。
有一个老臭虫(臭虫#32!)在Scala bug tracker中支持这些类型的注释,但它目前已关闭,无法修复。不管怎样,请投赞成票。
我的bean中有两个字段 当字段key=“A”,“value”应该跟在其他“key”的特定Regex后面时,它可以是任何内容。 如何根据键定义此值验证。
我使用Spring 3.2.2与Primeface 4.0和Hibernate 4.2。我在我的实体上有JSR303验证注释,并且我配置了Spring来在服务层验证它们——这很好。 但是我希望在调用服务之前启动JSF验证,但事实并非如此。我所做的所有研究都表明,我只需在类路径中添加一个验证程序,JSF2就会自动应用。 我已将建议的JAR添加到我的类路径中: 完整的依赖关系树可以在https://g
我目前正在用Spring开发一个应用程序,使用Hibernate作为ORM。我知道,默认情况下,Hibernate在持久化或加载实体时都会使用JSR-303 Bean验证。由于此应用程序支持草稿(我希望在持久化后执行验证),因此必须将其添加到persistence.xml中: 模型实体代码: 我想知道如何传播bean验证,以便每当MyEntity实例被验证时,所有相关联的bar也被验证,而不必在验
我试图让Kotlin在spring-data-rest项目上使用JSR303验证。 给定以下数据类声明: 提前感谢您的帮助!
我们有一个带有JSR注释的简单bean 我们有一个Spring控制器 我们的问题是,当调用changePassword时,验证器忽略组(PasswordChange.Class)并只验证组中不存在的firstName和lastName。 知道吗?非常感谢你抽出时间。
当我使用ValidationUtil.InvokeValidator验证时 2018-07-06 16:04:09.769错误10223--[nio-8080-exec-1]O.a.C.C.C.[.[.[/].[dispatcherServlet]:路径为[]的上下文中servlet[dispatcherServlet]的servlet.service()引发异常[请求处理失败;嵌套异常为java