Apache тайлы 3 - как получить доступ к области сеанса
Я хотел бы использовать ViewPreparer для изменения меню макета, в зависимости от объема сеанса. Я не знаю, как получить доступ к области сеанса. Внутри средства подготовки представления я реализую такой метод:
public void execute(Request tilesContext, AttributeContext attributeContext)
Я потратил много времени, пытаясь получить доступ к сессии без успеха. Единственная вещь, связанная с сеансом, к которой мне удалось получить доступ, tilesContext.getAvailableScopes()
, Любая помощь приветствуется.
2 ответа
Пожалуйста попробуйте это:
public void execute(Request tilesContext, AttributeContext attributeContext){
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
HttpSession session = request.getSession();
// your code here
}
public void execute(Request tilesContext, AttributeContext attributeContext){
Map<String, Object> request = tilesRequest.getContext("request");
request.get("{attributeName}"); // this will return your object in request
}
Вы можете изменить запрос на сеанс, если вы хотите получить атрибут сеанса.