- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
GidAgent adaptGid in Skript
Moin moin,
ich habe gerade ein Script in der Hand, mit dem Redakteure Metadaten von Dateien Ordnerweise bearbeiten kรถnnen. Die Dateien des Ordners werden in eine Liste gesteckt und in eine temporรคre Datenbank gespeichert.
Ich habe im Rahmen der Umstellung von FS-List auf FS-Index das Script bearbeiten mรผssen und muss deshalb รผber den GID-Agent den Eintrรคgen eine GID zuweisen. Das tue ich รผber
gidAgent = context.requireSpecialist(GidAgent.TYPE);
gidAgent.adaptGid(mediumDatasource.getSchema(), Collections.singletonList(mediumEntity), true);
DataAccessSession<Dataset> dataAccessSession = mediumList.createSession(context);
String identifier = dataAccessSession.getIdentifier(mediumDatasource.getDataset(mediumEntity));
Index.Record record = mediumList.create(identifier );
mediumList.add(record);
Leider funktioniert das nur als Admin-Benutzer. Dem Redakteur wird eine Fehlermeldung geworfen:
SecurityException: Access not allowed ....
Gibt es eine Mรถglichkeit, hier als Redakteur eine GID zu erstellen? Bzw., im Rahmen der Ausfรผhrung des Skriptes eine Admin-Rolle anzunehmen?
Mit besten Grรผรen
Nils Knudsen
- Labels:
-
Developers
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Konnte den Fehler lรถsen, indem ich ein .commit() nach der erzeugung der Entity auf der basierenden Session aufrufe. So brauche ich GidAgent nicht.
Aber was mich ggf. noch interessiert ist, ich kann eine Verbindung รผber den ConnectionManager aufbauen und mir dann requireSpecialist aufrufen. Hole ich mir hierรผber den GidAgent, kriege ich nur null zurรผck.
Gibt es eine Mรถglichkeit sich den Agenten zu holen oder zu erstellen?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Konnte den Fehler lรถsen, indem ich ein .commit() nach der erzeugung der Entity auf der basierenden Session aufrufe. So brauche ich GidAgent nicht.
Aber was mich ggf. noch interessiert ist, ich kann eine Verbindung รผber den ConnectionManager aufbauen und mir dann requireSpecialist aufrufen. Hole ich mir hierรผber den GidAgent, kriege ich nur null zurรผck.
Gibt es eine Mรถglichkeit sich den Agenten zu holen oder zu erstellen?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hallo Nils,
ich vermute das liegt in dem Fall daran, dass du keinen projektgebundenen broker nutzt - den musst du dir erst noch besorgen. Wie das geht siehst du z.B. hier:
Viele Grรผรe
Michael

