protected Layout getPortalPageLayout(long userId, long groupId, String portalPageName) throws Exception { Layout portalPageLayout = null; boolean privateLayout = true; List<Layout> layouts = LayoutLocalServiceUtil.getLayouts(groupId, privateLayout); for (Layout layout : layouts) { if (layout.getName(Locale.US).equals(portalPageName)) { portalPageLayout = layout; } } if (portalPageLayout == null) { long parentLayoutId = LayoutConstants.DEFAULT_PARENT_LAYOUT_ID; String type = LayoutConstants.TYPE_PORTLET; boolean hidden = false; String friendlyURL = "/" + portalPageName.toLowerCase(); portalPageLayout = ServiceUtil.addLayout( userId, groupId, privateLayout, parentLayoutId, portalPageName, portalPageName, portalPageName, type, hidden, friendlyURL); } return portalPageLayout; }