*/
package org.argeo.security.ui.admin.editors;
+import java.util.ArrayList;
+
import javax.jcr.Node;
import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import org.eclipse.ui.IWorkbench;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.forms.editor.FormEditor;
-import org.springframework.security.GrantedAuthority;
+import org.springframework.security.core.GrantedAuthority;
/** Editor for an Argeo user. */
public class ArgeoUserEditor extends FormEditor {
userProfile = UserJcrUtils.getUserProfile(session, username);
if (userAdminService.userExists(username)) {
- userDetails = (JcrUserDetails) userAdminService
- .loadUserByUsername(username);
+ try {
+ userDetails = (JcrUserDetails) userAdminService
+ .loadUserByUsername(username);
+ } catch (Exception e) {
+ throw new ArgeoException("Cannot retrieve userDetails for "
+ + username, e);
+ }
} else {
- GrantedAuthority[] authorities = {};
try {
userDetails = new JcrUserDetails(session, username, null,
- authorities);
+ new ArrayList<GrantedAuthority>());
} catch (RepositoryException e) {
throw new ArgeoException("Cannot retrieve disabled JCR profile");
}
JcrUtils.logoutQuietly(session);
super.dispose();
}
-
+
/* DEPENDENCY INJECTION */
public void setUserAdminService(UserAdminService userAdminService) {
this.userAdminService = userAdminService;
}
-
+
public void setRepository(Repository repository) {
try {
session = repository.login();