RSS Подписка на статьи RSS Подписка на комментарии Панель инструментов

Блог профессионалов стал частью сайта технической поддержки DocsVision http://support.docsvision.com. Новые материалы будут появляться уже на этом сайте.

Поиск

Ярлыки

авто генерация кода (1) Администрирование DocsVision (60) Атрибутивный поиск (3) База данных (24) Базы знаний (1) Безопасность (1) Бизнес-процессы (20) Блог (2) Вы увидите это первыми (1) Групповые политики (1) Диаграммы (2) Задания (2) Интеграция (2) Карточки DocsVision (14) Конструктор Решений (11) Маркетинг и продажи (4) Навигатор (3) Новое (3) Новости (32) Опрос (4) Опросы DocsVision (4) Оптимизация (3) Отчеты (2) Ошибки (1) Поддержка (14) Полезные ссылки (1) Представления (4) Производительность (5) Разбор полетов (18) Разработка для Workflow (7) разработка карточек (2) Разработка на платформе DocsVision (41) Разработка решений (43) Расширение платформы (1) Расширенные отчеты (9) Решения на платформе DocsVision (6) Сервисы DocsVision (3) Сканеры (3) Справочник сотрудников (1) Справочник типов (1) Установка (1) Утилиты (13) Шлюз в SharePoint (8) Штрихкод (2) Cкрипты карточек (7) DocsVision внутри (1) DocsVision Live (1) FileStream (1) FireFox (2) Opera (1) Powershell (5) Safari (1) SharePoint2007 (1) SharePoint2010 (2) Silverlight (1) UltraViews (1) Vista (1)

Работа DocsVision 4.5 через ISA сервер

 В прошлом посте я описал случаи возникновения ошибки "Не удалось разобрать SOAP сообщение, полученное от сервера". В версии DocsVision 4.5 мы столкнулись с еще одним случаем, который связан с настройкой ISA сервера.

Началось все с инцидента, в котором была описана вроде бы типичная ситуация. Пользователь при входе получает данное сообщение об ошибке. Отличие было в том, что пользователь был внешний, а HTTP трафик от клиента (Навигатора) шел ко внутреннему серверу DocsVision через ISA сервер.

Исследование было начато по привычному плану: запущен HTTP отладчик Fiddler и открыт Навигатор. Далее при исследовании ответа от сервера (я то ожидал в логе увидеть что-нибудь вида ошибки 403) было обнаружено, что пакет приходит вполне обычный.
Тогда возник вопрос. Может сам пакет каким-либо образом поврежден, что не дает возможности правильно его интерпретировать. И точно. Выяснилось следующее.
В версии DocsVision 4.5. для оптимизации производительности и ускорения передачи данных по пути клиент-сервер, сервером DocsVision производится сжатие пакетов по протоколу deflate.
Таким образом в заголовке HTTP пакета установлен флаг "Content-Encoding: deflate" (см. верхний скриншот). Выявлено, что при прохождении данного пакета через ISA сервер происходит его изменение. Флаг "Content-Encoding: deflate" установлен, но при этом само содержимое пакета не сжато.

Анализируем содержимое пакета. Видно что его текст легко читается, т.е. он не сжат. Тем не менее Fiddler (и соответственно DocsVision тоже) читая значение флага показывает, что текст необходимо раскодировать.

Если эту операцию выполнить, то никакого текста не будет.
Таким образом клиентский компонент, который использует Навигатор пытается распаковать этот пакет, но в результате ничего не получает. Отсюда и ошибка.

На данный момент нам неизвестно, какие настройки ISA сервера влияют на это. Прошу специалистов в данной области дать ответ. Читать дальше

Оставить комментарий (всего: 7)

Не удалось разобрать SOAP сообщение, полученное от сервера

При открытии Навигатора, либо при программном соединении с сервером вы можете встретить сообщение об ошибке "Не удалось разобрать SOAP сообщение, полученное от сервера". В чем может быть причина.

Данное сообщение об ошибке отображается в случае если ожидается ответ от сервера в определенном формате, а приходит что-то другое.




В каких случаях это может быть?
1. Сервер возвращает какую-либо страницу об ошибке: 403, 404
2. Подключение идет по неверному адресу (к другому сайту и т.п.)

Для проверки нужно под пользователем, под которым производится соединение открыть страницу http://server/DocsVision/StorageServer/StorageServerService.asmx

Либо можете другим способом. Переведите транспортный протокол в консоли настройки на HTTP+SOAP. Затем запустите на машине, на которой работает ваш код какой-либо HTTP отладчик. Например Fiddler. И посмотрите, какой ответ возвращает сервер.

В версии DocsVision 4.5, если соединение происходит через ISA сервер вы сможете столкнуться с другой причиной данной ошибки. Но об этом в следующем посте. Читать дальше

Оставить комментарий (всего: 0)

Особенности обновления скриптов карточек при переходе на 4.5

Ранее разработчики при отладке скриптов в некоторых случаях встречались с ситуациями, когда поля карточек очищались, либо высвобождался номер.В версии 4.5 была несколько изменена логика поведения скриптов карточек.

1. Из скрипта на событие "изменение свойства" записать новое состояние невозможно, т.к. оно всегда перезаписывается на то, что в данный момент выбрано в UI.
Смену состояния надо делать в скрипте кнопки тулбара (функция), сохранения или закрытия.
Для кнопки тулбара есть специальный флаг DoEvent = 1024 показывающий то, что состояние было изменено.

2. При возврате DoEvent=16 - сохранение изменений, значения из вкладки "Основная" будут записаны из UI в CardData. Т.е. если вы в скрипте на кнопку-функцию изменили, например Название карточки, а затем вернули DoEvent=16, то ваши изменения будут затерты значениями из UI. Решением для такого случая будет перенос кода, который изменяет поля, на событие "сохранение". Событие "Сохранение" теперь вызывается каждый раз при возврате DoEvent=16

3. Если карточка только что создана, а в скрипте на кнопку-функцию вы возвращаете флаг DoEvent=64 (установка признака сохранения), то при первом закрытии так же будет отображаться диалог с предложением сохранить карточку. Дело в том, что в 4.5 при первом сохранении создается ярлык на карточку (чего не делается при указании флага 64). Следовательно появляется данный диалог Читать дальше

Оставить комментарий (всего: 3)