java - 如何使用 CMIS 删除文档

标签 java alfresco alfresco-share cmis

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

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

现在我的要求是,我必须根据用户角色删除文档。意味着我只想将删除文档的访问权限授予站点管理员。

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

提前致谢

最佳答案

为了删除文档,您首先需要查看用户是否具有删除权限,这就是答案将分为两部分的原因

第 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 部分结合起来即可。

关于java - 如何使用 CMIS 删除文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39462789/

相关文章:

alfresco - 将 Alfresco 上传限制为特定文件扩展名(例如 : users can only upload PDFs)

css - 如何在 Alfresco 中更改 aikau-1.0.101.10.jar 中的 CSS 文件

来自 Alfresco Activiti extensionElements 的 Javascript 依赖项

java - Alfresco - 添加文件后运行自定义工作流程

alfresco - cm :workingCopyOwner and cm:lockOwner 之间的差异

java - Apache POI : Retrieve page number from XWPFParagraph instance?

java - 为 LIst 中的元素创建子序列

java - 在 JSP 中显示本地磁盘镜像(Web 上下文之外的镜像)

java - 在 Java 中将 iCal 转换为 HTML 或纯文本

alfresco - 任务编辑文档预览组件Alfresco