Доступ к http-сеансу в портлете

#java #jsp #session #portlet

#java #jsp #сеанс #портлет

Вопрос:

Страница jsp сохраняет значения в сеансе, используя следующий код

 session.setAttribute("UserType", "customer");
  

К этим значениям необходимо получить доступ в портлете jboss. Используя следующий код для доступа к переменной:

         String id = (String) renderRequest.getPortletSession().getAttribute("LoginId", PortletSession.APPLICATION_SCOPE);
    System.out.println("FROM SESSION: "   id);
  

В качестве выходных данных я получаю null. Что мне нужно сделать, чтобы получить доступ к переменной сеанса в портлете?

Комментарии:

1. Вы настраиваете UserType и пытаетесь выполнить выборку LoginId ? Поэтому это значение равно null?

Ответ №1:

Из того, что я видел, в JBoss требуется дополнительная настройка, чтобы сеанс портлета и httpsession могли взаимодействовать: Глава 8. Конфигурация кластеризации

Проверьте раздел: 8.3.1. Репликация сеанса портала

 <web-app>
   <description>JBoss Portal</description>
   <!-- Comment/Uncomment to enable portal session replication -->
   <distributable/>
   ...
</web-app>
  

Вы также можете посмотреть обсуждение в сообществе JBoss на ту же тему: PortletSession vs HttpSession

Комментарии:

1. Это устаревшая версия portal.