Liferay文档库API - 初学者需要的帮助

时间:2012-03-22 19:06:30

标签: api liferay document

我是Liferay的新手,不幸的是对portlet,liferay API等知之甚少。 我被要求使用liferay的文档库API在我们的一个portlet中添加文档。 我们目前使用的是5.2.3版本。我可以找到javadocs,它有类似addFileEntry,addFile等方法,如DLFileEntryLocalServiceUtil,DLLocalServiceUtil等类,但很难理解使用哪种方法或使用哪个类。

此外,大多数这些API都采用了userId,groupId,companyId等参数。我从哪里可以得到它?

我知道我在问一些非常基本的问题,应该首先尝试理解liferay背后的关键概念,但遗憾的是时间非常有限:(。运气不好。

如果有人可以提供一些示例代码库并对其进行一些解释或引导我访问任何链接,那将非常有用。

谢谢, Ashish

2 个答案:

答案 0 :(得分:3)

您可以通过此方法获取userid,companyid,范围ID ....

ThemeDisplay td = (ThemeDisplay) renderRequest.getAttribute(WebKeys.THEME_DISPLAY);
long userId = td.getUserId();

同样聪明的你可以获得companyid,scopeid和所有..

要添加文件,您可以使用...

DLFileEntry file=DLFileEntryLocalServiceUtil.addFileEntry(userId,
               groupId,
               folderId,
               myfile.getName(),//name
               myfile.getName(),//title
               "",//description
               "",//changelog
               "",//extra seeting
               myfile,
               serviceContext);

试试这个..

答案 1 :(得分:0)

Lucky Boy建议的这种方法不会检查权限。如果您希望选中权限,请使用DLFileEntryServiceUtil代替DLFileEntryLocalServiceUtil

DLFileEntry file=DLFileEntryServiceUtil.addFileEntry(
           folderId,
           myfile.getName(),//name
           myfile.getName(),//title
           "",//description
           "",//changelog
           "",//extra seeting
           myfile,
           serviceContext);