These are chat archives for springjazzy/GIS_JKH_Integration

29th
Jun 2018
Anton
@dudarkoas
Jun 29 2018 01:46
@Gasmator_twitter по xsd не пройдет
mkpmkp
@mkpmkp
Jun 29 2018 02:01

Добрый день, дамы и господа. У меня методологический вопрос к уважаемому All.
У нас клиент написан на C# и для получения классов работы с сервисом ГЖ используется утилита SvcUtil.exe.
Полученные классы именуются настолько забористо что, читая торжественным голосом, можно использовать для вызова дьявола (проверено).

"importVolumeAndQualityInformationRequestImportVolumeAndQualityInformationRegistrationPeriodInformationVolumeResources"

Это страшно но не смертельно.
Проблему вызывают семейства классов типа:

getStateResult1
getStateResult2
getStateResult3
getStateResult4
getStateResult5
getStateResult6
getStateResult7
getStateResult8

ItemsChoiceType1 - ItemsChoiceType46

Генерятся эти классы с номерами последовательно из wsdl-ек в том порядке в котором они попадают на парсер.
С каждым обновлением порядок и количество классов изменяется и вся нумерация идёт по одному месту. И первое что приходится делать - это отлавливать все изменения имён классов.
Иногда изменения очень существенные. Не всё получается отловить за раз.

Так вот: Народ! У кого такая же ситуация и кто как с этим борется? Может есть способы избежать таких наименований (другой парсер|ключи какие забористые для нашего прасера|...).
Поделитесь мнением пожалуйста.

NadyaTomsk
@NadyaTomsk
Jun 29 2018 02:15
@mkpmkp Такая же беда, не знаю как бороться. Вижу только вариант переходить на WCF, но слишком трудоемко. Помогите....кто-нибудь !!!
mkpmkp
@mkpmkp
Jun 29 2018 02:15
:fire:
Anatoly V.
@DrShtopor_twitter
Jun 29 2018 03:06
Да ладно? Настолько трудоёмко, что не перекрывает поход нумерации по одному месту при каждом обновлении?
ИМХО, перекатывайте на WCF как только возможность появится.
Я начинал писать на коленке, как консольное приложение, единственным его преимуществом была самодостаточность, не надо никаких туннелей, сторонних утилит подписи и прочей ереси, в остальном одни минусы.
В итоге переписал на Spring Boot и мои волосы стали чистыми и шелковистыми, трудозатрат больше на само его понимание ушло, чем на собственно переписывание кода, ведь большая его часть связана с автоматически генерируемыми классами запросов и ответов, которые хоть через JAX-WS, хоть через JAXB генерируются практически одинаково
И да, в нашем мире кодогенераторы из WSDL кладут классы в пакеты, соответствующие URI схемы, в которой исходный объект объявлен в WSDL/XSD. Возможно, у вашего парсера есть какой-то ключ, который его заставит сделать так же.
tim apple
@timapple
Jun 29 2018 03:22
тоже использую SvcUtil. имена не напрягают. генерирую по каждому wsdl отдельно, в итоге общие типы (из lib*.xsd) повторяются в каждом полученном файле. может что знает как это исправить? хочется чистые классы клиентов и общие типы отдельно
MitichBatkovich
@MitichBatkovich
Jun 29 2018 05:18
перехордите на java что ли
не испытываю подобны проблем
Konstantin Slabouzov
@clip71
Jun 29 2018 07:12
то же генерю отдельно и имею весь букет проблем, может когда-нибудь все таки перестанут менять версии и можно будет сгенерить все в одном
Пятаков Артемий
@Gasmator_twitter
Jun 29 2018 10:46
Всем привет. подскажите пожалуйста. В
В методе importMeteringDeviceData фиас дома сделали необязательным. получается я могу в один запрос загнать счетчики из разных домов?
я конкретно архивацию сейчас делаю
Anton
@dudarkoas
Jun 29 2018 10:52
да
там на дочерних элементах теперь есть фиас
Пятаков Артемий
@Gasmator_twitter
Jun 29 2018 11:10
@dudarkoas спасибо за ответ
Пятаков Артемий
@Gasmator_twitter
Jun 29 2018 14:00
у всех гис тормозит?