Vielleicht hat sich die Struktur oder der Inhalt der JSON-Daten geändert. Es könnte sein, dass LVal.Clone an dieser Stelle nicht mehr
immer ein TJSONObject ist.
Du könntest möglicherweise LVal.Clone.ClassName prüfen, wenn der Fehler auftritt.
Zur Abfrage könnte man den Typ vorab mit "is" testen, was aber dann zweimal Clone aufruft, und das ist auch nicht so super.
Edit: Ich sehe, Du hast schon selbst geantwortet, schicke ich aber trotzdem noch ab ...
Das hier sollte aber OK sein
Delphi-Quellcode:
LVal := LParam.GetValue('JSONData');
if Assigned(LVal) and not LVal.Null then
begin
// Sichere Zuweisung mit Clone
FJSONData := TJSONObject(LVal.Clone) as TJSONObject;
end
else
FJSONData := nil;