Как удалить документ с помощью CMIS

Я создал внешнее веб-приложение, используя сервлеты, которые подключены к репозиторию на открытом воздухе.

Я также могу загрузить документ в хранилище, загрузить документ из хранилища.

Теперь мое требование заключается в том, чтобы удалить документ на основе роли пользователя. означает, что я хочу дать удалить документ доступ только для менеджера сайта.

Пожалуйста, предоставьте образец кода, если у вас есть.

Заранее спасибо

1 ответ

Решение

Чтобы удалить документ, сначала нужно посмотреть, есть ли у пользователя роль для удаления, поэтому ответ будет разделен на две части.

Часть 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.

Другие вопросы по тегам