Я следующий код, чтобы получить HttpSession
от HttpServletRequest
использованием ExternalContext
в нашей среде на базе Icefaces(1.8.2) & JSF(1.2)
Liferay:HttpSession является нулевым (случайным образом) при извлечении из HttpServletRequest с помощью ExternalContext
ExternalContext externalContext = FacesContext.getCurrentInstance().getExternalContext();
HttpServletRequest httpServletRequest = (HttpServletRequest) (externalContext.getRequestMap().get("com.liferay.portal.kernel.servlet.PortletServletRequest");
HttpSession httpSession = httpServletRequest.getSession();
выше фрагмент кода свободно работает Liferay 6_1_0_CE_GA1
, как httpSession
всегда заселен.
Но, тот же код в Liferay 6_2_1_CE_GA2
, я случайно получаю httpSession
как null
. Не могу понять, какая разница!
У меня также есть попытка получить httpServletRequest
с помощью PortalUtil.getOriginalServletRequest
, а затем получить httpSession
, но это не решит проблему.
[*** Cross Опубликовано ***] (https://www.liferay.com/community/forums/-/message_boards/message/69896568) –