Questions & Answers

cntritsos
I'm new here

storeElement Update von Exportierte Zip Datei?

Guten Tag,

ich versuche per Skript Inhalte zu updaten aus einer Exportierte Zip Datei.

Dazu benutze ich die

de.espirit.firstspirit.access.store.StoreElement.importStoreElement(ZipFile, ImportHandler) Funktion. Leider werden nur die Absatzvorlagen bzw. neue Seiten angelegt aber ohne die Inhalte. Ich sehe auch keine Fehler im Log. Hat jemand eine Idee?

Gibt es auch einen Ersatz fรผr die Deprecated Funktion?

update(ZipFile exportFile, ImportHandler importHandler)

Viele GrรผรŸe

Christos

0 Kudos
7 Replies
pavone
I'm new here

Hallo Christos,

welche genaue FirstSpirit Version ist bei euch im Einsatz?

Im JavaDoc zu importStoreElement heiรŸt es "Imports the first root node from the given zip exportfile".

Daneben gibt es auch noch importStoreElements, zu der es heiรŸt "Imports all root nodes from the given zip exportfile." Hast du schon mal letztere Methode versucht?

Fรผr die update-Methode gibt es keinen Ersatz.

Viele GrรผรŸe

Tim

0 Kudos

Hallo Tim,

das verhalten habe ich in FS 5.1.415 und auch in FS 5.2.3.111. Beide funktionen haben das gleiche Ergebniss. Pages werden hinzugefรผgt aber ohne Inhalte.

element=context.getElement(); // hier wird Script auf einen PageFolder ausgefรผhrt

File file = new File("c:\\test2.zip");

try {

    ZipFile zip=new ZipFile(file);

    //element.setLock(true);

    element.importStoreElement(zip, new ImportHandler() {

....

0 Kudos

Hallo Christos,

probier doch mal die import-Methode nur auf dem Store-Root auszufรผhren. Wir machen das intern immer so.

Da aber der Zip-Export bzw. -Import im Fall des Namenskonfliktes immer neue Objekte erzeugt (sicher weiรŸ ich das bei Templates bzw. dem Template-Store), eignet sich diese Methode nicht sonderlich gut um bereits vorhandene Inhalte zu aktualisieren.

Dazu gibt es andere Mรถglichkeiten wie CorporateContent bzw. Feature-Zip oder Externe Synchronierung.

Viele GrรผรŸe

Marian

0 Kudos

Hallo Christos,

hat dir Marians Antwort weiter geholfen? In diesem Fall wรคre es super, wenn Du seine "richtige Antwort" entsprechend markierst, damit auch andere Community-Teilnehmer diese auf den ersten Blick finden. Solltest Du zwischenzeitlich eine eigene Lรถsung gefunden haben, wรคre es nett, wenn Du diese hier bereitstellst.

Viele GrรผรŸe

Tim

0 Kudos

Es hat leider nicht funktioniert. Generell wird die Seite neu angelegt falls die bereits existiert (ref_1,ref_2 etcโ€ฆ) was auch ok ist aber die Inhalte werden nicht mit importiert.

Die vorgeschlagenen Lรถsungen kรถnnen in meinen Fall nicht angewendet werden.

Ich habe mir die Logs ausgeben lassen fรผr jede Funktion des Handlers und da kommt ein Warning nach dem call afterImortData.

WARN  06.06.2016 09:35:06.904 (de.espirit.firstspirit.store.access.LazyChildList): Element with id 2940360 (parent=2940359) not found!

setImportElementCount: 1

afterStoreElementImport: (<PAGESTORE id="1465198506873"/>)

afterExternalAttributeImport: (<PAGESTORE id="1465198506873"/>)

xml ausgabe:

<PAGE editor="2709320" id="2940359" name="test_seite_w2d9p8ofcc6y" pagetemplate="149" revision="160099" translated="DE"><LANG displayname="test Seite" language="DE"/><BODY editor="2709320" id="2940360" name="content" revision="160099"/></PAGE>

afterImportData: (store: <PAGESTORE id="1465198506873"/>)

WARN  06.06.2016 09:35:06.904 (de.espirit.firstspirit.store.access.LazyChildList): Element with id 2940360 (parent=2940359) not found!

xml: <PAGE editor="2709320" id="2940359" name="test_seite_w2d9p8ofcc6y" pagetemplate="149" revision="160104" translated="DE"><LANG displayname="test Seite" language="DE"/></PAGE>

store: <PAGESTORE id="1465198506873"/>

afterAdjustAttributes:

WARN  06.06.2016 09:35:06.954 (de.espirit.firstspirit.store.access.LazyChildList): Element with id 2940360 (parent=2950332) not found!

xml:

<PAGE editor="2709320" id="2950332" name="test_seite_w2d9p8ofcc6y" 
pagetemplate="149" revision="160104" translated="DE"><LANG displayname="test Seite" language="DE"/></PAGE>

store: <PAGESTORE editor="2709320" id="2776197" perm="2775956:2047,2775957:515,2775959:2047,2775960:2047" releaseRevision="1" releasedby="2776198" revision="160108" uid="root" workflowPerm="w1349-g2775957,w1388-g2775957"/>

0 Kudos

Hallo Christos,

wenn du dein exportiertes Zip รผber bestimmte Store-Root-Knoten importierst, dann sollten auch die korrekten Elemente importiert werden. Wenn du beispielsweise einen Export machst von einer Seitenreferenz, werden sich Seitenreferenz und Seite darin befinden. Die Vorlage wird (meines Wissens nach) nicht mit exportiert. Wenn du importierst, solltest du das auf dem PageStore-Root machen, dann sollte die Seite importiert werden - wenn bereits belegt, mit einem neuen Referenznamen.

Der Import von Vorlage und Inhalt gleichzeitig ist so mit der einfachen Export-Funktion nicht vorgesehen. Du mรผsstest also einzelne Exporte machen, einmal fรผr deine Inhalte und einmal fรผr deine Vorlagen.

Den speziell von dir gemeldeten Fehler kรถnnen wir so erstmal nicht nachvollziehen - hierfรผr mรผssten wir genauere Angaben haben welche Elemente du im Store wie vorliegen hast und wie sie exportiert werden. Eventuell kannst du uns deinen Export auch zur Verfรผgung stellen?

Generell sei aber noch einmal angemerkt, dass CorporateContent oder Externe Synchronisierung fรผr dich wohl eher das Werkzeug der Wahl darstellen sollten.

GrรผรŸe,

Hannes

0 Kudos

Hallo Christos,

ist dieses Posting nach wie vor aktuell? Benรถtigst du weitere Hilfe oder konnte Hannes Antwort weiterhelfen?

Sollte das Problem weiterhin bestehen, mรถchten wir dich darum bitten, dich an unseren Technical Support zu wenden.

Viele GrรผรŸe

Michaela

0 Kudos

Type a product name