我使用物化和谷歌雲端點來開發應用程序的後端在一次調用保存引用的對象(通過參考文獻)。我有一個「卡車」類,有一個參考(使用參考)的「類別」類。它看起來像這樣:使用雲端點
@Entity
@Cache
public class Truck {
public @Id Long id;
public String city;
//...
@Load Ref<PlaceCategory> category;
public PlaceCategory getCategory(){
return category.get();
}
public void setCategory(PlaceCategory category){
this.category = Ref.create(category);
}
}
自然,Category類別只是另一個具有它自己的ID的實體。現在
,建設我想能夠在API - 在一個電話 - 插入包含類別對象Truck對象。在這種情況下,請求正文如下所示:
{
"category": {
"name": "Some category"
},
"city": "Some city"
}
(它只是API explorer的一個副本)。 然而執行這一請求,我收到一個錯誤:
com.google.appengine.repackaged.org.codehaus.jackson.map.JsonMappingException: No class 'entities.Category' was registered (through reference chain: entities.Truck[\"category\"])
當然,我已經註冊類別對象OfyService作者:
public class OfyService {
static {
factory().register(PlaceCategory.class);
}
public static Objectify ofy() {
return ObjectifyService.ofy();
}
public static ObjectifyFactory factory() {
return ObjectifyService.factory();
}
}
我讀過的文檔兩次,我仍然不知道哪來的問題。沒有明確說過我不能像這樣嵌入對象。經過2天的搜索和努力,我放棄了:)希望有人能幫助我理解。
迄今發現的解決方案? – pjv 2015-03-11 22:47:10