如何使用DLFolderLocalServiceUtil类的getFolders()方法?

时间:2014-12-23 11:07:56

标签: java java-ee content-management-system liferay liferay-6

我在LifeRay开发中绝对是新的,我对使用 DLFolderLocalServiceUtil 类有一些疑问。

在我的代码中,我有类似的东西:

List<DLFolder> listFolder = DLFolderLocalServiceUtil.getDLFolders(-1, -1);
private Map<String, DLFolder> treePath = new TreeMap<String, DLFolder>();

以前的代码有什么特别之处?我认为这与LifeRay 文档库有关。我认为前面的代码检索门户网站文档库的根目录。

但是,如果我的推理是正确的,那么LifeRay中的文档库究竟是什么?它是用于在门户上存储文档的东西吗?如果是这样,LifeRay中的文档究竟是什么?任何类型的文件或特定类型的内容?

查看官方LifeRAy文档,在此处:https://docs.liferay.com/portal/6.2/javadocs-all/com/liferay/portlet/documentlibrary/service/DLFolderLocalServiceUtil.html

在我看来,在之前的代码段中,使用了此版本的 getDLFolders()方法:

getDLFolders(int start, int end)

并说:

  

返回所有文档库文件夹的范围

但究竟是什么意思是所有文档库文件夹的范围?如果在前一个片段中使用了设置为-1的开始和结束值,那么是什么意思?

1 个答案:

答案 0 :(得分:0)

是的,此服务与文档和媒体portlet相关,该portlet可以在网站Content区域的Admin内找到。源代码包结构将此portlet指定为document_library portlet(dated but applicable wiki page)。 portlet用作任何类型文档的所有基于文档的内容的管理工具。

portlet在提供文档管理功能时使用数据库和文件系统。如果您导航到与${LIFERAY_HOME}相同的目录级别并查看,则会看到data文件夹。在此文件夹中,您会注意到document_library文件夹。前进的目录结构对应于companyId / folder (internally managed association) for a specific file / individual versions of a specific file

portlet的一个可用操作是添加文件夹。以这种方式添加的任何文件夹都通过数据库管理。这些文件夹是服务方法返回的文件夹,用于整个门户网站,以及Liferay使用的一些文件夹。使用此服务时,不会显示特定于每个文件的文件夹。

Liferay使用-1来指定所有&#34;。有时您会将使用情况视为getDLFolders(QueryUtil.ALL_POS, QueryUtil.ALL_POS) ALL_POS缩写为&#34;所有可能的&#34;它只是包裹constant value