Questions & Answers

SOLVED
apetrov
I'm new here

Version wiederherstellen nach Objekt verschieben

Jump to solution

Hallo Community, wenn ich in einem Store ein Element in der Tiefe verschiebe, kann ich danach das Vaterelement nicht mehr auf frรผhere Revisionen zurรผckfรผhren. Ich habe folgenden Ausganszustand:

1.png

Danach verschiebe ich das Verzeichnis Impressum in der Tiefe:

2.png

Nun mรถchte ich das Vaterelement ("headernavigation") auf eine รคltere Revision wiederherstellen um so den alten Zustand wiederzubekommen. Fรผhre ich das Wiederherstellen rekursiv (mit Wiederherstellung der Kindelemente) aus, erhalte ich folgende Fehlermeldung:

3.png

Wie kรถnnte man das programmatisch mit der API lรถsen?

Ich versuche das ganze auch รผber die API zurรผckzusetzen und benutze dafรผr die AccessUtil.revert(...) Methode. Allerdings kann ich dort diese Exception nicht abfangen, da sie nicht geworfen wird. Was also kann man tun?

GrรผรŸe Artem Petrov

0 Kudos
1 Solution

Accepted Solutions

Hallo,

das Problem wurde inzwischen in FS5 behoben und wird mit dem FS5.1-Release verfรผgbar sein.

Viele GrรผรŸe

Michaela

View solution in original post

0 Kudos
8 Replies
MichaelaReydt
Community Manager

Hallo,

ich habe versucht, den Fehler im Mithras-Demo-Projekt per manuellem Verschieben  und Zurรผcksetzen nachzuvollziehen. Initial sind in diesem Projekt alle Struktur-Ordner freigegeben.

Bei mir taucht die Exception unerklรคrlicherweise nicht bei allen Ordnern auf.

Verschiebe ich den Ordner "Stellenangebote" in den Ordner "Unternehmen" und setze anschlieรŸend den Vaterknoten "Ueber uns" zurรผck, funktioniert dies ohne Probleme.

Verschiebe ich jedoch den Ordner "Solarspeicher" in den Ordner "Netzanschlusseinheiten" und versuche anschlieรŸend den Ordner "Produkte" zurรผckzusetzen. erhalte ich ebenfalls die angegebene Exception.

Ich werde hierfรผr ein internes Ticket รถffnen. (Edit: interne ID #137616)

GruรŸ,

Michaela

Exception:

INFO:  02.05.2013 15:20:46.708 starting revert on server in project '11137' in store 'SITESTORE' for element '11271'

INFO:  02.05.2013 15:20:46.708 settings: checkOnlyMode=false, revision=19626

INFO:  02.05.2013 15:20:46.716 found 0 missing outgoing reference(s)

ERROR: 02.05.2013 15:20:46.718 an unexpected error occurred

FSVersion=5.0_BETA.308.56412#2226;JDK=1.7.0_13 32bit Oracle Corporation;OS=Windows 7 6.1 x86;Date=02.05.2013 15:20:46

java.lang.IllegalStateException: element with ID 12757 cannot be reverted, parent has changed

    at de.espirit.firstspirit.server.storemanagement.StoreManagerImpl.revert(StoreManagerImpl.java:1246)

    at de.espirit.firstspirit.store.access.DefaultStoreElement.revert(DefaultStoreElement.java:1684)

    at de.espirit.firstspirit.server.storemanagement.ServerRevertAction.call(ServerRevertAction.java:168)

    at de.espirit.firstspirit.server.storemanagement.ServerRevertAction.call(ServerRevertAction.java:50)

    at de.espirit.firstspirit.server.action.ServerActionManagerImpl$ServerActionCallableWrapper.call(ServerActionManagerImpl.java:415)

    at de.espirit.firstspirit.server.action.ServerActionManagerImpl$ServerActionCallableWrapper.call(ServerActionManagerImpl.java:396)

    at de.espirit.firstspirit.server.ExecutionManagerImpl$ExtendedCallable.call(ExecutionManagerImpl.java:545)

    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)

    at java.util.concurrent.FutureTask.run(FutureTask.java:166)

    at de.espirit.common.util.BoundedExecutorService$RunnableWrapper.run(BoundedExecutorService.java:419)

    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)

    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)

    at java.util.concurrent.FutureTask.run(FutureTask.java:166)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

    at java.lang.Thread.run(Thread.java:722)

    at de.espirit.common.util.SuspendableThread.run(SuspendableThread.java:37)

ERROR: 02.05.2013 15:20:46.718 revert process finished with errors

Hallo Artem,

hat Dir die Antwort von Michaela bei diesem Posting weiter geholfen, so dass dieser Thread geschlossen werden kann oder benรถtigst du noch weitere Antworten? Um den aktuellen Stand des oben erwรคhnten Tickets herauszufinden kannst Du dich mit der ID an den Helpdesk wenden.

Viele GrรผรŸe

Renรฉ

0 Kudos

Das internen Ticket ist noch offen, weshalb es fรผr diesen Besonderen Fall derzeit noch keine konkrete Lรถsung gibt.

0 Kudos

Hallo,

ich wรผrde fรผr die Bearbeitung des Problems gern auf das Helpdesk verweisen, da das Helpdesk der Ansprechpartner fรผr interne Tickets ist und nach deren Bearbeitung auch das entsprechende Ergebnis kommuniziert.

