Điều này liên quan đến một câu hỏi trước đó mà tôi đã hỏi ở đây trước đó
Phân tích cú pháp JSON bằng Gson
Tôi đang cố gắng phân tích cú pháp cùng một JSON, nhưng bây giờ tôi đã thay đổi các lớp của mình một chút.
{
"lower": 20,
"upper": 40,
"delimiter": " ",
"scope": ["${title}"]
}
Lớp của tôi bây giờ trông giống như:
public class TruncateElement {
private int lower;
private int upper;
private String delimiter;
private List<AttributeScope> scope;
// getters and setters
}
public enum AttributeScope {
TITLE("${title}"),
DESCRIPTION("${description}"),
private String scope;
AttributeScope(String scope) {
this.scope = scope;
}
public String getScope() {
return this.scope;
}
}
Mã này ném một ngoại lệ,
com.google.gson.JsonParseException: The JsonDeserializer EnumTypeAdapter failed to deserialized json object "${title}" given the type class com.amazon.seo.attribute.template.parse.data.AttributeScope
at
Ngoại lệ có thể hiểu được, bởi vì theo giải pháp cho câu hỏi trước của tôi, GSON đang mong đợi các đối tượng Enum thực sự được tạo như
${title}("${title}"),
${description}("${description}");
Nhưng vì điều này là không thể về mặt cú pháp, các giải pháp, cách giải quyết được đề xuất là gì?