Обновление папок и содержимого папок с помощью Tridion WebDAV
Я столкнулся с проблемой и не знаю, разрешил ли кто-нибудь эту проблему.
Я использую Tridion webdav (Tridion 2011 SP1 HR1) для вставки структурированного контента (папки + двоичные файлы) в публикацию.
Все идет хорошо, когда папка не существует, но если папка существует, появляется ошибка:
У вас нет разрешения на доступ к этому расположению веб-папки
Наблюдая за файлами журнала, проблема в том, что Tridion пытается создать новую папку, когда я перетаскиваю существующую папку и переименовываю ее в заголовок папки, вызывая ошибку:
Имя должно быть уникальным для элементов типа: Папка/Виртуальная папка в этой папке и ее контекст BluePrint.
Я попытался использовать события, чтобы избежать сохранения папки, когда она существует (выбрасывание исключения в начальную фазу), но при обновлении содержимого внутри папки появляется ошибка разрешения.
Кто-нибудь пытался что-то сделать?
Есть ли у кого-нибудь какие-либо предложения, которые я могу попробовать?
Спасибо всем заблаговременно.
Ответы
Ответ 1
Это не имеет ничего общего с Tridion, поскольку вы используете проводник Windows для доступа к WebDAV, поэтому, если что-либо, это проводник, который виноват в отправке неправильных запросов, но если вы посмотрите здесь на WebDAV sprcification: http://www.webdav.org/specs/rfc4918.html, вы можете увидеть все возможные вызовы в главе 9.
Tridion Folders рассматриваются как коллекции, поэтому существует вызов MKCOL
для создания папки, но если вы проверите 9.7.2 PUT for Collections
, вы увидите:
9.7.2 PUT для коллекций
В этой спецификации не определяется поведение метода PUT для существующих коллекций. Запрос PUT > к существующей коллекции МОЖЕТ рассматриваться как ошибка (405 Метод не разрешен).
Метод MKCOL определен для создания коллекций.
Таким образом, нет возможности обновлять существующие папки, create
и upload contents
, действительно.
Вы также можете проверить эту статью, если вас интересует протокол WebDAV: http://amarchuk.blogspot.nl/2011/10/heres-c-webdav-client-that-works-with.html