Word отображает сообщение "Не удалось загрузить" при сохранении с использованием ITHit Server dll

Судя по нашему тестированию, проблема (Failed to Upload), кажется, возникает после истечения таймера блокировки. Документ может быть сохранен много раз до истечения времени таймера, но как только будет превышено время блокировки, если пользователь пытается сохранить документ Word, отображается желтая панель Failed to Upload.

Мы установили таймер блокировки на текущее системное время плюс время блокировки, которое запрашивает Word (3600 секунд).

Timeout: Second-3600

Word пытается выдать Lock и в результате получает ошибку 500:

LOCK http://t430-dev10/TMS_71/Edit_WebDAV/000%20TEST%20ADD.doc HTTP/1.1

И получаю ответ HTTP/1.1 500 Внутренняя ошибка сервера:

System.NullReferenceException: Object reference not set to an instance of an object.
at dn.i(IHierarchyItem A_0, DavContextBase A_1)
at dn.ProcessRequest(DavContextBase context, IHierarchyItem item)
at ITHit.WebDAV.Server.DavEngine.Run(DavContextBase context)

X-AspNet-Version: 4.0.30319
X-Engine: IT Hit WebDAV Server .Net v3.7.1780.0

Мы также попробовали v3.9.2111 с теми же результатами.

Исходя из этого, я хотел бы получить несколько советов о том, как сохранить документ после истечения таймера блокировки. Кроме того, может ли быть расширена блокировка, чтобы сохранить загрузку файла? И / или можно ли исправить механизм сервера, чтобы разрешить загрузку файла?

1 ответ

Скорее всего, эта проблема вызвана возвратом нулевого значения из DavContextBase. Реализация GetHierarchyItem. Элемент, возвращаемый из GetHierarchyItem в запросе LOCK, также должен реализовывать интерфейс ILock.

Также обратите внимание, что после начальной блокировки MS Office время от времени обновляет блокировку, отправляя новое время блокировки, поэтому срок действия блокировки не должен истекать до тех пор, пока не будет открыто приложение MS Office. Двигатель вызывает ILock. RefreshLock, когда MS Office обновляет блокировку.

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