@Override protected PortletPreferences doImportData( PortletDataContext portletDataContext, String portletId, PortletPreferences portletPreferences, String data) throws Exception { portletDataContext.importPermissions( "com.liferay.portlet.documentlibrary", portletDataContext.getSourceGroupId(), portletDataContext.getScopeGroupId()); Document document = SAXReaderUtil.read(data); Element rootElement = document.getRootElement(); Element fileEntryTypesElement = rootElement.element("file-entry-types"); List<Element> fileEntryTypeElements = fileEntryTypesElement.elements("file-entry-type"); for (Element fileEntryTypeElement : fileEntryTypeElements) { DLPortletDataHandlerImpl.importFileEntryType(portletDataContext, fileEntryTypeElement); } Element foldersElement = rootElement.element("folders"); List<Element> folderElements = foldersElement.elements("folder"); for (Element folderElement : folderElements) { DLPortletDataHandlerImpl.importFolder(portletDataContext, folderElement); } Element fileEntriesElement = rootElement.element("file-entries"); List<Element> fileEntryElements = fileEntriesElement.elements("file-entry"); for (Element fileEntryElement : fileEntryElements) { DLPortletDataHandlerImpl.importFileEntry(portletDataContext, fileEntryElement); } if (portletDataContext.getBooleanParameter(_NAMESPACE, "shortcuts")) { List<Element> fileShortcutElements = rootElement.element("file-shortcuts").elements("file-shortcut"); for (Element fileShortcutElement : fileShortcutElements) { DLPortletDataHandlerImpl.importFileShortcut(portletDataContext, fileShortcutElement); } } if (portletDataContext.getBooleanParameter(_NAMESPACE, "ranks")) { Element fileRanksElement = rootElement.element("file-ranks"); List<Element> fileRankElements = fileRanksElement.elements("file-rank"); for (Element fileRankElement : fileRankElements) { DLPortletDataHandlerImpl.importFileRank(portletDataContext, fileRankElement); } } long rootFolderId = GetterUtil.getLong(rootElement.attributeValue("root-folder-id")); if (rootFolderId > 0) { Map<Long, Long> folderPKs = (Map<Long, Long>) portletDataContext.getNewPrimaryKeysMap(Folder.class); rootFolderId = MapUtil.getLong(folderPKs, rootFolderId, rootFolderId); portletPreferences.setValue("rootFolderId", String.valueOf(rootFolderId)); } return portletPreferences; }