Я пытаюсь получить доступ к объекту по ключу, но я получаю исключение каждый раз, когда пытаюсь его получить.Не удается получить сущность из хранилища данных по ключу
datastore.put(en);
String key = en.getKey();
Затем ключ отправляется в другой сервлет, как String, как 4644337115725824. И когда я пытаюсь получить Entity этим кодом
Key key = KeyFactory.createKey("User", req.getParameter("key"));
Entity en = datastore.get(key);
На последней строке у меня есть EntityNotFoundException и «Нет сущность была найдена под ключ: User ("4644337115725824") ' Что случилось?
Убедитесь, что ключевые матчи с ключом в хранилище данных, EntityNotFoundException возникает только тогда, когда в хранилище данных нет соответствия – Bharath
. Ключевые матчи. –
'Entity.getKey()' возвращает 'Key', а не' String', поэтому, если вы хотите получить идентификатор от ключа для передачи другому сервлету, вам нужно вызвать 'Key.getID()' (для идентификатора 'Long') или' Key.getName() 'для идентификатора' String'. Что вы видите в средстве просмотра хранилища данных для этого объекта? – tx802