Hallo,
ich würde gerne Inhalte aus einer Datenbank aus dem Projekt A in die Datenbank aus dem Projekt B kopieren.
Projekt B hat zugleich einen Remotezugang auf die Medieninhalte aus dem Projekt A.
Mein Script funktioniert bereits zu 99%. Ich habe nurnoch ein Problem mit den Remotemedien.
Mein Code sieht wie folgt aus:
us = context.getUserService();
cs = us.getStore(Store.CONTENT_STORE, false);
contentSource = cs.getContent2ByName("i_news");
schemaTable = contentSource.getSchema();
Session orSession = schemaTable.getSession();
Select select = orSession.createSelect("I_News");
...
entity_news.setValue("pic_press_release",entity_press_release.getValue("image"));
...
"entity_news" ist ein neuer Datensatz in dem Projekt B. (Wird später per orSession.commit() gespeichert)
"entity_press_release" ist der Datensatz aus dem Projekt A. (Wird an einer anderen Stelle ermittelt, hab das hier weg gelassen)
Die Felder "pic_press_release" und "image" sind beide vom Typ "FS_REFERENCE".
Das Problem was ich jetzt habe ist, dass ich das Objekt aus dem Projekt B nicht dem Objekt aus Projekt A
gleich setzen darf.
Der Inhalt von "image" könnte z.B.
PIC_PRESS_RELEASE
<CMS_VALUE name="cs_picture" tag="FS_REFERENCE"><LANG id="§" set="1"><UID>testobjekt</UID><UIDTYPE>MEDIASTORE_LEAF</UIDTYPE><REMOTE/><SECTION></SECTION></LANG></CMS_VALUE>
Das Feld "pic_press_release" erwartet allerdings
PIC_PRESS_RELEASE
<CMS_VALUE name="cs_pic_press_release" tag="FS_REFERENCE"><LANG id="§" set="1"><UID>testobjekt</UID><UIDTYPE>MEDIASTORE_LEAF</UIDTYPE><REMOTE>internet</REMOTE></LANG></CMS_VALUE>
Kann ich den Wert entity_press_release.getValue("image") noch nirgendwie manipulieren? z.B. replace von Zeichenketten ???
Hat jemand eine Idee?