daniel_philippi
Occasional Collector

Script: FS_REFERENCE Feld auslesen und in ein XML Feld in DB übertragen

Hallo Zusammen.

In einem Script möchte ich den Inhalt einer Eingabekomponente in eine interne CMS Datenbank schreiben. Das klappt bei String, Zahlen, Date, ... aber nicht bei komplexeren Elementen.

Z.B. möchte ich ein FS_REFERENCE Feld auslesen und in ein XML Feld in der Datenbank schreiben. Bei FS_REFERENCE handelt es sich um ein Medium aus der Medienverwaltung. Ich möchte danach mit dem Feld in der DB arbeiten wie wenn es "normal" vom Redakteur befüllt wurde.

Im Error Log bekomme ich jetzt die Nachricht:

Target exception: java.lang.IllegalArgumentException: de.espirit.or.SchemaException: illegal type class de.espirit.firstspirit.store.access.mediastore.MediaImpl for attribute 'image' - correct type is class de.espirit.firstspirit.client.editorcomponent.EditorWrapper

Nun meine Frage, wie kann ich denn so ein Medium in diesem XML Feld speichern. Kann ich irgendwie das Medium in ein EditorWrapper umwandeln?

Viele Grüße und danke schonmal für die Hilfe.

Daniel

11 Replies

Das Thema wurde kürzlich unter Skript regelmäßig starten diskutiert.

Perfekt mit einer eigenen Connection geht es auch "high-level" ohne read-only!

Das hier war dabei die essentielle Info von hier https://community.e-spirit.com/thread/2863:

Holger Höbble schrieb:

...

- Lösung?

Den user Service, mit dem Du den globalStore holst, nicht read-only über den context sondern über eine eigene connection holen:

connection.getProjectById(context.getProject().getId()).getUserService();

Außerdem war es wichtig zu wissen, dass diese Verbindung bereits besteht und man sie direkt nutzen kann!

Vielen dank,

Gruß,

Daniel

0 Kudos