我有獲取崗位要求的身體下面創建在後端是數據的REST API:如何定義模型來解讀後的數據,而不根元素名稱
{
"key": "mykey30",
"value": "my long value"
}
,這是我如何定義我的模型:
@XmlRootElement
public class Entity {
private String key;
private String value;
}
,這是我如何定義我的服務端點:
@POST
@Produces({ MediaType.APPLICATION_JSON })
@Path("/buckets/{bucket_id}/entities/{key}")
public CacheResponse createEntity(Entity entity, @PathParam("bucket_id") String bucket_id, @PathParam("key") String key);
我現在得到這個異常:
javax.xml.bind.UnmarshalException: unexpected element (uri:"", local:"key"). Expected elements are <{}cacheEntity>
這是有道理的,它消失了,當我張貼此JSON:
{
"Entity": {
"key": "mykey30",
"value": "My New Value"
}
}
,但我的客戶將張貼像我剛纔粘貼的一個請求,沒有「實體」包裝。
我該如何註釋&定義我的模型忽略根元素?
我使用CXF 3.0.3,春3.2.13.RELEASE &拋棄1.3.5
依賴個人而言,我會用這種方式去。我不知道這是否是您的選擇。我比其他任何JSON處理框架更喜歡Jackson –