Ошибка инициализации модуля: HTTPСервис

13.04.20

Интеграция - WEB-интеграция

Решение проблемы "Ошибка при работе с HTTP сервисом 500. Ошибка инициализации модуля".

Всем добрый день!

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

В общем появилась задача получать и отправлять данные между двумя решениями используя как прослойку - третье, в котором по задумке эти данные должны были консолидироваться.

Особенность задачи состояла в том, что гонять данные было необходимо при помощи HTTP сервиса т.к. в дальнейшем по задумке к данному сервису будут обращаться другие приложения не имеющие отношения к платформе 1С.

В общем создал в каждом из решений по HTTP сервису, добавил шаблон, свойства обработки методом POST, написал код и решил что все готово. Как создать опубликовать и настроить HTTP сервис писать не буду - этой информации в сети достаточно. Все было реализовано в конфигурации на обычных формах и как следствие с использованием только толстого клиента.

При тестировании мне начала прилетать ошибка HTTP 500 - Internal Server Error. Не сильно информативно. В ходе работ было выяснено, что вся конструкция падает на ошибке "Ошибка инициализации модуля HTTPСервис.ИмяСервиса.Модуль".

Простота (проще только мыло хозяйственное) и сообщение платформы "Синтаксических ошибок не обнаружено!" наталкивало только на одну мысль - корявый релиз платформы. 

В результате, был опробован другой релиз, смена IIS на Apache и обратно и ковыряние различных форумов.

Причина оказалась следующая:

В модуле HTTP сервиса, как выяснилось, нельзя использовать ряд функций и методов платформы - в моем случае это ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр.

Обработку значений с использованием данных методов я вынес в отдельный общий модуль после чего вся конструкция завелась и прекрасно работает.

Возможно данная информация сэкономит кому-то день времени.

На этом все, спасибо за внимание!

HTTP 500 - Internal Server Error Ошибка инициализации модуля: HTTPСервис.

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17800    19    22    

17

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19882    13    17    

17

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14435    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1203    1    0    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dsdred 3631 13.04.20 09:57 Сейчас в теме
500-я говорит о многом...
Эта ошибка наверно одна из самых обширных.

А методы ЗначениеВСтрокуВнутр и ЗначениеИзСтрокиВнутр в http сервисе то вам зачем?
Любите данные пожирнее?
2. VipDim 16 13.04.20 11:44 Сейчас в теме
(1)Так вышло, что из первой ИБ в ИБ-прослойку летел мусор, там разбирался, оседал и уже обработанные структурированные данные летели в конечные ИБ в виде массива со структурами и не только. Чтобы для каждой ИБ не описывать свои особенности получения таких данных было решено сделать на конечной стороне в каждой ИБ http сервис в который будет прилетать не только готовый массив со структурами но и код который будет запускаться на стороне ИБ приемника и каждую структуру обрабатывать - так я ухожу от необходимости постоянно допиливать каждую конечную ИБ (их 13) под особенности отправляемых данных. Может топорно выглядит конечно, но в части отказоустойчивости по надежности превосходит даже кирпич, да и производительность очень радует, проверено )
3. dsdred 3631 13.04.20 12:05 Сейчас в теме
(2)
код который будет запускаться

Выполнить...
Не страшно спать когда код летает и выполняется?

так я ухожу от необходимости постоянно допиливать каждую конечную ИБ (их 13) под особенности отправляемых данных

Так вы создаете дыру в безопасности и гоняете лишний трафик ;))

"Выполнятор" – как я породил монстра и лишился сна!
5. VipDim 16 13.04.20 23:49 Сейчас в теме
(3)
Так вы создаете дыру в безопасности и гоняете лишний трафик ;))

С одной стороны да, но в моем случае базы за VPNом лежат и с улицы никакие запросы не принимаются - только из своих систем, да и авторизация пользователя же есть.
8. dsdred 3631 14.04.20 09:01 Сейчас в теме
(5)
1 свои тоже бывают засланные.
2 после вас придет другой это поддерживать человек и карму вашу попортит вспоминая недобрым словом...

