В настоящее время я использую объект HttpSession по умолчанию как в контроллерах, так и на страницах gsp :
В контроллерах:
...
session.mykey = anObject; // adding an object to session
...
if (session.otherkey) { // performing some checking
В GSP:
...
<g:if test="${session.mykey}">
...
я хотел бы иметь функцию «запомнить меня». Широ уже встроил его. Однако, насколько я понял, для этого мне нужно использовать собственный режим сеанса shiro (в Config.groovy: security.shiro.session.mode = "native"). По умолчанию он сохраняет состояние сеанса, поэтому объекты будут оставаться в сеансе до истечения срока действия файла cookie или выхода пользователя из системы.
Правильно ли я понимаю?
Тогда мне придется изменить мои контроллеры на это:
def shiroSession = SecurityUtils.subject.session
shiroSession.setAttribute("mykey",anObject)
....
if (shiroSession.getAttribute("otherkey") ){
И мои взгляды на это:
<g:if test="${SecurityUtils.subject.session.getAttribute('mykey')}">
Итак, мои вопросы: