【发布时间】:2014-12-30 18:26:32
【问题描述】:
我的问题类似于Resteasy Bean Validation Not Being Invoked。但是,那里的解决方案不起作用。
我在我的 pom 中使用 Resteasy 3.0.9.Final 和 resteasy-validator-provider-11。我正在使用自定义 Jetty 类启动整个过程。
奇怪的是,验证在 @PathParams 上运行良好,但在 bean 上却不行。
@POST
@Path("/foo/{myParam}")
public Message post(MyBean myBean, @PathParam("myParam") @Size(min=5) String myParam) {
return new Message("bean:" + myBean.toString());
}
public static class MyBean {
@NotNull
public String myStr;
@Max(value = 3)
public int myInt;
public String toString() {
return myStr + myInt;
}
}
在这种情况下,myParam 上的 @Size 约束工作正常。但是 MyBean 中的 @NotNull 和 @Max 约束没有被调用。
我是否在某处遗漏了注释?
这里还有一个线索。我的日志包括以下条目:
2014-12-30 12:16:56 org.hibernate.validator.internal.util.Version 6446 INFO HV000001: Hibernate Validator 5.0.1.Final
2014-12-30 12:16:56 org.jboss.resteasy.plugins.validation.AbstractValidatorContextResolver 6477 INFO Unable to find CDI supporting ValidatorFactory. Using default ValidatorFactory
【问题讨论】:
-
您链接到的链接是针对resteasy的测试版,其中代码无论如何都不是最终版本。
标签: java jax-rs resteasy bean-validation