将jersey-bean验证放在classpath中断应用程序

时间:2014-06-24 13:03:44

标签: java rest jersey bean-validation

我有一个简单的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文档进行了操作。

非常感谢任何帮助。

0 个答案:

没有答案