NullPointerException beim Auslesen

Status
Nicht offen für weitere Antworten.

pyr0t0n

Aktives Mitglied
Aloah,

es ist mal wieder soweit ich brauche eure Hilfe. Wird nur ein kleiner Fehler sein aber ich komme nicht drauf. Also ich habe folgende Datei mit dem Inhalt (nur ausschnitt sind ca 1000 zeilen)

Code:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<TrainingCenterDatabase xmlns="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2 http://www.garmin.com/xmlschemas/TrainingCenterDatabasev2.xsd">

  <Activities>
    <Activity Sport="Biking">
      <Id>2008-03-29T12:44:27Z</Id>
      <Lap StartTime="2008-03-29T12:44:27Z">
        <TotalTimeSeconds>1537.9200000</TotalTimeSeconds>
        <DistanceMeters>10000.0000000</DistanceMeters>
        <MaximumSpeed>10.4699993</MaximumSpeed>
        <Calories>347</Calories>

so nun will ich die Id auslesen und in der Konsole anzeigen lassen, das soll dann über diesen bsp Code den ich zum Probieren benutzen funktionieren.

Code:
public class Main {

    public String filename = "C:\\test.tcx";
    
    public Main()
    {
        try {
            Document doc = new SAXBuilder().build(filename);
            Element TrCeDb = doc.getRootElement();
            Element activities = TrCeDb.getChild("Activities");
            Element activity = activities.getChild("Activity");
            System.out.println(activity.getChild("Id").getText());
        } catch (JDOMException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(Main.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
    public static void main(String[] args) {
        Main h = new Main();
    }
}

Und ich kriege hier immer eine NullpointerException bei Element activity = activities.getChild("Activity"); hier Zeile 11

Ich weis nicht warum und hoffe ihr könnt mir Helfen.

Mit freundlichen Grüßen
pyr0
 

Java_IRL

Mitglied
Hi..

ich kann dir zwar nicht wirklich das Problem lösen, aber dich vielleicht ein Stück weiter bringen.

Das Problem des ganzen ist die zweite Zeile in deiner Datei:

Code:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<TrainingCenterDatabase xmlns="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.garmin.com/xmlschemas/TrainingCenterDatabase/v2 http://www.garmin.com/xmlschemas/TrainingCenterDatabasev2.xsd">

  <Activities>
    <Activity Sport="Biking">
      <Id>2008-03-29T12:44:27Z</Id>
      <Lap StartTime="2008-03-29T12:44:27Z">
        <TotalTimeSeconds>1537.9200000</TotalTimeSeconds>
        <DistanceMeters>10000.0000000</DistanceMeters>
        <MaximumSpeed>10.4699993</MaximumSpeed>
        <Calories>347</Calories>

Sieht die Datei wie folgt aus, funktioniert dein Code:

Code:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<TrainingCenterDatabase>

  <Activities>
    <Activity Sport="Biking">
      <Id>2008-03-29T12:44:27Z</Id>
      <Lap StartTime="2008-03-29T12:44:27Z">
        <TotalTimeSeconds>1537.9200000</TotalTimeSeconds>
        <DistanceMeters>10000.0000000</DistanceMeters>
        <MaximumSpeed>10.4699993</MaximumSpeed>
        <Calories>347</Calories>

Vielleicht hat's ja geholfen.

Gruß
 

pyr0t0n

Aktives Mitglied
komisch.... problem ist halt das ich die datei so bekomme

gibts da ne möglichkeit das irgendwie so umzubauen das es funktioniert ?

EDIT: Stimmt so auch net habs bei mir auch nochmal probiert dann krieg ich folgenden fehler

Code:
SCHWERWIEGEND: null
org.jdom.input.JDOMParseException: Error on line 12 of document file:///C:/test.tcx: The prefix "xsi" for attribute "xsi:type" associated with an element type "AverageHeartRateBpm" is not bound.
        at org.jdom.input.SAXBuilder.build(SAXBuilder.java:501)
        at org.jdom.input.SAXBuilder.build(SAXBuilder.java:928)
        at tcxconverter.Main.<init>(Main.java:30)
        at tcxconverter.Main.main(Main.java:42)
Caused by: org.xml.sax.SAXParseException: The prefix "xsi" for attribute "xsi:type" associated with an element type "AverageHeartRateBpm" is not bound.
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:334)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2740)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
        at org.jdom.input.SAXBuilder.build(SAXBuilder.java:489)
        ... 3 more
Caused by: org.xml.sax.SAXParseException: The prefix "xsi" for attribute "xsi:type" associated with an element type "AverageHeartRateBpm" is not bound.
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
        at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:174)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:388)
        at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanStartElement(XMLNSDocumentScannerImpl.java:334)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2740)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:645)
        at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:140)
        at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:508)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
        at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
        at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
        at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205)
        at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522)
        at org.jdom.input.SAXBuilder.build(SAXBuilder.java:489)
        at org.jdom.input.SAXBuilder.build(SAXBuilder.java:928)
        at tcxconverter.Main.<init>(Main.java:30)
        at tcxconverter.Main.main(Main.java:42)

