dommes89 Geschrieben 19. September 2008 Geschrieben 19. September 2008 Guten Tag, Also nach dem, nun endlich behobenen Problem aus meinem anderen Thema , habe ich nun ein kleines weiteres Problem. Und zwar Navigieren wir ja in dem Skript aus dem anderen Thema durch eine XML-Datei mit Hilfe des XMLParsers... so nun ist da aber eine Stelle im XML-File zu der wir es nicht schaffen hinzunavigieren. Hier mal der Aufbau dieser Stelle: <item> <customfields> <customfield id="customfield_10055" key="bla"> <customfieldname>BLABLABLO</customfieldname> <customfieldvalues> [COLOR="Red"]<customfieldvalue>BLUBBLUB</customfieldvalue>[/COLOR] </customfieldvalues> </customfield> <customfield id="customfield_103456" key="blu"> <customfieldname>BLABLABLU</customfieldname> <customfieldvalues> [COLOR="Red"]<customfieldvalue>BLUBBLUBBLUB</customfieldvalue>[/COLOR] </customfieldvalues> </customfield> </customfields> </item> So... das ist das Schema des Problems welches in der XML-Datei ist... Was wir wollen, also den wert der uns am ende ausgegeben werden soll ist der text im Bereich "customfieldvalue" (rot) ... und wir wollen irgendwie mit hilfe der id in customfield dort hin navidieren, bekommen dies aber nicht so wirklich hin... hoffe da kann uns jemand helfen.. vielen dank
Schiller256 Geschrieben 19. September 2008 Geschrieben 19. September 2008 Du kannst dir per XPath-Ausdruck deinen benötigten Knoten selektieren und dann deinen Text ausgeben. //customfield[@id='customfield_10055']/customfieldvalues/customfieldvalue
dommes89 Geschrieben 19. September 2008 Autor Geschrieben 19. September 2008 hm irgendwie klappt das nich so recht... kannst du mal n einfaches beispiel welches funktioniert draus machen? z.b. einfach so mit println zum beispiel.. wär cool
Schiller256 Geschrieben 19. September 2008 Geschrieben 19. September 2008 Da ich mich bis jetzt nicht mir Groovy auseinander gesetzt habe hier mal der Java Code. DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); Document doc = builder.parse("src/forum.xml"); XPath xpath = XPathFactory.newInstance().newXPath(); NodeList nodes = (NodeList) xpath.evaluate("//customfield[@id='customfield_10055']/customfieldvalues/customfieldvalue", doc, XPathConstants.NODESET); for (int i = 0; i < nodes.getLength(); i++) { System.out.println(nodes.item(i).getTextContent()); }
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden