阅读JSR-303的规范:
initialize方法由Bean验证提供程序在使用约束实现之前调用。
每次验证给定值时,isValid方法由Bean验证提供程序评估。如果值无效,则返回false,否则返回true。isValid实现必须是线程安全的。
我不太明白。initialize在每次isValid调用之前调用,isValid应该是线程安全的?这是否意味着我不能在initialize中存储类级别的任何东西,以便以后从isvalid访问它?特别地,我需要被传递来初始化的注释实例。
它没有说在每次调用isvalid()
之前应该调用initialize()
。在对同一注释多次调用isvalid()
之前,只能调用一次。例如,它的javadoc表示:
初始化验证程序,为isValid调用做准备。
使用krasa-jaxb-tools jaxb-plugin,我生成了以下内容: 来自XSD架构: 我得到了注释元素: 使用JAXB,我成功地生成了有效的XML(它通过了XSD验证--包括上面提到的字符串的格式)。 但是,如果我尝试使用Bean验证验证上面提到的字符串,它会抛出错误--如果它被写为“small123”,它会说它应该大写(失败small.123[a-za-z0-9.]{0,27}re
环境 Glassfish 3.1.2内置Hibernate-Validator 4.2。
我正在尝试使用自定义Bean验证来验证应该大于零的数值,但问题是使用如下单个自定义验证器来验证任何数值:整数、浮点数、双......: 整数int; @PositiveNumber双倍双; 这可能吗?
我想验证社会安全号码是否存在于数据库中。这是我的验证器。 在Validator中,我有一个@EJB userDao,我有一个方法此方法: 但是当我执行此方法时,我有一个错误: 警告:StandardWrapperValve[面向Servlet]:PWC1406:Servlet。servlet Faces的service()servlet引发了异常java。pl.ePrzychodnia处的lang
我缺少一些真正基本的东西(与EAR或EAR配置中的类加载相关)。我不明白,为什么我的JSR303验证和Hibernate验证不是从EAR内部触发的...如果我创建一个新的战争项目,它就会触发。 我正在Weblogic Server10.3上用Maven、JSF2.0、Open-JPA、EJB3.0建立一个新项目。我使用maven原型创建了所有项目。我有一个最终的EAR构建,它的结构如下: 项目名称
问题内容: 我在我的JSF项目中使用Bean验证。现在,我遇到了一种情况,在这种情况下,仅当验证先前的方法时,我才想验证方法。 我举一个例子: 由于我将收到每个参数的激活码,因此我想先对其进行验证。如果无效,将导致违规。如果是这样,我什至无法检查它是否已被激活(因为代码无效)。因此,是否有可能实现如上所述的任何功能(if语句的功能,我确实知道这是行不通的,但是它表明了我要完成的工作)。 提前致谢