Liebe/-r Experte/-in,
als Hobby versuche ich mich gerade an meiner ersten Android-Anwendung und muss mit dieser ein XML parsen. Da das XML an sich nicht wirklich groß ist, dafür aber recht kompliziert, will ich auf SAX als Parser verzichten. Stattdessen probiere ich, das XML in Java-Klassen bzw. Objekte zu deserialisieren. Allerdings habe ich dabei folgendes Verständnisproblem.
In dem zu parsenden XML kann auf so ziemlich allen Ebenen folgendes Element auftreten:
Beispiel:
<?xml version="1.0" encoding="UTF-8"?>
Da aber prinzipiell ja jede XML-Ebene einer Klasse entsprechen kann (
public class ebene1
usw.), muss ich dann für jede einzelne Klasse auch die Umsetzung für das Err-Element deklarieren? Da gibt es doch bestimmt eine sauberere Lösung?
Momentan umgehe ich das folgendermaßen: ich habe eine Klasse
ApiError
erzeugt. Alle anderen Klassen () erben von dieser, damit sie das Err-Element behandeln können.
public class ApiError {
private String code;
private String level;
private String text;
public get/set...() {}
}
Aber auch das scheint mir noch zu aufwändig. Zumal ich dann nicht weiß, welche Klasse eine Instanz von ApiError erzeugt hat, wenn das Element im XML-Baum auftaucht.
Ich hoffe, dass ich mein Problem einigermaßen verständlich darstellen konnte. Falls nicht, bitte einfach nachfragen Freue mich über jeden Hinweis.
Vielen Dank,
Robert