Je prends sur un code existant et essaie d'écrire un lambda pour travailler sur une fonction.AWS Lambda Sérialisation objet dans un autre module
La fonction ressemble
public Task doTask(Message message) throws Exception {
LOG.debug("debug message");
// ... more code
}
Cependant, le paramètre est défini Message
(avec accesseurs) dans un autre module (et transmis sous forme de dépendance). En conséquence, je reçois l'erreur:
{
"errorMessage": "An error occurred during JSON parsing",
"errorType": "java.lang.RuntimeException",
"stackTrace": [],
"cause": {
"errorMessage": "com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of com.mywebsite.messaging.Message, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information\n at [Source: [email protected]; line: 1, column: 1]",
"errorType": "java.io.UncheckedIOException",
"stackTrace": [],
"cause": {
"errorMessage": "Can not construct instance of com.mywebsite.messaging.Message, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information\n at [Source: [email protected]; line: 1, column: 1]",
"errorType": "com.fasterxml.jackson.databind.JsonMappingException",
"stackTrace": [
"com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:148)",
"com.fasterxml.jackson.databind.DeserializationContext.instantiationException(DeserializationContext.java:892)",
"com.fasterxml.jackson.databind.deser.AbstractDeserializer.deserialize(AbstractDeserializer.java:139)",
"com.fasterxml.jackson.databind.ObjectReader._bindAndClose(ObjectReader.java:1511)",
"com.fasterxml.jackson.databind.ObjectReader.readValue(ObjectReader.java:1102)"
]
}
}
}
Comment est-il possible de sérialisation cet objet qui est même pas dans mon module?
Toute aide serait grandement appréciée.
Merci!