SQS Java лямбда получает пустой объект - PullRequest
0 голосов
/ 29 января 2019

Получение нулевого объекта в лямбде SQS, когда я проталкиваю объект в SQS через код Java.

Я нажимаю номер заказа, когда заказ создается в SQS.

сервер регистрирует в журналах следующее: 2019-01-29 23:22:13 [threadPoolTaskExecutor-1] DEBUG cassqs.MessageMD5ChecksumHandler - Тело сообщения: {"orderNumber": "201901292322090"}

нокогда я вытащил его через лямбду.Я получаю ноль в номере заказа. Ввод: Order [orderNumber = null] (tostring объекта) в лямбда-коде AWS.

Я не понимаю, как порядковый номер не переводится должным образом.

SQSpush-код:

SendMessageRequest send_msg_request = .... .withMessageBody (objectMapper.writeValueAsString (order)) ...

Aws лямбда:

открытый класс BookingSQSHandler реализует RequestHandler {

public String handleRequest(final Order order, final Context context) {
    context.getLogger().log("Input: " + order);
   // send email and return

}

получение номера пустого порядка в лямбда-функции aws.

опрашиваемое сообщение из SQS, там все нормально, но не уверен, чтопроисходит с лямбдой. enter image description here

1 Ответ

0 голосов
/ 30 января 2019

Какова структура и содержание вашего Order класса?

Возможно, свойство orderNumber не может быть сопоставлено с методами или свойствами класса Order.Возможно, вам придется внести некоторые изменения в сам класс Order, например, реализовать установщик или убедиться, что у вас есть соответствующие конструкторы.

...