Почему Table.DeleteItem (PrimaryKey) ведет себя по-разному при использовании с DynamoDblocal против AWS-SDK (фактическаяJAVA

Программисты JAVA общаются здесь
Anonymous
Почему Table.DeleteItem (PrimaryKey) ведет себя по-разному при использовании с DynamoDblocal против AWS-SDK (фактическая

Сообщение Anonymous »

У меня есть ниже код: < /p>
DeleteItemOutcome outcome = table.deleteItem("id", id);
logger.info("DeleteItemOutcome:\n" + outcome);
String deletedItemId = outcome.getDeleteItemResult().getAttributes().get("id").getS();
logger.info("Deleted item id: {}", deletedItemId);
< /code>
Это работает нормально при использовании с фактической службой DynamoDB, но получение нулевого указателя при запуске в локальном использовании с использованием Dynamodblocal. < /p>
Это ошибка: < /p>

Не может вызвать "com.amazonaws.services.dynamodbv2.model.deleteItemresult.getAttributes ()" IS null. < /p>
< /blockquote>
Я смог найти решение, это исправят проблему с нулем: < /p>
DeleteItemSpec deleteItemSpec = new DeleteItemSpec()
.withPrimaryKey("id", id)
.withReturnValues(ReturnValue.ALL_OLD);
DeleteItemOutcome outcome = table.deleteItem(deleteItemSpec);
logger.info("DeleteItemOutcome:\n" + outcome);
String deletedItemId = outcome.getDeleteItemResult().getAttributes().get("id").getS();
logger.info("Deleted item id: {}", deletedItemId);
< /code>
Но я хочу знать причину этого поведения. Примечания к использованию Dynamodblocal ничего не рассказывает об этом.

Подробнее здесь: https://stackoverflow.com/questions/796 ... th-dynamod

Вернуться в «JAVA»