These are chat archives for springjazzy/GIS_JKH_Integration

15th
Nov 2016
alexesuser
@alexesuser
Nov 15 2016 03:56
@versh23 Сгенерировал XML по WSDL для общеистемной НСИ, удалил блок подписи, заполнил поля с вопросиками. Пытаюсь отправить, ворзвращается ошибка Exp001000: SoapAction in header is blank. Подписываю этот файлик утилитой xades-demo, результат такой же ((( Что опять могу делать не так?
anesterov
@anesterov
Nov 15 2016 04:10
@alexesuser в XML что-то типа строчки:
<s:Header>
<Action xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none" s:mustUnderstand="1">urn:importMeteringDeviceValues</Action>
есть?
alexesuser
@alexesuser
Nov 15 2016 04:11
неа, после удаления блока signature осталось следующее:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:base="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:nsi="http://dom.gosuslugi.ru/schema/integration/nsi-common/" xmlns:xd="http://www.w3.org/2000/09/xmldsig#" xmlns:nsi1="http://dom.gosuslugi.ru/schema/integration/nsi-base/">
<soapenv:Header>
<base:ISRequestHeader>
<base:Date>2016-11-15T09:29:29.5033083+07:00</base:Date>
<base:MessageGUID>a013da6b-fd11-4b20-8904-dbbcb92ff229</base:MessageGUID>
</base:ISRequestHeader>
</soapenv:Header>
<soapenv:Body>
<nsi:exportNsiListRequest Id="foo" base:version="10.0.1.2">
<nsi1:ListGroup>NSI</nsi1:ListGroup>
</nsi:exportNsiListRequest>
</soapenv:Body>
</soapenv:Envelope>
anesterov
@anesterov
Nov 15 2016 04:13
лишнее наверно удалили что-то
alexesuser
@alexesuser
Nov 15 2016 04:16

@anesterov Вот исходник, тут и удалять то особо нечего :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:base="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:nsi="http://dom.gosuslugi.ru/schema/integration/nsi-common/" xmlns:xd="http://www.w3.org/2000/09/xmldsig#" xmlns:nsi1="http://dom.gosuslugi.ru/schema/integration/nsi-base/">
<soapenv:Header>
<base:ISRequestHeader>
<base:Date>?</base:Date>
<base:MessageGUID>?</base:MessageGUID>
</base:ISRequestHeader>
</soapenv:Header>
<soapenv:Body>
<nsi:exportNsiListRequest Id="?" base:version="10.0.1.2">
<!--Optional:-->
<xd:Signature Id="?">
<xd:SignedInfo Id="?">
<xd:CanonicalizationMethod Algorithm="?">
e
<!--You may enter ANY elements at this point-->
gero
</xd:CanonicalizationMethod>
<xd:SignatureMethod Algorithm="?">
cum
<!--Optional:-->
<xd:HMACOutputLength>?</xd:HMACOutputLength>
sonoras
<!--You may enter ANY elements at this point-->
aeoliam
</xd:SignatureMethod>
<!--1 or more repetitions:-->
<xd:Reference Id="?" URI="?" Type="?">
<!--Optional:-->
<xd:Transforms>
<!--1 or more repetitions:-->
<xd:Transform Algorithm="?">
quae
<!--You have a CHOICE of the next 2 items at this level-->
<!--You may enter ANY elements at this point-->
<xd:XPath>?</xd:XPath>
ventos
</xd:Transform>
</xd:Transforms>
<xd:DigestMethod Algorithm="?">
verrantque
<!--You may enter ANY elements at this point-->
temperat
</xd:DigestMethod>
<xd:DigestValue>cid:172641613514</xd:DigestValue>
</xd:Reference>
</xd:SignedInfo>
<xd:SignatureValue Id="?">cid:1251727282131</xd:SignatureValue>
<!--Optional:-->
<xd:KeyInfo Id="?">
per
<!--You have a CHOICE of the next 8 items at this level-->
<xd:KeyName>?</xd:KeyName>
<xd:KeyValue>
turbine
<!--You have a CHOICE of the next 3 items at this level-->
<xd:DSAKeyValue>
<xd:P>cid:1066010663806</xd:P>
<xd:Q>cid:80373708466</xd:Q>
<!--Optional:-->
<xd:G>cid:683571385870</xd:G>
<xd:Y>cid:106943864982</xd:Y>
<!--Optional:-->
<xd:J>cid:47934226561</xd:J>
<xd:Seed>cid:1073461290020</xd:Seed>
<xd:PgenCounter>cid:36098958659</xd:PgenCounter>
</xd:DSAKeyValue>
<xd:RSAKeyValue>
<xd:Modulus>cid:165328090695</xd:Modulus>
<xd:Exponent>cid:611460631391</xd:Exponent>
</xd:RSAKeyValue>
<!--You may enter ANY elements at this point-->
circum
</xd:KeyValue>
<xd:RetrievalMethod URI="?" Type="?">
<!--Optional:-->
<xd:Transforms>
<!--1 or more repetitions:-->
<xd:Transform Algorithm="?">
regemque
<!--You have a CHOICE of the next 2 items at this level-->
<!--You may enter ANY elements at this point-->
<xd:XPath>?</xd:XPath>
nimborum
</xd:Transform>
</xd:Transforms>
</xd:RetrievalMethod>
<xd:X509Da

anesterov
@anesterov
Nov 15 2016 04:16
кстати, exportNsiList подписи не требует вроде
alexesuser
@alexesuser
Nov 15 2016 04:17
дык и я о том же, что несколько строк и те не работают, я поэтому и удалил блок signature
anesterov
@anesterov
Nov 15 2016 04:17
у Вас какой-то XML неправильный по-ходу
alexesuser
@alexesuser
Nov 15 2016 04:19
Он получен из "hcs-nsi-common-service.wsdl", с помощью soap UI
версия последняя: hcs_wsdl_xsd_v.10.0.2.10
anesterov
@anesterov
Nov 15 2016 04:21
вот запрос на список справочников (из рабочей программы)
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header>
<Action s:mustUnderstand="1" xmlns="http://schemas.microsoft.com/ws/2005/05/addressing/none">urn:exportNsiList</Action>
<h:ISRequestHeader xmlns="http://dom.gosuslugi.ru/schema/integration/base/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:h="http://dom.gosuslugi.ru/schema/integration/base/">
<h:Date>2016-11-15T07:20:01.8327637+03:00</h:Date>
<h:MessageGUID>ffa7fc96-694c-493e-bd5b-f267ddf187d3</h:MessageGUID>
</h:ISRequestHeader>
</s:Header>
<s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<exportNsiListRequest Id="signed-data-container" p5:version="10.0.1.2" xmlns:p5="http://dom.gosuslugi.ru/schema/integration/base/" xmlns="http://dom.gosuslugi.ru/schema/integration/nsi-common/">
<ListGroup xmlns="http://dom.gosuslugi.ru/schema/integration/nsi-base/">NSI</ListGroup>
</exportNsiListRequest>
</s:Body>
</s:Envelope>
у вас должно быть что-то типа того
alexesuser
@alexesuser
Nov 15 2016 04:33
@anesterov Попробовал отправить такой запрос, возвращается ошибка: SoapAction in header is blank
anesterov
@anesterov
Nov 15 2016 04:34
значит проблема в "отправлялке"
я не помню как SOAPUI работает, давно не пользовался
возможно там надо что-то где-то прописать
alexesuser
@alexesuser
Nov 15 2016 04:35
Я отправку делаю через CURL php
anesterov
@anesterov
Nov 15 2016 04:35
про это я вообще ничего сказать не могу
alexesuser
@alexesuser
Nov 15 2016 04:36
я был уверен, что если сервис отвечает, значит ошибок отправки быть не может )))
anesterov
@anesterov
Nov 15 2016 04:37
может проблема в том, что СИТ1 не работает?
в интерфейсе сделать ничего нельзя.....
alexesuser
@alexesuser
Nov 15 2016 04:38
пробую сит 2, со слов т/п СИТ 1 пробовать не стоит ...
.. т.к. он может работать не стабильно.
anesterov
@anesterov
Nov 15 2016 04:39
там все нестабильно
alexesuser
@alexesuser
Nov 15 2016 04:40
@anesterov а каким образом генерируете XML?
anesterov
@anesterov
Nov 15 2016 04:40
C#
alexesuser
@alexesuser
Nov 15 2016 04:41
это я понял, из чего? из тех wsdl и xsd, которые в папке с документами для Интеграции?
anesterov
@anesterov
Nov 15 2016 04:41
да
alexesuser
@alexesuser
Nov 15 2016 04:43
сами разрабатывали или в сети статейки есть?
anesterov
@anesterov
Nov 15 2016 04:46
использовали пример, созданный, по-моему, создателем данного чата,
затем переработали под свою архитектуру
вот еще статья хорошая:
https://habrahabr.ru/post/311062/
Denis Ulyanov
@DenisUlyanov
Nov 15 2016 04:54
@alexesuser в пхп есть soap client, попробуй его
alexesuser
@alexesuser
Nov 15 2016 05:01
@slvAuthor у меня есть клиент потроеный на CURL, я ранее через него передавал данные в один веб-сервис, вроде все рабоало
но не на ГИС
Denis Ulyanov
@DenisUlyanov
Nov 15 2016 05:07
ну ок. если осилишь, расскажи как смог)
Vershinin Sergey
@versh23
Nov 15 2016 05:13
@alexesuser как курлом отправляешь? для соапа в php надо action дописывать в header
Denis Ulyanov
@DenisUlyanov
Nov 15 2016 05:14
и еще, те кто на пхп делают, вы как реализуете отправку? демон/очереди/велосипеды?)
alexesuser
@alexesuser
Nov 15 2016 05:21
@slvAuthor Пока хиты

