|
Изменение WSDL после обновления 1С. | ☑ | ||
---|---|---|---|---|
0
San335
10.02.20
✎
12:17
|
Доброго времени суток!
Может кто-нибудь сталкивался с подобной проблемой и сможет подсказать/посоветовать? При редактировании кода веб-сервиса, после обновления изменяется текст ВСДЛьки, причем другого веб-сервиса. Хотя даже сама перепубликация сервиса не происходила. |
|||
1
Галахад
гуру
10.02.20
✎
12:21
|
Гм. Вроде так и должно быть. А в чем проблема?
|
|||
2
San335
10.02.20
✎
12:33
|
(1) Меняются пространства имен переменных в самой ВСДЛ. Например сначала было type="xs3:name_parametr"/>, а стало type="xs1:name_parametr"/>. Некоторые сервисы потом падать начинают.
|
|||
3
trad
10.02.20
✎
12:38
|
(2) вообще, в приведенном примере не показано, что меняются пространства имен, показано что меняются псевдонимы пространств имен
|
|||
4
San335
10.02.20
✎
12:45
|
(3) Не спорю.Мог не корректно выразиться. Просто суть в том, что веб-сервис не переопубликовывался, а просто код в модуле поменялся. В результате у редактируемого сервиса текст ВСДЛ остался прежним, а у другого поменялся.
|
|||
5
Fragster
гуру
10.02.20
✎
12:53
|
(4) если состав/порядок импортируемых пакетов поменять, то такое будет. может при смене платформы тоже. изменение текста модулей не влияет. ищите "забывчивого".
|
|||
6
Fragster
гуру
10.02.20
✎
12:53
|
хорошо помогает git или хранилище
|
|||
7
Fragster
гуру
10.02.20
✎
12:54
|
(2) так это те сервисы прям кривые
|
|||
8
trad
10.02.20
✎
13:08
|
(4) не совсем понял "кто на ком стоял", но могу только добавить, что при написании кода не нужно закладываться на псевдонимы
|
|||
9
San335
10.02.20
✎
13:47
|
(8) Сторонний сервис, который стучится в 1С так устроен. В самом веб-сервисе 1С используется несколько пакетов ХДТО. Сравнив тексты ВСДЛ до и после обновления конфы заметил,что описание схем этих пакетов ХДТО меняется просто местами. Но почему так происходит, не понятно. Пробовал на другой конфигурации аналогичный сервис собирать и изменять, текст ВСДЛ оставался не изменным.
|
|||
10
Fragster
гуру
10.02.20
✎
13:54
|
для нормально написанного сервиса псевдонимы пространств имен не должны никак влиять на его работу. Соответствие псевдонимов и пространств имен описано в атрибутах корневого узла. Также на каждом уровне может быть описание псевдонимов для вложенных элементов.
|
|||
11
trad
10.02.20
✎
14:01
|
(9) нужно переделать внешний сервис.
Пытаться что-то предпринимать, для восстановления порядка NS - плохой путь |
|||
12
San335
10.02.20
✎
19:48
|
(11) А восстановить порядок реально?Внешний сервис(не 1Совский) переделать можно сказать не реально. На ИТС поддержку есть смысл с такой проблемой обращаться?
|
|||
13
catena
11.02.20
✎
07:07
|
(12)Сомнительно, так как это не нарушает валидность. Все равно, что тебе запретить менять имена локальных переменных в коде.
|
|||
14
trad
11.02.20
✎
09:40
|
(12) Можно сделать статический wsdl (просто сохранить тот, который выдается веб-сервис в другое место как файл), в нем сделать нужные правки и натравить внешний сервис на этот статический wsdl.
Но это придется проделывать каждый раз, когда будут вноситься изменения в 1совский веб-сервис. |
|||
15
San335
11.02.20
✎
10:09
|
(14) Со стороны внешнего сервиса примерно так и получают WSDL. В итоге при каждой перетасовки псевдонимов пространств имен, приходится вносить корректировки на стороне внешнего сервиса.
|
|||
16
pechkin
11.02.20
✎
10:14
|
может на той стороне взять готову библиотеку работы с SOAP ?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |