peter_rossa
I'm new here

setPermission für Elemente setzen

Hallo Community.

ich versuche schon seit einiger Zeit Rechte für Elemente (Inhalts-Ordner, Struktur-Ordner) zu setzen, jedoch bekomme ich immer eine Fehlermeldung, dass ich setPermission nicht auf einen PageRefFolder anwenden kann. Siehe folgendes Beispiel:

// get the project and the individual group

project = context.getProject();

projectGroups = project.getGroups();

for(group:projectGroups) {

    if(group.getName().equals("Everyone")) {

        myGroup = group;

    }

}

pagePerm = sitestore.getStoreElement("www_test_de", IDProvider.UidType.SITESTORE_FOLDER);

     currentPermissions = pagePerm.getPermission(group);

    currentPermissions.forbid(Permission.CAN_META_SEE);

    currentPermissions.forbid(Permission.CAN_META_CHANGE);

    pagePerm.setPermission();

//save the project to make sure that all the updates are committed

project.save();

Weiß jemand, wo bei mir der Fehler liegt?

5 Replies
tklein
I'm new here

Bitte mal die genaue Fehlermeldung posten. Anhand des Codes tippe ich mal darauf, dass diese sowas ausagt wie ist gibt keine Methode StoreElement.setPermission() da es die Methode ohne Parameter nicht gibt.

Zu verwenden wäre das hier

0 Kudos

die genaue Fehlermeldung ist folgende:

de.espirit.firstspirit.access.script.ExecutionException: Error in method invocation: Method setPermission() not found in class'de.espirit.firstspirit.store.access.sitestore.PageRefFolderImpl' at line 94

Ich habe mir auch schon gedacht, dass ich das falsche Objekt verwende, aber weis nicht, wie ich sonst die Rechte setzen kann.

Auf Ihren Link kann ich leider nicht zugreifen. Könnten Sie eventuell ein Codebeispiel oder zumindes die Vorgehensweise etwas näher erklären, falls mein Ansatz falsch ist?!

Vielen Dank im Voraus.

0 Kudos

hmm der Link sollte eigentlich - mit den üblichen Zugangsdaten für die Dokus - erreichbar sein.

Die Fehlermeldung stimmt mit meiner Vermutung über ein.

es gibt z.b. die Methode StoreElement.setPermission(Group group,                 Permission permission)

für das Beispiel wäre es also:

pagePerm.setPermissionm(myGroup, currentPermissions);

Das project.save() ist nicht nötig da nichts am Projekt verändert wurde. Stattdessen muss das StoreElement ge und endlockt, gespeichert und ggf. freigegen werden.

peter.rossa schrieb:

Auf Ihren Link kann ich leider nicht zugreifen. Könnten Sie eventuell ein Codebeispiel oder zumindes die Vorgehensweise etwas näher erklären, falls mein Ansatz falsch ist?!

Vielen Dank im Voraus.

Important: You need an extra login for the following documents:

  • Login: FIRSTDoku
  • Password: FSdown_V2

Vielen dank für die Hilfe, genau das hatte ich gesucht.

0 Kudos