Closed
Description
I tried to use @DynamoDBDocument to serialize a POJO that looks like this :
`
@DynamoDBDocument
public class Metadata {
Map<Object, Object> metadata;
public Metadata() {
}
public Metadata(Map<Object, Object> metadata) {
this.metadata = metadata;
}
@DynamoDBAttribute
public Map<Object, Object> getMetadata() {
return stateMetadata;
}
public void setMetadata(Map<Object, Object> metadata) {
this.metadata = metadata;
}
}
@DynamoDBTable(tableName = "REPLACED_BY_CONFIG")
public class ProductItem {
private Metadata metadata;
@DynamoDBAttribute
public Metadata getMetadata() {
return metadata;
}
}
`
It throws the following exception :
Caused by: com.amazonaws.services.dynamodbv2.datamodeling.DynamoDBMappingException: not supported; requires @DynamoDBTyped or @DynamoDBTypeConverted
I was able to get this to work by adding the following annotation to the getter method in ProductItem
@DynamoDBTypeConverted(converter = MetadataTypeConverter.class)
I was wondering why I see this behavior ?