EDIT2: Naja ok wenn ich den kleinen geposteten teil als datei nehme gehts, nimm ich aber meine ganze komm ich auf den oben genannten fehler.
 

Escorter

Bekanntes Mitglied
Das Peroblem ist, dass er die angegebenen Pfade zur Überprüfung der Datei nicht finden kann.

Du könnstest die ersten zwei Zeilen der Datei vor dem parsen verändern, dass die Zeile angepasst ist und dann in der von Java_IRL beschriebenen Form ist.

Löst das dein Problem?

Gruß,
Esco
 

pyr0t0n

Aktives Mitglied
problem ist ja wenn ich wie oben beschrieben diese lange Zeile abändere tritt der fehler weiter unten auf und er sagt mir das er diese XSI klamotten in der langen zeile nicht findet.
 

pyr0t0n

Aktives Mitglied
nein das ist der äußere tag ders einmal pro datei da. nur anscheind müssen diese XSI klamotten da drin stehen bleiben
 
G

Guest

Gast
denke mal ich mchs dann bisschen anders ich finde einfach keine lösung dazu habe mir nun folgende methode geschrieben um die Tags um die daten die ich brauche zu entfernen

Code:
    public String tagsEntfernen(String str)
    {
        String tmp = "";
        tmp = str.substring(str.indexOf(">")+1, str.indexOf("<", 1));
        return tmp;
    }

und Arbeite dann mit index nummern da alle Dateien ja gleich sind. Lese die datei halt in eine Liste ein lösche alle leeren Zeilen raus und kann dann über die vorher festgelegten index nummern die für mich wichtigen daten auslesen ^^

