1 回答
TA贡献1847条经验 获得超7个赞
RENDER_PHASE您可以通过以下两种方式之一获取导致调用 portlet 生命周期的 URL :
import com.liferay.portal.kernel.theme.ThemeDisplay;
import com.liferay.portal.kernel.util.WebKeys;
...
ThemeDisplay themeDisplay = (ThemeDisplay)renderRequest.getAttribute(WebKeys.THEME_DISPLAY);
String portalURL = themeDisplay.getPortalURL();
-或者-
import com.liferay.portal.kernel.util.PortalUtil;
...
String portalURL = PortalUtil.getCurrentURL(renderRequest);
但是,我不建议检查 URL 的字符串表示形式。Portlet API 的设计方式使得javax.portlet.RenderURL调用 Portlet 生命周期的可以是特定于供应商的实现细节。例如,来自 Liferay 的呈现 URL 将不同于来自 Apache Pluto 的呈现 URL。相反,鼓励 Portlet 开发人员使用 Portlet API 的特性来获取请求参数、属性等的值。
也许您可以在您的问题中添加一些详细信息,准确描述您所关注的 URL 的哪个方面。
添加回答
举报