import com.liferay.portal.kernel.model.Group; import com.liferay.portal.kernel.model.Layout; import com.liferay.portal.kernel.model.LayoutTypePortlet; import com.liferay.portal.kernel.service.GroupLocalServiceUtil; import com.liferay.portal.kernel.service.LayoutLocalServiceUtil; import com.liferay.layout.page.template.service.LayoutPageTemplateStructureLocalServiceUtil; import com.liferay.portal.kernel.service.ServiceContext; import com.liferay.portal.kernel.service.ServiceContextFactory; import com.liferay.portal.util.PropsValues; String siteName = "guest"; try { ServiceContext serviceContext = ServiceContextFactory.getInstance( actionRequest); long userId = serviceContext.getUserId(); long companyId = serviceContext.getCompanyId(); Group group = GroupLocalServiceUtil.fetchGroup(companyId, siteName); long groupId = group.getGroupId(); String layoutTemplateId = PropsValues.DEFAULT_LAYOUT_TEMPLATE_ID; Layout layout = LayoutLocalServiceUtil.addLayout( userId, groupId, false, 0, "test", "", "", LayoutConstants.TYPE_PORTLET, false, "", serviceContext); LayoutTypePortlet layoutTypePortlet = (LayoutTypePortlet)layout.getLayoutType(); layoutTypePortlet.setLayoutTemplateId( userId, layoutTemplateId); LayoutLocalServiceUtil.updateLayout( groupId, false, layout.getLayoutId(), layout.getTypeSettings()); Layout layoutWithDraftStatus = LayoutLocalServiceUtil.addLayout( userId, groupId, false, 0, "test2", "", "", LayoutConstants.TYPE_PORTLET, false, "", serviceContext); layoutTypePortlet = (LayoutTypePortlet)layoutWithDraftStatus.getLayoutType(); layoutTypePortlet.setLayoutTemplateId( userId, layoutTemplateId); LayoutLocalServiceUtil.updateLayout( groupId, false, layoutWithDraftStatus.getLayoutId(), layout.getTypeSettings()); LayoutLocalServiceUtil.updateStatus( userId, layoutWithDraftStatus.getPlid(), 2, serviceContext); LayoutPageTemplateStructureLocalServiceUtil.addLayoutPageTemplateStructure( userId, groupId, layout.getPlid(), "data", serviceContext); LayoutPageTemplateStructureLocalServiceUtil.addLayoutPageTemplateStructure( userId, groupId, layoutWithDraftStatus.getPlid(), "data2", serviceContext); LayoutPageTemplateStructureLocalServiceUtil.addLayoutPageTemplateStructure( userId, groupId, 135, "data3", serviceContext); } catch (Exception e) { println("Script failed: " + e); }