:
당신이 당신의 포틀릿이 첨가 된 같은 페이지에 포틀릿을 찾으려면, 당신이 당신의 포틀릿을 사용할 themeDisplay
객체의 사용을 만들 수 있습니다 또는 JSP :
// In JSP
List<String> portletIdList = themeDisplay.getLayoutTypePortlet().getPortletIds();
// In portlet class
ThemeDisplay themeDisplay = (ThemeDisplay) portletRequest.getAttribute(WebKeys.THEME_DISPLAY);
List<String> portletIdList = themeDisplay.getLayoutTypePortlet().getPortletIds();
일부 다른 페이지에 포틀릿을 찾으려면, 당신은 세 가지의 즉를 알아야한다; friendly-url
, groupId
이 페이지는 public-page
또는 사이트 (또는 지역)의 private-page
인지, 그래서 여기에 코드입니다 :
portletIdList
// 101543 is the SiteId, if it is a public-page then "false" and "/search" is the friendlyURL
LayoutTypePortlet layoutTypePortlet = LayoutTypePortletFactoryUtil.create(LayoutLocalServiceUtil.getFriendlyURLLayout(101543, false, "/search"));
List<String> portletIdList = layoutTypePortlet.getPortletIds();
가 instanceIds를 완비 portletIds이 포함되어 있습니다. 이제 목록에서 페이지의
iframe-portlet
을 필터링하여
com.liferay.portal.util.PortletKeys.IFRAME
으로 필터링하면
48_INSTANCE_rPv9
과 같은 형식이됩니다.