AWS DynamoDB-Trigger mit Lambda in JAVA

Ich versuche, eine in Java geschriebene AWS-Lambda-Funktion für Dynamodb-Stream-Ereignisse auszulösen. Amazon hat einen Leitfaden für das gleiche, mit NodeJS hierhttp: //docs.aws.amazon.com/lambda/latest/dg/wt-ddb-create-test-function.htm

Die Testeingabe für NodeJS (über den obigen Link) sieht aus wie ein SNS-Ereignis. Daher habe ich versucht, die entsprechende SNSEvent-Klasse in Java als Eingabe für meine Handlermethode zu verwenden.

import com.amazonaws.services.lambda.runtime.Context;
import com.amazonaws.services.lambda.runtime.LambdaLogger;
import com.amazonaws.services.lambda.runtime.events.SNSEvent;
import com.amazonaws.services.lambda.runtime.events.SNSEvent.SNSRecord;
import java.util.List;

public class RecomFunction {

    public void handler(SNSEvent event, Context context) {

        LambdaLogger logger = context.getLogger();

        List<SNSRecord> records = event.getRecords();

        if (records != null) {
            for (SNSRecord record : records) {
                if (record != null) {
                    logger.log("SNS record: " + record.getSNS().getMessage());
                }
            }
        }
    }

}

eider gibt record.getSNS () NULL zurück, was zu einer NullPointer-Ausnahme @ führ

Es gibt eine verwandte Frage, es wurde jedoch keine spezifische Antwort gegeben:Setup DynamoDB Trigger using Lambda

Antworten auf die Frage(10)

Ihre Antwort auf die Frage