П.С. Мне кажется все проходят через вот такой Выполнятор, это часть взросления что ли ))
4. FesenkoA 58 13.04.20 12:11 Сейчас в теме
ничего никогда не пишите в модуле хттп сервиса. Кроме вызова общего модуля, конечно. По опыту говорю.
tehas; simuljakr; Slypower; Sergafan10; ProstoProgrammist; elga2012; Vortigaunt; user779117; +8 Ответить
6. VipDim 16 13.04.20 23:52 Сейчас в теме
(4)Эх, мне бы это теперь уже полученный опыт, пару дней назад....
Я раньше и не писал ничего в этом модуле, а в этот раз лениво стало для нескольких строк коды модуль делать - работы только начались про проекту и сейчас архитектура выстраивается и проверяется.
7. user779117 14.04.20 01:44 Сейчас в теме
Если я правильно помню, в модуле http отладка совсем криво работает. Напиши в этом модуле "бред" и нажми синтаксисконтроль ради эксперимента...
Сам всегда собираю структуру заголовков, параметров и тело и перенаправляю в общие модули..
electrolis; Dimkasan; ProstoProgrammist; +3 Ответить
9. Region102 23.04.20 06:28 Сейчас в теме
Сложность отладки 500 ошибки может заключаться в том, что вызов ошибочной функции может находится гораздо глубже одного, двух модулей.
Dementor; Vortigaunt; +2 Ответить
10. Vortigaunt 97 03.05.20 21:03 Сейчас в теме
(9) Для таких случаев рекомендую использовать конструкции Попытка Исключение, текст, возвращаемый функцией ОписаниеОшибки() класть в тело ответа. Тогда клиент получает не ошибку 500, а текст ошибки, и может его отобразить.
11. Sergafan10 27.01.21 09:45 Сейчас в теме
Спасибо тебе, мил человек!
12. EMelihoff 03.03.21 15:21 Сейчас в теме
13. EjiGofra 19.05.21 11:13 Сейчас в теме
Спасибо, помог с решением.
У меня проблема в "РаскодироватьСтроку"
14. zaursoft 19 17.11.21 12:18 Сейчас в теме
Первым делом можно создать внешнюю обработку, скопировать весь модуль сервиса в модуль обработки и запустить проверку кода. В этом случае корректно проверяется всё, кроме использования функций, которые недоступны для внешнего соединения. А их уже отловить проще, чем лишнюю скобку или недостающую запятую в стопятьсотой строке.
15. ProstoProgrammist 6 22.01.23 13:01 Сейчас в теме
У меня все еще проще оказалось. Та же ошибка. Модуль проходит проверку.
Но по факту в модуле была ошибка, забыл поставить точку с запятой в одной из строчек.
Но как тогда модуль проходит проверку синтаксиса? А так, он его вообще не проверяет, хоть что туда пиши!
Копирую код, вставляю во внешнюю обработку, там проверяю синтаксис, находит ошибки, правлю, вставляю назад - Работает!
Платформа 8.3.16.1063, а как у вас?
Strange Device; +1 Ответить
17. Strange Device 307 13.06.23 13:07 Сейчас в теме
(15) Спасибо тебе, мил человек!!! Кучу времени угробил, прежде чем на твой пост наткнулся :-( , тоже понять не мог, почему проверку проходит, но при работе выдает ошибку... Действительно, модуль никто и не пытается проверять...
antonio_i; ProstoProgrammist; +2 Ответить
16. Dimka74 24.01.23 18:21 Сейчас в теме
Платформа 8.3.22.1750, такая же беда((
ProstoProgrammist; +1 Ответить
18. mrd_84 07.08.23 10:56 Сейчас в теме
У меня проблема была вызвана тем что в модуле регистра сведений были ошибки. Ошибки исправил, проблема ушла.
Оставьте свое сообщение