Java @xmlrootelement json等价物
这是我用来填充并将其作为web服务请求调用的一部分发送的类:Java @xmlrootelement json等价物,java,json,jersey,Java,Json,Jersey,这是我用来填充并将其作为web服务请求调用的一部分发送的类: import javax.xml.bind.annotation.XmlRootElement; @XmlRootElement public class ClientInfo { private String langCode; private String userId; private String password; private String ShipTo; private St
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement
public class ClientInfo {
private String langCode;
private String userId;
private String password;
private String ShipTo;
private String timeZone;
public String getLangCode() {
return langCode;
}
public void setLangCode(String langCode) {
this.langCode = langCode;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getShipTo() {
return ShipTo;
}
public void setShipTo(String shipTo) {
ShipTo = shipTo;
}
public String getTimeZone() {
return timeZone;
}
public void setTimeZone(String timeZone) {
this.timeZone = timeZone;
}
}
当我为这个类使用Entity.xml()
来解析该类并启动请求时,一切正常,我得到了结果,这是服务调用代码的一部分。请查看Entity.xml()
的最后一行
但是,如果我将Entity.xml(ci)
更改为Entity.json(ci)
,它将抛出一个异常。例外情况如下:
Apr 07, 2014 3:54:08 PM org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor aroundWriteTo
SEVERE: MessageBodyWriter not found for media type=application/json, type=class com.sheidaei.sample.appleclient.ClientInfo, genericType=class com.sheidaei.sample.appleclient.ClientInfo.
据我所知,我的理解是应用程序无法找到ClientInfo类的JSON表示。是否有一种简单的方法(如注释)可以让Entity.json()轻松找到ClientInfo的json表示形式 默认情况下,Jersey提供对JAXB注释类和XML编组/解编组的支持。要使用JSON,您需要具有适当配置的适当实体提供程序
泽西岛文档提供了详细信息:
com.telus.sample.appleclient.ClientInfo
&com.sheidaei.sample.appleclient.ClientInfo
它们之间的关系是什么?
Apr 07, 2014 3:54:08 PM org.glassfish.jersey.message.internal.WriterInterceptorExecutor$TerminalWriterInterceptor aroundWriteTo
SEVERE: MessageBodyWriter not found for media type=application/json, type=class com.sheidaei.sample.appleclient.ClientInfo, genericType=class com.sheidaei.sample.appleclient.ClientInfo.