java - 如何在 Jersey 中传递元素列表作为参数?

标签 java jersey

有没有办法将元素列表作为参数传递给使用 Jersey 的方法?

我有一个用 @XmlRootElement 注释的类 Sample,其中包含以下变量:idUsuarioxtimestamp

在我的 MedicaoResource 类中,方法:

@GET
@Produces("text/xml")
public List<Medicao> getMedicoes() {
    return new ArrayList<Medicao>(getAllMedicoes());
}

返回类似:

<medicaoes>
    <medicao>
        <idUsuario>1</idUsuario>
        <timestamp>2012-04-16T12:25:00.454-03:00</timestamp>
        <x>0.71</x>
    </medicao>
    <medicao>
        <idUsuario>1</idUsuario>
        <timestamp>2012-04-16T12:25:00.454-03:00</timestamp>
        <x>1.71</x>
    </medicao>
</medicaoes>

现在,我想做这样的事情:

@POST
@Consumes(MediaType.APPLICATION_XML)
@Produces("text/plain")
public String addMedicoes(ArrayList<Medicao> medicoes) {
    for (Medicao medicao : medicoes) {
        addMedicao(medicao);
    }
    return "success";
}

我必须如何编写 XML 才能使上述方法正常工作?我尝试传递 getMedicoes 方法返回的相同 XML,但它不起作用。

最佳答案

您应该使用类型 List<Medicao>而不是ArrayListaddMedicoes方法。 这可能是阻止 jersey/jaxb 正确解码您的 xml 查询的原因。

此外,除了 won't work 之外,您还应该发布更多信息,因为仅此而已,我们只能猜测出了什么问题。什么不起作用?您有任何错误消息/日志要显示吗?您具体尝试了什么?

关于java - 如何在 Jersey 中传递元素列表作为参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10180127/

相关文章:

java - 在 java 中将来自 user32.dll 的 SendMessage 与 jna 一起使用 - 错误

java - MediaStore.Images.Media.getBitmap 意外失败

java - 排列标签

java - 从java程序执行Ubuntu命令

java - Restful Web 服务返回 404,错误的 web.xml?

java - 带有 PDFBox 的 GAE 上的临时文件创建错误

java - 为什么我可以在 InvocableHandler 的 invoke() 方法中调用 proxy.getClass() ?

java - 是否可以将 Spring MVC 与 Jersey 注解一起使用?

java - 如何在 Jersey 服务中返回特定响应

java - 与本地主机的 HTTP 连接失败