Передать параметр из ловушки страницы JSP в портлет времени выполнения в той же ловушке
У меня есть перехват страницы jsp, поскольку я включил портлет времени выполнения, мне нужно передать экземпляр портлета из перехвата страницы jsp в портлет времени выполнения, который находится в том же перехватчике страницы jsp. Как я могу передать идентификатор экземпляра портлета во время выполнения портлет? заранее спасибо.
Я пробовал следующие вещи: я получаю пустой экземпляр портлета
В крючке страницы jsp:
<liferay-portlet:runtime portletName="ContentCustomization_WAR_ContentCustomizationportlet" queryString="instance='<%=themeDisplay.getPortletDisplay().getInstanceId()%>'" />
в методе render() портлета ContentCustomization:
String instance = httpRequest.getParameter("instance");
в JSP-странице ContentCustomizationportlet
String instance=renderRequest.getParameter("instance");
1 ответ
Решение
В крючке страницы jsp:
<c:set var="webcontentInstanceId" scope="request" value="<%=themeDisplay.getPortletDisplay().getInstanceId()%>"/>
<liferay-portlet:runtime portletName="ContentCustomization_WAR_ContentCustomizationportlet" queryString="&instanceId=${webcontentInstanceId}" />
В вашем JSP получить как:
String instance=renderRequest.getParameter("instanceId");
если вы хотите попасть в класс действий
HttpServletRequest httpRequest2 = PortalUtil.getHttpServletRequest(renderRequest);
String instance=httpRequest2.getParameter("instanceId");