У меня работает. Вот мой тестовый код: -
CustomUserDetails class
public class CustomUserDetails implements UserDetails {
public String getFirstName() {
return "hello";
}
...
}
Пользовательский тег в JSP
Следующий тег возвращает hello
.
<security:authentication property="principal.firstName" />
Кстати, убедитесь, что вы не помещаете getFirstName()
в анонимный класс, потому что это не сработает.
То, что я пытаюсь здесь сказать, не делайте этого: -
...
return new UserDetails() {
// adding extra method here will not work
public String getFirstName() {
return "hello";
}
public String getUsername() {
return "test";
}
...
};
... сделать это: -
...
// this class implements UserDetails and contains getFirstName()
CustomUserDetails csd = new CustomUserDetails();
csd.set...(...)
...
return csd;