0
package com.marketplace.acres.dummyapp.test;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import javax.xml.bind.annotation.XmlRootElement;
@Path("/fortest")
@XmlRootElement
public class ForTest {
public int id;
public String name;
public ForTest(){
}
public ForTest(int id, String name){
this.id = id;
this.name = name;
}
@GET
@Produces(MediaType.APPLICATION_XML)
public ForTest getMessages(){
ForTest emp1 = new ForTest(22,"sachin");
return emp1;
}
}
這個代碼給出了預期的XML輸出:錯誤但是數據是XML格式輕鬆獲取
<forTest>
<id>22</id>
<name>sachin</name>
</forTest>
但是,當我試圖讓JSON格式的數據通過改變:
@Produces(MediaType.APPLICATION_XML)到@Produces(MediaType.APPLICATION_JSON),我得到一個錯誤:
重度:MessageBodyWriter未找到媒體類型=應用/ JSON, type = class com.marketplace.acres.dummyapp.test.ForTest,genericType = class com.marketplace.acres.dummyapp.test.ForTest。
如何獲取JSON格式的數據?
您需要在類路徑上使用JSON解析器庫(如Jackson)。請參閱http://www.mkyong.com/spring-mvc/spring-3-mvc-and-json-example/ – hotzst