java - JSON Jersey JAXB

标签 java json curl jaxb

我似乎无法将 JSON 发布到我的网络服务,但 XML 工作正常:

     @POST
 @Consumes({"application/xml","application/json"})
 public  void addOrder(JAXBElement<OrderBean>  order) {
     System.out.println("COOL");
 }



curl -v -X POST --data-binary "<orderBean><customer>test</customer></orderBean>" -H"Content-Type: application/xml"  http://localhost:8080/webapp/rest/order


curl -v -X POST --data-binary "{"orderBean":{"customer":"test"}}" -H"Content-Type: application/json" http://localhost:8080/webapp/rest/order

我收到以下 JSON 错误:

java.lang.Error: Error: could not match input
    at com.sun.jersey.json.impl.reader.JsonLexer.zzScanError(JsonLexer.java:491)

任何帮助将不胜感激。

最佳答案

当您的 OrderBean已正确注释为任何 @XmlXXX ,你不必用 JAXBElement<> 包裹它

@POST
@Consumes(...)
public void addOrder(final OrderBean order) {
}

并且您应该发送与 Jersey 可以解析的完全相同的 JSON 字符串。

这意味着您应该发送与 Jersey 打印的 JSON 字符串结构完全相同的

请参阅

http://jersey.java.net/nonav/documentation/latest/json.html#d4e949

Print Jersey JSON in Unit Testing

关于java - JSON Jersey JAXB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5890099/

相关文章:

java - 这个打开/关闭 JDBC 连接代码可以吗?

java - jackson 忽略子树外的名称字段

linux - 如何在 Bash for 循环中同时访问两个数组索引以获取 curl 请求?

php - cURL 脚本不工作

java - J2EE : Singleton vs keeping things in session

java - 下拉菜单打开 Bat 文件

java - 在JVM中长时间记录音频时出现突然的延迟

javascript - jquery多维Json解析

javascript - Jquery JSON 请求的语法错误问题

javascript - CURL - 获取链接的 HTML 源中的出现次数