यह एक पिछले प्रश्न से संबंधित है जो मैंने यहां पहले पूछा था
GSON का उपयोग करके JSON पार्स कर रहा है
मैं उसी JSON को पार्स करने की कोशिश कर रहा हूं, लेकिन अब मैंने अपनी कक्षाओं को थोड़ा बदल दिया है।
{
"lower": 20,
"upper": 40,
"delimiter": " ",
"scope": ["${title}"]
}
मेरा वर्ग अब जैसा दिखता है:
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;
}
}
यह कोड एक अपवाद फेंकता है,
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
अपवाद समझ में आता है, क्योंकि मेरे पिछले प्रश्न के समाधान के अनुसार, GSON को उम्मीद है कि Enum वस्तुओं को वास्तव में बनाया जाएगा
${title}("${title}"),
${description}("${description}");
लेकिन चूंकि यह कृत्रिम रूप से असंभव है, इसलिए अनुशंसित समाधान, वर्कअराउंड क्या हैं?