WebDAV

Основная цель дополнения WebDAV — обеспечить доступ к файлам, хранящимся в хранилище файлов, по протоколу WebDAV. Эта функциональность позволяет пользователям удобно открывать и редактировать файлы с помощью настольных приложений (таких как Word, Excel, LibreOffice и т. д.) без необходимости постоянно скачивать и загружать файлы в веб-приложение.

Кроме того, дополнение предлагает следующие дополнительные возможности:

  • Контроль версий документов. Если для документа включено версионирование, то при каждом изменении документа на сервере создается новая версия.

  • Настраиваемые политики разрешения конфликтов для поддержки совместного редактирования документов.

  • Возможность управления правами доступа к документам.

  • UI-компоненты для управления файлами и версиями документов.

  • Интеграция с внешними системами с помощью статических ссылок для беспрепятственного доступа к файлам.

Установка

Для этого дополнения требуется Enterprise подписка. Если у вас нет подписки, ознакомьтесь с разделом Пробная Enterprise-подписка, чтобы получить пробную версию.

Для автоматической установки через Jmix Marketplace следуйте инструкциям в разделе Дополнения.

Для ручной установки выполните следующие шаги.

  1. Настройте доступ к премиум-репозиторию.

    • Добавьте премиум-репозиторий в свой build.gradle:

      repositories {
          // ...
          maven {
              url = 'https://nexus.jmix.io/repository/premium'
              credentials {
                  username = rootProject['premiumRepoUser']
                  password = rootProject['premiumRepoPass']
              }
          }
      }
    • Добавьте учетные данные премиум-репозитория в ~/.gradle/gradle.properties:

      premiumRepoUser=123456123456
      premiumRepoPass=abcdefabcdef

      Получите учетные данные репозитория из вашего лицензионного ключа: первая часть ключа перед тире – это имя пользователя репозитория, часть после тире – пароль. Например, если ваш ключ выглядит как 123456-abcdef abcdef, имя пользователя – 123456, а пароль – abcdef abcdef.

  2. Добавьте зависимости в ваш build.gradle:

    implementation 'io.jmix.webdav:jmix-webdav-starter'
    implementation 'io.jmix.webdav:jmix-webdav-rest-starter'
    implementation 'io.jmix.webdav:jmix-webdav-flowui-starter'

Важное примечание для приложений в режиме меню Single mode

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

  1. Откройте Дизайнер меню в Jmix Studio.

  2. Перейдите на вкладку Structure.

  3. Доступные пункты меню отображаются на левой панели.

    add menu items
  4. Чтобы добавить пункты:

    • Выберите нужные пункты и нажмите кнопку > кнопка (Add Selected).

    • Или перетащите их с левой панели в текущую структуру меню справа.

Этот шаг необходим, потому что приложения в режиме Single mode не выполняют автоматическое слияние меню дополнений с существующей структурой.

HTTPS и базовая авторизация

Настольные приложения используют базовую авторизацию для подключения к серверу по WebDAV, поэтому для вашего веб-приложения необходимо настроить HTTPS. См. раздел Настройка HTTPS для получения инструкций по настройке HTTPS на localhost в целях разработки.

Требования к офисным приложениям

Из-за недавнего отключения базовой авторизации в приложениях Microsoft 365 (см. https://learn.microsoft.com/en-us/microsoft-365-apps/security/basic-authentication-prompts-blocked) дополнение WebDAV не может работать с последними версиями Microsoft Office.

Минимальная версия Microsoft Office, необходимая для доступа к документам по протоколу WebDAV, — MS Office 2010 SP2. Для LibreOffice минимальная требуемая версия — 6.3.

Чтобы проверить установленные версии Microsoft Office и Service Pack (SP) на вашем компьютере, откройте MS Word и перейдите в раздел Product Information через File → Help. Для Service Pack 2 MS Office 2010 (и последующих версий) должен отображаться следующий номер: 14.0.7015.1000 (или выше). Чтобы обновить Service Pack, перейдите по этой ссылке.