有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在velocity模板中获取Liferay portlet实例id

我试图添加一个指向velocity模板的链接,该模板在可实例化的portlet中调用一个操作。看起来像这样

<a href="/mypage?p_p_id=displayportlet_WAR_myportlets_INSTANCE_ia9r3lKTG3YL&p_p_lifecycle=0&p_p_state=pop_up&p_p_mode=view&p_p_col_id=column-1&p_p_col_pos=1&p_p_col_count=2&_displayportlet_WAR_myportlets_INSTANCE_ia9r3lKTG3YL_struts.portlet.action=%2Fview%2FdisplayCart">click here</a>

有没有一种方法可以使用javascript或一些内置函数使用portlet名称(ia9r3lKTG3YL)获取实例id(displayportlet_WAR_myportlets),或者我真的需要硬编码它?此模板用于同一站点的多个实例,每个站点上的实例ID都不同


共 (2) 个答案

  1. # 2 楼答案

    对于仍在寻找答案的用户,您可以使用$themeDisplay变量在Velocity模板中获取portlet实例Id:

    $themeDisplay.getPortletDisplay().getId();

    希望这有帮助