Как программно выйти из приложения websphere portal 8.5, используя код Java? - PullRequest
0 голосов
/ 04 июля 2018

У меня очень хорошо работает приложение портала websphere. Текущая команда выхода доступна в теме по умолчанию. Я хотел знать, как выйти из портала из исходного кода Java / Spring? Можем ли мы вызвать один и тот же командный метод, например "выйти" из серверного Java-кода? У меня есть функция смены пароля. После смены пароля я хочу выйти из системы.

1 Ответ

0 голосов
/ 04 июля 2018

Ниже приведен список элементов, которые вам нужно попробовать из вашего портлета

final PortletStateManager mgr = getPortletStateManager(request, response);
urlFactory = mgr.getURLFactory();
url = urlFactory.newURL(com.ibm.portal.state.Constants.EMPTY_COPY); //If no state from the current request to be preserved
LogoutActionAccessorFactory logoutFct = mgr.getAccessorFactory(LogoutActionAccessorFactory.class);
LogoutActionAccessorController logoutCtrl = logoutFct.newLogoutActionController(url.getState());logoutCtrl.dispose();
finalUrl = url.writeDispose(new StringWriter()).toString();

То же самое можно сделать и с сервлетом. Вы увидите соответствующие AccessorFactory и AccessorController в документации портала.

EDITED

PortletStateManager получается из PortletStateManagerService, который снова получается из PortletServiceHome с использованием поиска JNDI.

Правильный способ выяснить это - просмотреть документы Java на портале. Обратитесь к интерфейсу PortletStateManagerService. В разделе комментариев четко рассказывается, как его получить.

Вы можете настроить Java документы Portal здесь <portal-install-root>\WebSphere\PortalServer\doc\Javadoc\spi_docs

...