Java 如何将json与jersey客户端一起使用到.net REST svc与weblogic一起使用?
我的本地技术堆栈是WL9.2,泽西岛1.1.5.1 远程REST svc位于ASP.net中,请求正文中的响应在文档中描述为Java 如何将json与jersey客户端一起使用到.net REST svc与weblogic一起使用?,java,.net,json,weblogic,jersey,Java,.net,Json,Weblogic,Jersey,我的本地技术堆栈是WL9.2,泽西岛1.1.5.1 远程REST svc位于ASP.net中,请求正文中的响应在文档中描述为 { "Context" : { "ID" : "0c351860a82d", "Action" : "SomeAction", "MessageID" : "5d220b792d7f", "UriString" : "",
{
"Context" :
{
"ID" : "0c351860a82d",
"Action" : "SomeAction",
"MessageID" : "5d220b792d7f",
"UriString" : "",
"ReferenceID" : "3ee8c695ffa5",
"Time" : "2009-02-11T01:37:44.52",
"ControlNbr" : "1.001"
},
"Answer" :
{
"Code" : 0,
"Detail" : ""
},
"Exceptions" : [{
"Code": 1,
"Text": "Missing value ",
"Trace": "trace from error.."
},{
"Code": 2,
"Text": "Invalid input ",
"Trace": "trace from error.."
} ],
"Salt" : "196ac409",
"TmpKey" : "3ee8c695ffa5"
}
我已尝试将上述内容映射到如下开头的POJO:
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class SvcResponseBean {
public SvcResponseBean() {}
@XmlElement(name="Context")
public ContextBean ctx;
@XmlElement(name="Answer")
public AnswerBean answ;
@XmlElement(name = "Exceptions")
public List<ExceptionBean> exs = new ArrayList<ExceptionBean>();
@XmlElement(name="Salt")
public String salt;
@XmlElement(name="TmpKey")
public String tmpKey;
public void add(ExceptionBean eb) {exs.add(eb);}
}
呱呱叫
java.lang.Error: Error: could not match input
at com.sun.jersey.json.impl.reader.JsonLexer.zzScanError(JsonLexer.java:468)
at com.sun.jersey.json.impl.reader.JsonLexer.yylex(JsonLexer.java:713)
at com.sun.jersey.json.impl.reader.JsonXmlStreamReader.nextToken(JsonXmlStreamReader.java:153)
显然,我对JSON和Jersey不是很精通,但我正在学习。
有没有办法让Jersey/JsonLexer告诉我到底出了什么问题?
我知道有很多不同类型的JSON格式,所以这可能是我的问题
如有任何提示,将不胜感激
karoy可能只是复制粘贴错误,但以下内容无效:
"Exceptions" : {
"Code": 1,
"Text": "Missing value ",
"Trace": "trace from error.."
},{
"Code": 2,
"Text": "Invalid input ",
"Trace": "trace from error.."
}
"Salt" : "196ac409"
没有与值{Code:2,Text,…]关联的键,也没有分隔}和Salt的键。的确,感谢您捕获它。从文档的另一部分复制了错误的异常定义。我意识到一件事:.net REST服务器的响应在JSON正文前面有BOM或字节顺序标记。
"Exceptions" : {
"Code": 1,
"Text": "Missing value ",
"Trace": "trace from error.."
},{
"Code": 2,
"Text": "Invalid input ",
"Trace": "trace from error.."
}
"Salt" : "196ac409"