суббота, марта 22, 2008

Сюрприз от Sharepoint

На одном из подшефных серверов перестали работать workflows (РП), сделанные при помощи Sharepoint Designer'а - не запускаются и всё тут... Новые РП при сохранении вызывают ошибки компиляции с отказом их принять (Errors were found when compiling the workflow.The workflow files were saved but cannot be run.Unexpected error on server associating the workflow). Много чего проделал - переустановил .NET'ы (попутно мусору вычистил немало), на виртуальном сервере попытался получить похожее поведение, перечитал все найденные материалы с описанием таких симптомов (их оказалось не так и много) - всё тщетно smile_embaressed.

Рецепт нашёлся здесьthumbs_up. Спасибо, Jason Nadrowski clap. Механизм сюрприза такой: в систему раньше устанавливал пакет "возможностей", который нужно активировать для каждого приложения (на сервере делалось для трёх). Во время активации в файлы web.config всех приложений добавляется без проверки её там наличия запись в секцию <System.Workflow.ComponentModel.WorkflowCompiler>, где описаны сборки, которые должны загружаться при компиляции SPD-workflows. При деактивации и/или удалении feature запись удаляется, но одна из каждого конфига. В итоге в файлах web.config может остаться (а может и не остаться) любое количество записей о сборках, которых может в системе уже не быть. Поэтому компилятор и ругается.

Неясно, правда, почему не работают ранее скомпилированные процессы, не имеющие отношения к отсутствующей сборке, ведь процессы, скомпилированные в Visual Studio, вполне себе работают. В общем, очередной привет от благодетелей thumbs_down.

Комментариев нет: