JSF 2ポートレットを開発していますが、グローバルセッション変数を取得する必要があります。
リクエストは次の場合に正常に機能します。
FacesContext facesContext = FacesContext.getCurrentInstance();
PortletRequest request = (PortletRequest) facesContext.getExternalContext().getRequest();
しかし、セッションはnullです:
PortletSession session = request.getPortletSession(false);
このコードをliferay-portlet.xmlファイルに入れると正常に機能しますが、IPCを実行できません:ポートレット間通信
<!-- Portlet session -->
<private-request-attributes>false</private-request-attributes>
<private-session-attributes>false</private-session-attributes>
最後のコードを使用せずに変数セッションを取得および設定するにはどうすればよいですか?
ありがとう
今日iiはこれで試しました:
FacesContext facesContext = FacesContext.getCurrentInstance();
PortletRequest request = (PortletRequest) facesContext.getExternalContext().getRequest();
HttpServletRequest httpRequest = PortalUtil.getHttpServletRequest(request);
HttpSession session = httpRequest.getSession(true);
System.out.println(session.getAttribute("XXXX"));
しかしnullです