@versh23 Вот такой функцией:
function login($url,$login,$pass,$out){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, $url);
$fOut = fopen($_SERVER["DOCUMENT_ROOT"].'curl_out.txt', "w" );
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt ($ch, CURLOPT_STDERR, $fOut );

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

curl_setopt($ch, CURLOPT_USERPWD, $login.":".$pass);

curl_setopt($ch, CURLOPT_HEADER, 1);

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//сохранять полученные COOKIE в файл
//curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'cookie.txt');
curl_setopt($ch, CURLOPT_POSTFIELDS, $out);
$result=curl_exec($ch);

curl_close($ch);
return $result;
}

127.0.0.2 - адрес туннеля
$out - XML документ
Vershinin Sergey
@versh23
Nov 15 2016 05:29
так у вас header пустой ведь,нет?
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
вот сюда передавать
Syber79
@Syber79
Nov 15 2016 05:36
аааа...
Я уже себе весь мозг сломал.
Есть ктонить, кто на яве пишет?
7vitaly-krasovsky7
@7vitaly-krasovsky7
Nov 15 2016 05:49
Коллеги, у всех СИТ-01 отвалился?
anesterov
@anesterov
Nov 15 2016 05:49
да
7vitaly-krasovsky7
@7vitaly-krasovsky7
Nov 15 2016 05:49
А на СИТ-02 как дела обстоят? Та же беда?
anesterov
@anesterov
Nov 15 2016 05:50
я не могу сказать, мы первым пользуемся
Pavel Druzhinin
@pavelDruzhinin
Nov 15 2016 06:17
Всем привет. Подскажите где можно найти справочник Данных ОЖФ?
alexesuser
@alexesuser
Nov 15 2016 06:19
@versh23 да, пустой, а что туда необходимо включать?
Daniel
@mortifactor
Nov 15 2016 06:33
@pavelDruzhinin это NsiRAO, насколько я понял.
Pavel Druzhinin
@pavelDruzhinin
Nov 15 2016 06:42
@mortiruby Благодарю
anesterov
@anesterov
Nov 15 2016 06:59
А представителей "ланита" в чате нет?
Denis Ulyanov
@DenisUlyanov
Nov 15 2016 07:08
как думаешь?)
anesterov
@anesterov
Nov 15 2016 07:15
хотелось бы.....
в жире тикеты месяцами висят.....
стенды работают через раз,
хочется хоть какой-то ясности
Vershinin Sergey
@versh23
Nov 15 2016 07:18
Элвис вроде) но если вы думаете они будет онлайн вашими заявками заниматься - это наврядли
anesterov
@anesterov
Nov 15 2016 07:18
да хотя бы узнать, когда примерно СИТ1 заработает
Vershinin Sergey
@versh23
Nov 15 2016 07:21
да лучше бы ППАК работал:D
Denis Ulyanov
@DenisUlyanov
Nov 15 2016 07:25
сит1/2 это тестовые херня. ППАК это боевой?)
Nikita
@springjazzy
Nov 15 2016 07:27
Коллеги. В итоге надо ли сопоставлять лицевые счета?
МКД для РСО надо соспоставлять - УО может раньше завести дом.
Vershinin Sergey
@versh23
Nov 15 2016 07:28
@springjazzy так у РСО свои лицевые
Nikita
@springjazzy
Nov 15 2016 07:29
А как же концепция Единого лицевого счета?
anesterov
@anesterov
Nov 15 2016 07:29
ГИС ЖКХ их сами сопоставляют по адресу вроде
или речь о хранении ЕЛС у себя в системе?
Pavel Karasov
@ejsmile
Nov 15 2016 07:30
@anesterov по СНИЛС, причем при добавление СНИЛС у РСО ЕЛС еще раз смениться
Vershinin Sergey
@versh23
Nov 15 2016 07:30
ага)
Nikita
@springjazzy
Nov 15 2016 07:31
так ЕЛС напрямую же вроде не используется? Везде где AccountGUID - это именно идентификатор
надеюсь что идентификатор то не изменится если человек подтвердит свои паспортные данные
Pavel Karasov
@ejsmile
Nov 15 2016 07:32
ну например в штрих коде на квитанций, если печатать?
Vershinin Sergey
@versh23
Nov 15 2016 07:32
@springjazzy я пока не дошел, но идентификатор ЖКУ используется в ПД по моему. а оно состоит из ЕЛС + услуга
anesterov
@anesterov
Nov 15 2016 07:33
@versh23 AccountGuid в платежном документе
Nikita
@springjazzy
Nov 15 2016 07:33
подтверждаю. Только что посмотрел
Vershinin Sergey
@versh23
Nov 15 2016 07:33
@anesterov это хорошо) в excel идентификатор нужен ЖКУ))
а они там что то говорили, с 1 июля 2017 все на ЕЛС переходят. может уберут гуид?
Nikita
@springjazzy
Nov 15 2016 07:34
таак. Значит один только такой геморрный сервис - МКД
когда надо сначала экспортнуть. Проверить не добавил ли кто твой дом
потом либо импорт, либо update, либо ничего не делаем
Pavel Karasov
@ejsmile
Nov 15 2016 08:27
А кто подскажет оплата от юриков за обще домовое потребления мы тоже должны выгружать в ГИС ЖКХ?
Nikita
@springjazzy
Nov 15 2016 08:28
я вообще как то юриками не парюсь пока
физики наше всё
Pavel Karasov
@ejsmile
Nov 15 2016 08:29
сижу смотрю семинар банков по ГИС ЖКХ они говорят, что они будут отправлять платежи от юр. лиц за коммуналку. причем там сроки у них после 01.07.2016 это 2 часа на выгрузку в ГИС ЖКХ
Nikita
@springjazzy
Nov 15 2016 08:30
@ejsmile ты от банка интегрируешь?
Pavel Karasov
@ejsmile
Nov 15 2016 08:30
мы (РСО) тоже принимаем платежи от юриков за коммуналку вот и вопрос?
я знаю что надо начисления на юриков надо выгружать, а оплаты?
Nikita
@springjazzy
Nov 15 2016 08:30
Я сейчас для РСО делаю и они сказали что юриков вообще не трогаем
я так понимаю если юрик напрямую РСО заплатил и РСО принял платеж то РСО и должен отправить
если банк принял платеж то это его ответственность
Pavel Karasov
@ejsmile
Nov 15 2016 08:32
ну как бы это не правильно, нам на семинаре (другом), как раз и говорили, что по НЖП (нежилым/незаселеным помещениям) выгружать данные надо
Nikita
@springjazzy
Nov 15 2016 08:33
нужно - вопросов нет.
Но РСО больше волнует что физик по закону может не платить
за юрика если платить нужно же чтобы он еще в госуслугах был. Там все юрики есть?
Pavel Karasov
@ejsmile
Nov 15 2016 08:34
на текущем семинаре намекнули, что будет перенос (на 1 год минимум)
Nikita
@springjazzy
Nov 15 2016 08:35
Какой нибудь магазанчик по ремонту обуви будет там?
ну это понятно. У меня сроки по контрактам конец года
так что мне всё равно - делать надо
Pavel Karasov
@ejsmile
Nov 15 2016 08:36
через ЕСИА могут заходить юр лица
Nikita
@springjazzy
Nov 15 2016 08:37
заходить да. Чтобы лицевой счет создать на Юр лицо необходимо найти его OrganizationGUID
который получается через экспорт ОГРН
если организации нет в госуслугах то нам ничего не вернется
такая ситуация возможна?
Pavel Karasov
@ejsmile
Nov 15 2016 08:37
не знаю я в эту сторону пока не ковырял
у меня проблемы с СИТ-ами тех поддержка сказала ждите 11 версий
anesterov
@anesterov
Nov 15 2016 08:39
СИТ1 ожил
Nikita
@springjazzy
Nov 15 2016 08:39
Да вообще жесть. Они ее выпуск приурочили к выходу нового фильма по Звездным войнам что ли..
Vershinin Sergey
@versh23
Nov 15 2016 08:40
11 - 2 декабря ж типа
а 12 - середина, конец декабря))
ndbn
@ndbn
Nov 15 2016 08:59
Не помнимаю, какая инфраструктура там, если из одного и того же сервиса updateHouse работает , а exportHouse с таймаутом умирает, как это вообще реализовать можно, каждая функция работает в отдельном сервисе что-ли
anesterov
@anesterov
Nov 15 2016 09:21
@ndbn умирать он может из за неоптимизированной (кривой) реализации, и инфраструктура тут не причем
ndbn
@ndbn
Nov 15 2016 09:24
ну было сначала так updateHouse - таймаут, exportHouse - работает, потом поменялись местами, причем я клацал по несколько раз и updateHouse обрабатывает быстро, а exportHouse зависает, обновления вроде нет сейчас, поэтому вопрос скорей не к реализации
alexesuser
@alexesuser
Nov 15 2016 09:39
@versh23 Получилось отправить запрос и получить ответ, кстати, на запрос требовалась обязательная подпись (что противоречит документации). А в ответе опять же есть контейнер с подписью, для чего он нужен?
Nikita
@springjazzy
Nov 15 2016 09:40
для того же. Что ответ никто не подменил
Daniel
@mortifactor
Nov 15 2016 09:40
а у вас есть какой-нибудь универсальный обработчик ошибок для возвращенного значения? или там универсально не получится? пытаюсь через рефлексию искать Item/Items и типы сравнивать, но что-то кажется велосипедно
Nikita
@springjazzy
Nov 15 2016 09:41
я сделал интерфейсы
реализовал их в partial классах
и работаю через интерфейсы а не через реализацию. Всё как Фаулер завещал
Daniel
@mortifactor
Nov 15 2016 09:43
круто, мне еще далеко до такого :) но буду иметь ввиду
ndbn
@ndbn
Nov 15 2016 09:46
@springjazzy а можно простенький пример, посмотреть что это такое, интересно.
Nikita
@springjazzy
Nov 15 2016 09:49
ну например
namespace DomIntegration.NsiCommonServiceReference10023
{
public partial class ErrorMessageType : IErrorMessageType
{
}
}
namespace DomIntegration.NsiCommonServiceAsyncReference10023
{
public partial class ErrorMessageType : IErrorMessageType
{
}
}
ndbn
@ndbn
Nov 15 2016 09:50
@springjazzy это пример партиал класса, это я знаю что такое, а как интерфейс помогает в получении ответа
Nikita
@springjazzy
Nov 15 2016 09:50
где public interface IErrorMessageType
{
string ErrorCode
{
get;
set;
}
    string Description
    {
        get;
        set;
    }

    string StackTrace
    {
        get;
        set;
    }
}
ну так helper класс который обрабатывает ошибки работает через интерфейс
ему пофиг что там конкретно лежит
ndbn
@ndbn
Nov 15 2016 09:51
свои геттеры и сеттеры пишете для полей класса?
Nikita
@springjazzy
Nov 15 2016 09:52
редко. В основном беру сигнатуру Ланита. Смотрю какие сервисы похожи. Если где-то дублирование то выношу в интерфейс
если надо что-то под какой-то интерфейс а этого нет в классе то добавляю методы
как здесь кстати код форматировать?
ndbn
@ndbn
Nov 15 2016 09:55
Ctrl+Shift+M справка открывается
Спасибо, надо этого Фаулера посмотреть, для развития
Nikita
@springjazzy
Nov 15 2016 09:56
ну это еще в GOF писали
который Паттерны проектирования
всякие Decorator, Adapter
ndbn
@ndbn
Nov 15 2016 09:58
Не совсем вижу связь, там то общие принципы
Опыта мало у меня в этом
Nikita
@springjazzy
Nov 15 2016 10:04
Там вначале книги говорится про принципы построения архитектур для повторного использования
программируйте в соответствии с интерфейсом, а не реализацией
Daniel
@mortifactor
Nov 15 2016 10:04
чтото ппак отвалился
JBWEB000065: HTTP Status 404 - /ext-bus-home-management-service/services/HomeManagementAsync
Nikita
@springjazzy
Nov 15 2016 10:05
вообще рекомендую почитать. И на собеседованиях часто спрашивают.
Daniel
@mortifactor
Nov 15 2016 10:06
о, поднялся..
ndbn
@ndbn
Nov 15 2016 10:06

