XML kann nicht geparst werden: start tag unexpected character

Hallo!

Ich nutze seit längerem mit großer Zufriedenheit Portfolio Performance. Folgendes Problem tauchte vor kurzem auf: Wenn ich Portfolio Performance öffne, erscheint anstelle meines Portfolios die Fehlermeldung in dem Screenshot, den ich angehängt habe (ist leider abgeschnitten, kriege es nicht besser hin). Soweit ich das beurteilen kann, ist die Fehlermeldung nach „XML kann nicht geparst werden“ anders als in den anderen Posts zu diesem Thema („Start Tag unexpected character \uffd …“).

Folgende ergänzende Hinweise:

  • Das Problem tauchte erstmals auf, nachdem ich ein neues Portfolio (also eine neue XML-Datei) angelegt hatte. Während der Bearbeitung (ich habe mehrere Excel-Imports vorgenommen) war meine schon vorhandene und seit jeher gut funktionierende zweite Portfolio-Datei in einem separaten Tab offen. Beim nächsten Start des Programms erzeugte das neue Portfolio die gezeigte Fehlermeldung.

  • Der Fehler tritt mittlerweile auch für mein sonst immer gut funktionierendes Alt-Portfolio auf.

  • Der Fehler lässt sich kurzfristig mit Hilfe der Backup-Dateien ausbügeln. Wenn ich die aber unter dem alten Namen wieder speichere, tritt das Problem sehr bald wieder auf (anscheinend nicht sofort beim nächsten Programmstart, aber bei einem der nächsten Male danach).

Ich habe Angst, dass das Thema auch auf die Backup-Dateien übergreift. Was kann ich tun? Danke im Voraus!

Screenshot 2020-03-01 at 21.35.59

Wie speicherst Du Deine PP-Daten? Als normales xml oder komprimiert oder verschlüsselt?
Wo speicherst Du das File? Auf einer „richtigen“ Festplatte (HD, SSD), irgendwas mit USB, auf einem NAS, oder in einer Cloud? Ist der Speicherort eventuell auch verschlüsselt?

Poste das entsprechende Logfile.
Windows: C:\Users\DeinUserName\AppData\Local\PortfolioPerformance\workspace.metadata.log
Linux: ~/home/DeinUserName/.PortfolioPerformance/workspace/.metadata/.log
MacOS: ?

Da uFFFD ein Unicode ‚REPLACEMENT CHARACTER‘ ist - hast Du irgendwelche Namen vergeben die sonderbare Zeichen enthalten?

Mit welchem OS arbeitest Du, mit was für Spracheinstellungen?

Unter Linux heisst das locale, bei anderen OS weiss ich nicht wie das heisst.

z.B.
me@mypc:~$ locale
LANG=de_DE.UTF-8
LANGUAGE=de_DE
LC_CTYPE=„de_DE.UTF-8“
LC_NUMERIC=„de_DE.UTF-8“
LC_TIME=„de_DE.UTF-8“
LC_COLLATE=„de_DE.UTF-8“
LC_MONETARY=„de_DE.UTF-8“
LC_MESSAGES=„de_DE.UTF-8“
LC_PAPER=„de_DE.UTF-8“
LC_NAME=„de_DE.UTF-8“
LC_ADDRESS=„de_DE.UTF-8“
LC_TELEPHONE=„de_DE.UTF-8“
LC_MEASUREMENT=„de_DE.UTF-8“
LC_IDENTIFICATION=„de_DE.UTF-8“
LC_ALL=

Hallo ProgFriese! Danke für die schnelle Antwort.

Ich speichere meine PP-Daten als XML-Dateien bei einem Cloudanbieter, der die Dateien verschlüsselt. Ich muss mich erst bei einem Client einloggen, damit die Daten entschlüsselt werden. Das hatte aber bisher immer reibungslos geklappt.

