Step 1: First create the site using siteService.
Step 2: Create the datalist container using siteService or SiteServiceImpl.
Step 3: Create the necessary properties for the datalist.
Step 4: Create the datalist using nodeService.
- String DATALIST_CONTAINER = "dataLists";
- SiteInfo siteInfo = this.siteService.createSite (TEST_SITE_PRESET, siteName, siteName, DESCRIPTION_TEST_THIS_IS_MY_DESCRIPTION, SiteVisibility.PRIVATE);
- //NodeRef dataListContainer = siteService.createContainer(siteName, DATALIST_CONTAINER, ContentModel.TYPE_CONTAINER, null);
- //if the datalist container does not exist then it will create a new one based on the create boolean parameter
- NodeRef dataListContainer = SiteServiceImpl.getSiteContainer(siteName, DATALIST_CONTAINER, true, siteService, transactionService, taggingService);
- Map<QName, Serializable> contentProps = new HashMap<QName, Serializable>();
- contentProps.put(ContentModel.PROP_TITLE, "Demo");
- contentProps.put(ContentModel.PROP_DESCRIPTION, "Demo Datalist");
- contentProps.put(DataListModel.PROP_DATALIST_ITEM_TYPE, "YOUR DATALIST ITEM TYPE");
- nodeService.createNode(dataListContainer, ContentModel.ASSOC_CONTAINS, QName.createQName(DataListModel.DATALIST_MODEL_PREFIX, "Demo"), DataListModel.TYPE_DATALIST, contentProps);
Hope this helps someone.
Join the conversation! Your thoughts help the community grow.