Как удалить документ с помощью 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.