如果我用 @URL
注释字段:
@URL
private String myUrl;
并尝试在没有架构的情况下为其设置值(google.com
而不是 http://google.com
)
然后它将抛出ConstraintViolationException
。
我如何才能接受没有架构的 URL?
最佳答案
作为 UrlValidator
中验证例程的一部分,将实例化具有给定值的 java.net.URL
对象。它的构造函数不排除没有协议(protocol)的 URL,因此该约束被认为是无效的。如果您想接受没有协议(protocol)的 URL,您可以通过 @Pattern
使用正则表达式,或者为 @Url
约束创建自定义 validator ,提供您需要的逻辑。
关于java - Hibernate Validator @URL 不接受没有 schema 的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20249092/