如何使用CMIS删除文档

时间:2016-09-13 05:33:00

标签: java alfresco alfresco-share cmis

我使用Servlets创建了一个外部Web应用程序,该应用程序连接到alfresco存储库。

我还可以将文档上传到存储库,从存储库下载文档。

现在我的要求是,我必须根据用户角色删除文档。意味着我想只允许删除文档访问网站管理员。

如果有,请提供示例代码。

先谢谢

1 个答案:

答案 0 :(得分:5)

为了删除文档,您首先需要查看用户是否具有要删除的角色,这就是为什么答案将分为两部分

第1部分:搜索权限

在这部分中,您将看到用户是否有权删除

Session session = getSession(serverUrl, username, password); // Get the session 

object = session.getObjectByPath(idObject); // get the object 

if (object.getAllowableActions().getAllowableActions().contains(Action.CAN_DELETE_OBJECT)) { //// You can delete 

   } else {  //// You can't delete 
       System.out.println("I can't ");            
   }

第2部分:删除方法

对于文档来说,删除它很简单

Session session = getSession(serverUrl, username, password);
CmisObject object = session.getObject(path);
Document suppDoc = (Document) object;
suppDoc.delete(true);

请注意,文件夹不同,但只会更改第2部分(因为删除文件夹时需要删除其子文件)

要完成此答案,您只需要将第1部分与第2部分结合起来。