/** * Returns a populated {@link UserDetails} object. The username is first retrieved from the * database and then mapped to a {@link UserDetails} object. */ public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { try { org.krams.domain.User domainUser = userRepository.findByUsername(username); boolean enabled = true; boolean accountNonExpired = true; boolean credentialsNonExpired = true; boolean accountNonLocked = true; return new User( domainUser.getUsername(), domainUser.getPassword().toLowerCase(), enabled, accountNonExpired, credentialsNonExpired, accountNonLocked, getAuthorities(domainUser.getRole().getRole())); } catch (Exception e) { throw new RuntimeException(e); } }