我有一个简单的Jersey应用程序,其中包含资源" / a":
@Path("/a")
public class AResource {
@GET
@Produces({"application/json"})
public ABody getA() {
ABody body = new ABody();
body.setProperty("example");
return body;
}
}
ABody班:
@XmlRootElement
public class ABody {
@NotNull
@Size(min = 1)
private String property;
public String getProperty() {
return property;
}
public void setProperty(String publicKey) {
this. property = publicKey;
}
}
主要班级:
public class Server {
public static void main(String[] args) throws IOException {
final String baseUri = "http://localhost:9998/";
final ResourceConfig rc = ResourceConfig().packages("com.example");
System.out.println("Starting grizzly...");
HttpServer httpServer = GrizzlyHttpServerFactory.createHttpServer(URI.create(baseUri), rc);
System.in.read();
httpServer.shutdown();
}
}
一切正常,当我要求" / a"我得到了一个带有该属性的JSON对象。 我尝试包含依赖项jersey-bean-validation,以便在请求时自动验证Abody类型的对象。
问题:方法" getA()"一旦包含新的依赖项,就不再执行。
我想使用bean验证来验证传入和传出请求的正文。我按照官方的Jersey文档进行了操作。
非常感谢任何帮助。