steve77 Geschrieben 19. Dezember 2008 Geschrieben 19. Dezember 2008 Hallo, ich möchte ein xml-File mit DOM einlesen. Das XML-File hat folgendes (Beispielshaftes) aussehen. <?xml version="1.0" encoding="UTF-8"?> <filepattern test="test" name="test" pattern="test" "> </filepattern> <filepattern test2="test2" name="test2" pattern="test2" </filepattern> Wenn ich nun den File wie folgft einlesen will bekomme ich immer eine Fehlermeldung: Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Passed in key must select exactly one node: filepattern //einlesen des xml-files XMLConfiguration baseConfig = Utils.getConfig(fileName); HierarchicalConfiguration localConfig = baseConfig .configurationAt("filepattern"); Gibt es eine Möglickeit auf die verschiedenen Einträge im XML-File mit dem gleichen Namen ("Filepattern") zuzugreifen? Vielen Dank Gruß steve Zitieren
Faustenator Geschrieben 19. Dezember 2008 Geschrieben 19. Dezember 2008 Ein Root-Element in deinem XML-File würde dir schonmal helfen. Z.B. <?xml version="1.0" encoding="UTF-8"?> <filepatterns> <filepattern test="test" name="test" pattern="test" "> </filepattern> <filepattern test2="test2" name="test2" pattern="test2" </filepattern> </filepatterns> Du könntest dir dann also das Node "filepatterns" raussuchen und anschließend alle Child-Elemente, welche dann ja deine FilePatterns sein würden. Zitieren
TheTobi Geschrieben 20. Dezember 2008 Geschrieben 20. Dezember 2008 Also die Frage ist, ob das wirklich sinnvoll ist alle Attribute gleich zu benennen? und wie Faustenator schon sagt ein rootelement wäre ganz hilfreich, dsa einlesen ist kein problem, da sind die namen völlig egal. Nur ob es auch sinnvoll ist, ist die Frage. Du solltest dir einfach ne NodeList erstellen und dann kannst du mit .getNextChild() oder .getNextSibling den DOM Baum abarbeiten. Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.