Eine Log-Datei habe ich hochgeladen, weiß aber nicht, ob es die richtige ist (der Ordner heißt „/Applications/PortfolioPerformance.app/Contents/Eclipse/configuration“).

Mit „irgendwelche Namen“ meinst Du im Dateinamen? Nein. Keine Sonderzeichen. Oder meinst Du irgendwo in der Datei? Aber eigentlich auch da nicht.

Ich arbeite mit MacOS 10.14.6

Wenn ich im Terminal „locale“ eintippe, kommt Folgendes:
LANG=
LC_COLLATE=„C“
LC_CTYPE=„UTF-8“
LC_MESSAGES=„C“
LC_MONETARY=„C“
LC_NUMERIC=„C“
LC_TIME=„C“
LC_ALL=

Ich nutze Englisch als Primärsprache.

1547998432985.log (29,0 KB)

Die dürfte falsch sein. Da MacOS ähnlich Linux sein soll, öffne doch mal ein Terminal und schicke
pwd
ab.

Wenn dort jetzt
/home/DeinUserName
erscheint, dann tippe mal
cd .PortfolioPerformance/workspace/.metadata
(incl. Gross/Klein-Schreibung und den Punkten vor P bzw m), und dann
ls -la

Falls Du jetzt ein File namens “.log” siehst (eventuell auch “.bak_0.log”, “.bak_1.log”, etc) dann hast Du den richtigen Ort gefunden.

In dem File “.log” oder in einem File “.bak_?.log” sollte die Meldung “!MESSAGE XML kann nicht geparst werden” zu finden sein. Dieses File war gemeint.

Ob das dann auch weiterhilft, wird wohl einer der Programmierer beantworten können.

Für sowas wäre ich zu paranoid. Wenn schon Cloud, dann nur selbst verschlüsselt, und kein Anbieter hat daran rumzufummeln :wink:

Hallo ProgFriese,

leider scheint sich die .log-Datei für PP auf dem macOS irgendwo anders zu verstecken. Sollte ich das herausfinden, poste ich das hier gerne nochmal allgemeingültig, weil niemand anderes im Forum dieses Problem bisher gehabt zu haben scheint (zumindest habe ich nichts gefunden).

Davon unabhängig habe ich herausgefunden, dass man auch direkt über das Programm ein Fehlerprotokoll erzeugen und speichern kann - ich habe es hier nochmal hochgeladen. Hilft das weiter? Fehlerprotokoll.txt (8,7 KB)

Hätte ich auch drauf kommen können ;-(

Was mich ein bischen irritiert ist die Position dieses \uFFFD
...<price t="2018-03-06" v="519800"/>\n <p2\ufffd...

Normalerweise steht in der xml sowas:

      <prices>
        <price t="2012-09-03" v="1309700"/>
        <price t="2012-09-04" v="1300300"/>
      </prices>

Das \n oben steht für den Zeilenumbruch, nach dem kann eigentlich nur <price oder </prices kommen. Bei Dir steht aber <p2\ufffd oder <p-w\ufffd, also etwas was Du nicht selbst durch verückteste Namensgebung in PP erzeugen könntest.
Also geht meine Vermutung in Richtung Ent-/Verschlüsselungsfehler - aber vielleicht meldet sich ja noch jemand mit einer Idee.

Den Speicherort zumindest für eine lesbare Kopie auf einem lokalen unverschlüsselten Medium zu wählen, ist aber vermutlich nicht die schlechteste Idee. Good Luck.

Es scheint, dass das Problem irgendwie mit der Verschlüsselung zu tun hat. Wenn ich die Portfolio-Dateien irgendwo anders hinkopiere, tritt der Fehler (bis jetzt) nicht mehr auf. Warum das vorher 2 Jahre lang trotz Verschlüsselung funktioniert hat, kann ich mir wiederum nicht erklären.

Danke für die Hilfe!

Dieses Thema wurde automatisch 30 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Nachrichten mehr erlaubt.