- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Problem beim Entfernen von Benutzern über die API
Ich habe ein kleines Problem. Ich versuche mit einem Skript bestimmte Benutzer aus einer Gruppe (hier die Administratoren Gruppe) zu entfernen.
Gemäß meiner Logging Ausgaben werden diese auch erfolgreich entfernt und sind auch wenn ich mir das entsprechende Gruppen Objekt mit Hilfe der Beanshell Konsole anschauen nicht mehr der Gruppe zugeordnet. Schaue ich aber im Admin Client sind sie nach wie vor da.
Starte ich dann den Java Client neu und schaue mir hier das entsprechende Gruppenobjekt nochmal in der Beanshellkonsole an sind die zuvor vermeintlich gelöschten Benutzer auch hier wieder da.
Muss ich das Löschen denn nochmal irgendwie extra bestätigen (so in Form eines Commits) damit die Benutzer auch wirklich physikalisch aus der Gruppe entfernt werden. Kann zumindest in der API nix entsprechendes dazu finden.
Ich bin für jeden Tipp dankbar.
Viele Grüße,
Stefan
- Labels:
-
Developers
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Wahrscheinlich fehlt der Aufruf von "save()" auf der Projektinstanz
[EDIT]
Da hat sich der Sourcecode-Post mit meinem zeitlich überschnitten. Es fehlt sowohl das "lock()", "save()" und das "unlock()".
Bitte nach dem "lock()" einen "try .. finally" Block beginnen, das "unlock()" gehört in das "finally".
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hat hier denn wirklich niemand eine Ahnung woran das liegen könnte?
Bin gerade echt ratlos.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
vielleicht hilft es ja, das Skript hier anzuhängen/zu posten, damit sich jemand das anschauen und eine Meinung bilden kann
Gruß
Stefan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Gute Idee! 🙂
Hier der entsprechende Ausschnitt:
project = context.getProject();
projectGroups = project.getGroups();
for(group:projectGroups){
if(group.getName().equals("Administrators")){
users = group.getUsers();
for(i=0;i<users.length;i++){
if(!users[i].getLoginName().equals("Admin")&& !users[i].getLoginName().equals("pmanager")){
if(group.removeUser(users[i])){
context.logInfo("Benutzer "+users[i].getRealname()+" erfolgreich aus Gruppe "+group.getName()+" entfernt.");
}
else{
context.logInfo("Benutzer "+users[i].getRealname()+" konnte nicht aus Gruppe "+group.getName()+" entfernt werden.");
}
}
}
}
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Wahrscheinlich fehlt der Aufruf von "save()" auf der Projektinstanz
[EDIT]
Da hat sich der Sourcecode-Post mit meinem zeitlich überschnitten. Es fehlt sowohl das "lock()", "save()" und das "unlock()".
Bitte nach dem "lock()" einen "try .. finally" Block beginnen, das "unlock()" gehört in das "finally".
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Super, das funktioniert.
Wusste nicht, dass man das Projekt auch locken muss.
Werde es mir merken.

