2015-09-25 1 views
0

У меня есть следующее сопоставление запроса, которое используется для страницы индекса моего приложения при входе в систему. У меня есть аргумент resolver для моего типа Person, который дает мне меня в настоящее время зарегистрированный пользователь. Во время работы в отладке я могу проверить currentUser и посмотреть полномочия пользователя, но итоговая коллекция authorities всегда пуста, когда она добавляется в модель. Поэтому я как бы почесываю голову, почему. Я использую JPA для получения информации пользователя из базы данных.Получение списка полномочий пользователя возвращает пустой список при сопоставлении запросов root/index после входа в систему

@RequestMapping(value = "/", method = RequestMethod.GET) 
public String index(Model model, Person currentUser) { 
    Collection<String> authorities = currentUser.getAuthorities().stream().map(GrantedApplication::getAuthority).collect(Collectors.toList()); 
    model.addAttribute("authorities", authorities); 
    return "index"; 
} 

ответ

0

Так получается на моем Person типа, мне просто нужно было установить добывающий придаток нетерпеливый на власти, и это работает ...

Перед

@OneToMany 
@JoinColumn(name = "UACODE", referencedColumnName = "USRCODE") 
private Collection<GrantedApplication> authorities; 

После

@OneToMany(fetch = FetchType.EAGER) 
@JoinColumn(name = "UACODE", referencedColumnName = "USRCODE") 
private Collection<GrantedApplication> authorities; 
Смежные вопросы