我javax.validation
在我的项目中使用 API,并且在一些开发人员机器和测试服务器上遇到了名义上的问题。在其他开发人员机器上,尽管我们使用由 maven 处理的相同 Glassfish 版本、IDE 和库堆栈,但无法重现此错误。
在调试这个问题时,我们怀疑可能是问题的原因(我们无法在编译的类中调试,因此“怀疑”) - 我们有一个用于持久实体的接口:
public interface PersistableEntity<T> {
public T getId();
public void setId(T id);
}
实现类按“id”字段类型划分:String
或BigDecimal
。@Pattern
约束附加到实现中的id
字段的getter PersistableEntity<String>
。
如果这是原因,是否可以同时使用javax.validation
和使用泛型来维护验证?
更新 我们决定从 JSR303 转移到自定义可配置验证机制。如果有名义问题的人找到了解决方案,请让我知道它是哪一个,我会将其标记为答案(欢迎有经验的 SO 用户对此困境的任何其他解决方案)。