为了账号安全,请及时绑定邮箱和手机立即绑定

我怎么知道 url 导致了 portlet spring mvc liferay

我怎么知道 url 导致了 portlet spring mvc liferay

蓝山帝景 2023-06-14 16:15:53
我有一个基于 spring mvc 的 portlet,它的内容是根据 @RenderMapping 方法返回的视图生成的。是否有关于如何捕获导致 portlet 呈现的 url 的解决方案。因为我正在使用将字段返回到此 portlet 的支付系统,并且我想在 #jsp 页面中显示它们,所以在这种情况下,我应该根据支付服务器返回的字段呈现另一个 jsp。
查看完整描述

1 回答

?
aluckdog

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 的哪个方面。


查看完整回答
反对 回复 2023-06-14
  • 1 回答
  • 0 关注
  • 104 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信