2013-07-04 29 views
0

我試圖直接從DatastoreService使用ID獲取實體。所以這是我的代碼:未找到與GAE匹配的實體Java

Key repairKey=KeyFactory.createKey("Repair",Integer.parseInt(request.getParameter("ID"))); 

Entity repair=  datastore.get(repairKey); 

結果是這樣的消息:

com.google.appengine.api.datastore.EntityNotFoundException:沒有找到實體相匹配的關鍵:修復(336)

但是這是不可能的,因爲具有此ID的實體存在於數據庫中。

我該如何解決?

+1

的代碼似乎是正確的。我剛剛嘗試過與我的實體,它沒有任何問題。你的實體沒有父母嗎? –

+0

我解決了你的問題。謝謝 – Frank

回答

1

實體修復有一個父實體,所以我糾正這個代碼:

Key keycar= KeyFactory.stringToKey(request.getParameter("keycar")); 
    Key repairKey= KeyFactory.createKey(keycar,"Repair", Integer.parseInt(request.getParameter("ID")));