@springjazzy т.е. при такой записи:

public partial class ErrorMessageType
{
  private string errorCodeField;
  public string ErrorCode
  {
      get
      {
          return this.errorCodeField;
      }
      set
      {
          this.errorCodeField = value;
      }
  }
}

public interface IErrorMessageType
{
    string ErrorCode
    {
        get;
        set;
    }
}

public partial class ErrorMessageType : IErrorMessageType
{

}

var tmp = new ErrorMessageType();
IErrorMessageType itmp = tmp as IErrorMessageType;

itmp.ErrorCode = "Error";

в последней строке компилятор не ругнётся? Из-за совпадения имен полей IErrorMessageType.ErrorCode будет указывать на ErrorMessageType.ErrorCode?

Nikita
@springjazzy
Nov 15 2016 10:08
Да. У тебя здесь неявная реализация интерфейса. Компилятор если видит что поля совпадают то предполагает что класс данный интерфейс реализует
ndbn
@ndbn
Nov 15 2016 10:09
@springjazzy Это и интересовало, спасибо
Nikita
@springjazzy
Nov 15 2016 10:10
ну а потом работаешь через интерфейс, а разные сервисы у тебя этот интерфейс реализуют
ndbn
@ndbn
Nov 15 2016 10:10
@springjazzy А книга, собственно: "Рефакторинг. Улучшение существующего кода" ?
Nikita
@springjazzy
Nov 15 2016 10:10
Да
ndbn
@ndbn
Nov 15 2016 10:10
Спасибо!
ri8on
@ri8on
Nov 15 2016 11:23
никто не сталкивался с проблемой у ответов, в которых возвращаются списки?
например тот же exportNsiList
и в схеме описано так
<xs:choice minOccurs="0"> <xs:element ref="base:ErrorMessage"/> <xs:element name="NsiItem" type="nsi-base:NsiItemType"/> <xs:element name="NsiList" type="nsi-base:NsiListType"/> </xs:choice>
но есть ощущение что там должен быть не choice а all
ndbn
@ndbn
Nov 15 2016 11:31
@ri8on поле одно, но там либо ошибка, либо результат
exportNsiList.png
ri8on
@ri8on
Nov 15 2016 12:18
да, точно
судя по всему либа не понимает как такое разбирать
как то все у питона с соапом бедновато
ndbn
@ndbn
Nov 15 2016 12:22
@ri8on если у вас генерируется какой-то класс в питоне и этих полей там два то это тоже нормально. В Делфи так же генератор делал
kolodinivan
@kolodinivan
Nov 15 2016 12:34
Коллеги, кто ни будь может для примера скинут подписанный xml
ndbn
@ndbn
Nov 15 2016 12:40
Если интересует структура, то есть тут https://habrahabr.ru/post/300856/
kolodinivan
@kolodinivan
Nov 15 2016 12:40
интересует сам xml
ndbn
@ndbn
Nov 15 2016 12:41
ну выше тут выкладывали недавно, листайте вверх
сообщение от @Syber79 было
kolodinivan
@kolodinivan
Nov 15 2016 12:45
выше посмотрел до 1.11. не нашел
от Syber, ща посморю еще раз
ndbn
@ndbn
Nov 15 2016 12:47
@kolodinivan поиск по слову "xmldsig" сделайте, будут результаты
kolodinivan
@kolodinivan
Nov 15 2016 13:03
@ndbn результат такой что только структуры, без данных приссылали, мне нужно xml запрос, перед отправкой в ГИС
Я например через Fiddler смотрю
ri8on
@ri8on
Nov 15 2016 13:05
насколько я понимаю, конкретный запрос не пройдет без поднятого туннеля с правильным ключем
ключем, я думаю, никто не поделится)
я делал основываясь на https://bitbucket.org/slavam/signature-demo/overview
kolodinivan
@kolodinivan
Nov 15 2016 13:07
@ri8on там же только открытая часть
ndbn
@ndbn
Nov 15 2016 13:08
ну вот например https://gitter.im/springjazzy/GIS_JKH_Integration?at=57ce67dbf5a156f5648686c0 что не так то
kolodinivan
@kolodinivan
Nov 15 2016 13:08
@ri8on я тоже
@ndbn ну это больше похоже на шаблон
ndbn
@ndbn
Nov 15 2016 13:10
А как по вашему выглядит xml?
kolodinivan
@kolodinivan
Nov 15 2016 13:11
@ri8on а у вас корректно подписывает по питоновской реализации, у меня почемуто после каждого элемента \n и \b в файл out выкидывал
@ndbn )), не так он и выглядит, под шаблоном я имел ввиду то что нехватает, только самих данных по подписи
ri8on
@ri8on
Nov 15 2016 13:13
вроде корректно, только почему-то если не каноникализировать вручную перед отправкой может ругаться
kolodinivan
@kolodinivan
Nov 15 2016 13:14
@ri8on на питоне, так и оставили, или перенесли куда то в другой язык
ri8on
@ri8on
Nov 15 2016 13:14
такое ощущение что на стороне гиса они этого не делают, а берут для проверки xml целиком
ndbn
@ndbn
Nov 15 2016 13:15
@kolodinivan ну вырезал человек свои данные, это был первый результат из поиска, вот второй https://gitter.im/springjazzy/GIS_JKH_Integration?at=5804bcc5b68c1ca566c27152 , что не так то
ri8on
@ri8on
Nov 15 2016 13:15
на питоне, но как в примере не осталось, растащил по кускам в код
kolodinivan
@kolodinivan
Nov 15 2016 13:19
@ndbn и правда, а "-" и "+" перед элементами немогу разобрать, зачем?
что то не валидится
ndbn
@ndbn
Nov 15 2016 13:20
@kolodinivan очевидно скопированные символы для фолдинга, раз есть + вам наверное тоже не подойдёт
kolodinivan
@kolodinivan
Nov 15 2016 13:39
Может кто нибудь еще раз поделиться подписанным xml запросом,