bisschen umständlich aber ich weis es derzeit nicht anders.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
M ..item(i).getNodeValue() => Nullpointerexception XML & JSON 9
J JAXB NullPointerException im ContextFinder XML & JSON 6
M NullPointerException bei Einlesen XML XML & JSON 3
A NullPointerException bei leerem Element XML & JSON 4
W Ungleiches Escaping beim Marshalling XML & JSON 8
S Hilfe beim RDF-Graphen XML & JSON 0
R Beim Serialisieren fehlt die letzte Zeile XML & JSON 5
N Probleme bei der Formatierung beim Einfügen und löschen über DOM XML & JSON 7
A Leeres Array beim Auslesen von XML-Datei XML & JSON 4
L Jackson JSON: Probleme beim einlesen XML & JSON 1
A XML-Fehler beim Prefix von xmlns XML & JSON 2
K Beim Parsen einer XML-Datei Connection timed out XML & JSON 4
G Langsam beim SAX-Parsen - woran liegts? XML & JSON 2
A Fehler beim Erzeugen eines XML-Schema XML & JSON 4
B Validierung nur beim einlesen oder auch beim schreiben? XML & JSON 4
D JAXBException beim Marshaller XML & JSON 4
M Read / write Problem beim ByteStrom XML & JSON 2
whitenexx Problem beim parsen von Facebook XML XML & JSON 3
J Dateinamen beim Start auslesen XML & JSON 8
F Hilfe beim bearbeiten von XML elemente XML & JSON 3
N XStream ConversionException beim Deserialisieren in (Hibernate)Objekt XML & JSON 6
hdi Probleme beim Erstellen einer XML XML & JSON 7
F Probleme beim html parsen mit tagsoup XML & JSON 4
M Probleme beim Parsen eines gefilterten XML-Dokuments XML & JSON 6
G Problem beim schreiben von XML in eine File XML & JSON 2
L Reihenfolge beim xml Datei parsen einhalten? XML & JSON 8
H JAXB Probleme beim Unmarshalling XML & JSON 3
sylo Beim Erzeugen einer XML Datei auch die XML Struktur erzeugen? XML & JSON 11
B Problem beim löschen von ChildNodes aus einem XML-DOM XML & JSON 3
E JDOM - Problem beim Zusammenfügen zweier Dateien XML & JSON 2
N Hilfe beim Einstieg in EMF XML & JSON 6
D Das Programm hängt etwa 5 Sekunden beim Aufruf der parse-Methode XML & JSON 6
D Tabs/Einrückungen der XML-Elemente gehen beim Schreiben verloren XML & JSON 5
T Problem beim Parsen von Attribut xmlns="urn:com:test&qu XML & JSON 6
G XML Tag beim Einlesen manipulieren XML & JSON 2
J Problem beim XML-Lesen XML & JSON 2
S Probleme beim erstellen einer Jar XML & JSON 12
N jdom problem beim lesen von child elementen XML & JSON 5
M Performance beim Binding XML & JSON 2
C SAX Probleme beim lesen XML & JSON 4
D Probleme beim SAX parsing XML & JSON 4
E XOM setzen von XML-Schema declaration beim erzeugen XML-File XML & JSON 2
byte Probleme beim Parsen von XHTML-Datei XML & JSON 4
J Fehler beim laden einer .xml XML & JSON 3
G DOCTYPE Problem beim Transformer/TransformerFactory etc. XML & JSON 13
P OutOfMemoryError beim Einlesen einer XML-Datei XML & JSON 7
P Problem beim erstellen eines neuen Elements (JDOM) XML & JSON 5
S JDOM-Kein indent beim XMLOutputter XML & JSON 4
C Zeile herausfinden in der ein Fehler beim Einlesen entsteht XML & JSON 3
V Datenverlust nach sortieren (nur beim serialisieren) XML & JSON 4
S Problem beim Erstellen eines pdfs XML & JSON 3
R Problem beim Auslesen von Attributen XML & JSON 4
R JAVA und DOM, probleme beim einfügen von elementen ?????? XML & JSON 6
L JSON auslesen und Labels in GUI verwenden XML & JSON 13
M json page 2 auslesen XML & JSON 1
J Auslesen der Länge einer XML-Datei in Android Studio XML & JSON 8
Kanda Sorata Eingabefelder von Excel Dateien auslesen XML & JSON 1
K XML vernünftig auslesen XML & JSON 9
K XML Datei erstellen und Daten daraus in Java auslesen XML & JSON 6
H SOAPBody auslesen XML & JSON 0
B XML auslesen, benötige Hilfe XML & JSON 13
I Liste in YAML Datei speichern und wieder auslesen XML & JSON 1
W XML einlesen und Attribute auslesen XML & JSON 1
M Json auslesen XML & JSON 7
K XML Auslesen, wie abspeichern? XML & JSON 32
D Attribute aus XML Auslesen XML & JSON 5
W Kindelemente mit JDOM eines bestimmten Attributes auslesen XML & JSON 6
R Apache POI: Gezieltes Auslesen von Zellen XML & JSON 2
S XMl auslesen:@ output ? XML & JSON 1
Z Verschachtelte XML auslesen XML & JSON 3
C JDOM: Value ohne Unterelemente auslesen XML & JSON 1
C XPath: Alle Kinder in einer Schleife auslesen XML & JSON 2
I XML IDs auslesen, erst X dann Y XML & JSON 2
S XML - rekursives auslesen - Zeilenumbruch als NodeValue? XML & JSON 3
O XML richtig auslesen XML & JSON 7
Kenan89 XML Tag-ID auslesen mit getElementById XML & JSON 2
J Excel zeilenweise auslesen - POI XML & JSON 5
J Excel Zellen auslesen - automatischer Stopp bei leerer Zelle XML & JSON 2
I XPath Namensräume und auslesen einzelner Knoten XML & JSON 3
S SVG auslesen und darstellen XML & JSON 5
G xpath: in Kindelement zwei Attribut-Werte auslesen XML & JSON 2
G xpath: Inhalt eines Kindelements auslesen XML & JSON 2
1 Html tabelle auslesen??? XML & JSON 6
JanUlrich Tabelle auslesen XML & JSON 2
A XSl mit JDom auslesen XML & JSON 1
J Anzahl der Elemente in einem XML-Dokument auslesen XML & JSON 7
K XMl auslesen XML & JSON 19
P Poi /XSSF : Excel-Tabelle auslesen XML & JSON 2
S XSD-Datei zulässige Werte auslesen XML & JSON 3
D rss auslesen XML & JSON 2
S Attribute von Elementen auslesen mit XPath XML & JSON 2
M Große Datei auslesen/in dieser suchen XML & JSON 2
M RSS-Datei auslesen von Yahoo Webservice XML & JSON 4
N Google Wetter XML (nur current_condition) auslesen mit Java XML & JSON 15
eQuest XML Jaxen Attribute auslesen XML & JSON 2
E XML Datei mit DOM auslesen (Text mit Attributen) XML & JSON 2
P jdom XML-Encoding auslesen XML & JSON 12
H XML Attribute auslesen XML & JSON 5
Nicer Bestimmten Wert aus einer XML Auslesen XML & JSON 34
L XML Daten auslesen und in Tabelle (Array) speichern XML & JSON 1

Ähnliche Java Themen


Oben