Diesen Thread wรผrde ich daher an dieser Stelle schlieรŸen, auch wenn das interne Ticket noch offen ist.

Viele GrรผรŸe

Michaela

0 Kudos

@Michaela: Ich halte das "als beantwortet markieren" hier fรผr problematisch und bin daher anderer Meinung als du. Bitte nicht vergessen, das es auch andere Community-Mitglieder gibt, die diesen Beitrag รผber die รผber die Suche erreichen kรถnnen.

@Artem Petrov: Kannst du das wieder rรผckgรคngig machen? Ich wรผrde hier gerne den Status "Beantwortet" erst dann vergeben, wenn es eine "Lรถsung" gibt.

Peter
0 Kudos
Peter_Jodeleit
Crownpeak employee

Aktueller Zwischenstand:

Unseren Erkenntnissen nach kommt der Fehler, wenn die wiederhergestellte Revision doppelte Knoten erzeugen wรผrde, d.h. die Revision stellt einen Kind-Knoten wieder her, der im aktuellen Stand noch (z.B. nach einer Verschieboperation) oder wieder (durch eine andere Wiederherstellungsoperation) an anderer Stelle existiert.

In diesem Fall bricht die Wiederherstellung ab.

Peter
0 Kudos

Hallo,

das Problem wurde inzwischen in FS5 behoben und wird mit dem FS5.1-Release verfรผgbar sein.

Viele GrรผรŸe

Michaela

0 Kudos

Hallo,

ich habe einen รคhnlichen Fall. Allerdings wurde in meinem Fall der Knoten nicht verschoben sondern gelรถscht.

In den Globalen Einstellungen wurde in diesem Fall ein Absatz aus einem Contentelement gelรถscht, welche nun nicht Wiederhergestellt werden kann.

INFO:  03.02.2014 16:28:09.162 starting revert on server in project '852727' in store 'GLOBALSTORE' for element '853402'

INFO:  03.02.2014 16:28:09.162 settings: checkOnlyMode=false, revision=82898

INFO:  03.02.2014 16:28:09.162 found 0 missing outgoing reference(s)

ERROR: 03.02.2014 16:28:09.240 an unexpected error occurred

FSVersion=5.0.427.60223#3503;JDK=1.6.0_23 64bit Sun Microsystems Inc.;OS=Windows 2003 5.2 amd64;Date=03.02.2014 16:28:09

java.lang.IllegalStateException: element with ID 1479957 cannot be reverted, parent has changed

          at de.espirit.firstspirit.server.storemanagement.StoreManagerImpl.revert(StoreManagerImpl.java:1255)

          at de.espirit.firstspirit.store.access.DefaultStoreElement.revert(DefaultStoreElement.java:1690)

          at de.espirit.firstspirit.server.storemanagement.ServerRevertAction.call(ServerRevertAction.java:169)

          at de.espirit.firstspirit.server.storemanagement.ServerRevertAction.call(ServerRevertAction.java:51)

          at de.espirit.firstspirit.server.action.ServerActionManagerImpl$ServerActionCallableWrapper.call(ServerActionManagerImpl.java:415)

          at de.espirit.firstspirit.server.action.ServerActionManagerImpl$ServerActionCallableWrapper.call(ServerActionManagerImpl.java:396)

          at de.espirit.firstspirit.server.ExecutionManagerImpl$ExtendedCallable.call(ExecutionManagerImpl.java:545)

          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

          at java.util.concurrent.FutureTask.run(FutureTask.java:138)

          at de.espirit.common.util.BoundedExecutorService$RunnableWrapper.run(BoundedExecutorService.java:419)

          at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)

          at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

          at java.util.concurrent.FutureTask.run(FutureTask.java:138)

          at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

          at java.lang.Thread.run(Thread.java:662)

          at de.espirit.common.util.SuspendableThread.run(SuspendableThread.java:37)

ERROR: 03.02.2014 16:28:09.240 revert process finished with errors

Suche ich nun nach der oben genannten ID: 1479957 erhalte ich auch eine Exception:

Admin (Admin), session: 3652197272804369673, project: 852727, ip: 192.168.111.190

(de.espirit.firstspirit.client.AbstractGuiHost): ExceptionHandler.uncaughtException() - java.lang.ClassCastException: de.espirit.firstspirit.store.access.globalstore.GCAFolderImpl cannot be cast to de.espirit.firstspirit.store.access.pagestore.PageImpl

FSVersion=5.0.427.60223#3747;JDK=1.7.0_51 32bit Oracle Corporation;OS=Windows XP 5.1 x86;Date=03.02.2014 17:32:10

java.lang.ClassCastException: de.espirit.firstspirit.store.access.globalstore.GCAFolderImpl cannot be cast to de.espirit.firstspirit.store.access.pagestore.PageImpl

          at de.espirit.firstspirit.store.access.pagestore.SectionImpl.getPermission(SectionImpl.java:606)

          at de.espirit.firstspirit.store.access.DefaultStoreElement.getPermission(DefaultStoreElement.java:1324)

          at de.espirit.firstspirit.client.dialog.AttributeSearchDialog.searchId(AttributeSearchDialog.java:343)

          at de.espirit.firstspirit.client.dialog.AttributeSearchDialog$4.run(AttributeSearchDialog.java:251)

Gibt es hierfรผr eine Lรถsung?

0 Kudos

Type a product name