0

我有一个要求,我需要将一个 xml 文件发送到其余资源。我需要对该 xml 文件进行一些验证。如果验证成功,则只会添加该 obj。任何人都可以就如何进行。

4

1 回答 1

0

只需以验证方法输入的方式进行验证,如果有问题WebApplicationException则抛出:

@POST
@Path("/upload")
public void upload(@FormParam("xml") String xml) {
  try {
    Document doc = this.parse(xml);
  } catch (SAXException ex) {
    throw new WebApplicationException(
      ex,
      Response.status(HttpURLConnection.HTTP_BAD_REQUEST).build()
    );
  }
}

否则,您可以接受 XML 作为 HTTP POST 正文:

@POST
@Path("/upload")
public void upload(String xml) {
  // the same as above
}

否则,您可以使用 JAXB 将传入的 XML 转换为带有 JAXB 注释的类(阅读更多):

@POST
@Path("/upload")
@Consumes("application/xml")
public void upload(Product product) {
  assert product.price().equals("50 USD");
}
于 2013-01-03T21:25:36.727 回答