【发布时间】:2014-01-26 21:13:54
【问题描述】:
我仍然无法使用 GAE 的密钥/ID。我不断收到错误消息:找不到与密钥匹配的实体:密钥(Medewerker(5201690726760448))。实体存在于数据存储中,我检查了多次。
我试图简单地获取具有特定 ID 的用户对象。在我的 servlet 中,我有以下代码:
Long userId = Long.parseLong(req.getParameter("user"));
User user = userDao.getUser(userId);
上面的代码出现了错误。在 userDaoOfyImpl.java 我有以下方法'getUser':
public Gebruiker getGebruiker(Long id) {
Gebruiker result = null;
Gebruiker leerling = (Gebruiker) ofy.get(Leerling.class, id);
Gebruiker medewerker = (Gebruiker) ofy.get(Medewerker.class, id);
Gebruiker stagebedrijf = (Gebruiker)ofy.get(StageBedrijf.class, id);
//Gebruiker instantie returnen
if(leerling != null) {
result = leerling;
} else if(medewerker != null) {
result = medewerker;
} else if(stagebedrijf != null) {
result = stagebedrijf;
}
return result;
}
变量是荷兰语,但我想你们知道这个想法。上述方法在不同的类中搜索匹配该ID的用户,然后返回。
问题是我得到了上面显示的错误,我真的很沮丧,我做错了什么?是我使用ID的方法还是方式还是……?
提前致谢!
【问题讨论】:
标签: java google-app-engine servlets key google-cloud-datastore