When trying to create new Group by writing
Group ng = groupMgr.createGroup("some_group");crowdService.addGroup(ng);
I get "Group already exists in the remote directory".
When using ProjectRoleService to add this Group to a ProjectRole I get "We ca't find 'some_group' in any accessible user directory. Check they're still active and available, and try again."
So I guess I just need to activate this group. How to do it via Java API
A group might exist in a directory without necessarily being exposed to the applications.
One of my current projects involves a client with 10,000 users and 5,000 groups in their AD, but JIRA only sees 400 users and 50 groups because it is limited to one part of the directory.
Could that be the case?
That is what I think it is. One group (from problematic groups) was created (became available in JIRA application) after a user from that group logged in. Probably same would happen with all the groups (I am having trouble creating) if appropriate user would login, howerver I want these groups to be available in application before tha thappens.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
New groups that are exposed to the application should appear on the next synchronisation, as well as when a user logs in and hence uses the group.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Trigger a synchronisation.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
How? Like this?
DirectoryManager directoryManager = ComponentAccessor.getComponent(DirectoryManager.class);
for( Directory directory : directoryManager.findAllDirectories() ){
try{
if( directoryManager.isSynchronisable( directory.getId() )
&& !directoryManager.isSynchronising( directory.getId() )){
directoryManager.synchroniseCache( directory.getId(), SynchronisationMode.INCREMENTAL );
}
} catch( Exception e ){
log.error("", e);
}
}
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
In the logs of the application I am working with I see http://prntscr.com/ga1rth even without the code I wrote above. So I guess synchronisation is happening (it is a scheduled repeating job).
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.