Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы<12
Опции
К последнему сообщению К первому непрочитанному
Offline Евгений Афанасьев  
#11 Оставлено : 20 февраля 2014 г. 16:44:46(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 4,001
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 21 раз
Поблагодарили: 713 раз в 673 постах
NoClassDefFoundError: javax/wsdl/OperationType
К wss4j еще какие-то библиотеки прилагались, кажется, wsdl4j.
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
Marko13 оставлено 21.02.2014(UTC)
Offline Marko13  
#12 Оставлено : 21 февраля 2014 г. 10:13:15(UTC)
Marko13

Статус: Участник

Группы: Участники
Зарегистрирован: 11.02.2014(UTC)
Сообщений: 11
Российская Федерация
Откуда: Уфа

Сказал(а) «Спасибо»: 2 раз
Спасибо разобрался, все работает. Может кому понадобится.

1) Устанавливаем JDK 1.7.0_03
2) При использовании eToken ставим пакет OCF.
eToken RTE или eToken PKI client для нужной версии ОС (со страницы загрузки файлов)
скопировать файлы *.jar из архива OCFbase.rar в ${java.home}/jre/lib/ext.
скопировать файл opencard.properties из этого же архива в ${java.home}/jre/lib.
модуль поддержки eToken для КриптоПро JCP. При установке обязательно нужно в качестве папки установки выбрать путь к папке с Java
3) установить КриптоПро JCP версии 1.0.54 в используемую JRE,
4) Все библиотеки должны быть указаны в проекте и установлены как минимум ${java.home}/jre/lib/ext
5) Список библиотек которые используются у меня (может есть лишние)

Offline Marko13  
#13 Оставлено : 24 февраля 2014 г. 10:28:38(UTC)
Marko13

Статус: Участник

Группы: Участники
Зарегистрирован: 11.02.2014(UTC)
Сообщений: 11
Российская Федерация
Откуда: Уфа

Сказал(а) «Спасибо»: 2 раз
Не много не по адресу наверное, но все же.
Код:
 SOAPConnectionFactory soapConnectionFactory;
    	        try {soapConnectionFactory = SOAPConnectionFactory.newInstance();
    				SOAPConnection soapConnection = soapConnectionFactory.createConnection();
    				URL url = new URL("http://smev-mvf.test.gosuslugi.ru:7777/gateway/services/SID0003218");    				
    				SOAPMessage soapResponse = soapConnection.call(message, url);
    				SimpleDateFormat dateFormatLocal = new SimpleDateFormat("ddMM_HHmm");
    				OutputStream outStream = new FileOutputStream(SOAP_READY_MESSAGE + "request_"
    						+ dateFormatLocal.format(new Date()) + ".xml");
    				soapResponse.writeTo(outStream);
    				soapConnection.close();
    				Array.writeFile(SOAP_READY_MESSAGE + "signed_" + dateFormatLocal.format(new Date()) + ".xml", soapMessageStr.getBytes(Charset.forName("UTF-8")));    				

    			} catch (UnsupportedOperationException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			} catch (SOAPException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			} catch (IOException e) {
    				// TODO Auto-generated catch block
    				e.printStackTrace();
    			}
    	        

В результате приходит сообщение SMEV-200008: При обработке ответа произошла ошибка: Не найдена подпись документа.
Сообщение сохраненное в файл, валидацию на сайте проходит.
Offline miser  
#14 Оставлено : 24 февраля 2014 г. 14:43:38(UTC)
miser

Статус: Активный участник

Группы: Участники
Зарегистрирован: 14.03.2011(UTC)
Сообщений: 153
Мужчина
Откуда: Санкт-Петербург

Сказал «Спасибо»: 1 раз
Поблагодарили: 7 раз в 5 постах
Мне кажется, вы забыли подписать сам документ, перед тем, как поместить его в SOAP сообщение.

Извиняюсь за рекламу. В блоге, http://oldcouncil.blogsp...2013_10_01_archive.html, описано, как это можно сделать.
Offline Marko13  
#15 Оставлено : 24 февраля 2014 г. 15:17:02(UTC)
Marko13

Статус: Участник

Группы: Участники
Зарегистрирован: 11.02.2014(UTC)
Сообщений: 11
Российская Федерация
Откуда: Уфа

Сказал(а) «Спасибо»: 2 раз
Сам документ подписан, я просто весь код сюда вставлять не стал.
Код:
Array.writeFile(SOAP_READY_MESSAGE + "signed_" + dateFormatLocal.format(new Date()) + ".xml", soapMessageStr.getBytes(Charset.forName("UTF-8")));

Вот тут я его сохраняю, и на сайте это сообщение валидацию проходит.
Вот полный текст ответа


Что-то явно ломается, так как SourceMessage не то.
Если же в теге body поменять контент, т.е. уже ЭП будет не верна, то ответ такой, с нормальным SourceMessage.
Offline Marko13  
#16 Оставлено : 6 марта 2014 г. 9:08:20(UTC)
Marko13

Статус: Участник

Группы: Участники
Зарегистрирован: 11.02.2014(UTC)
Сообщений: 11
Российская Федерация
Откуда: Уфа

Сказал(а) «Спасибо»: 2 раз
Как мне объяснили в СМЭВ, это ответ из ГИС ГМП.
Код:
<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope"><faultcode>S:Server</faultcode><faultstring>java.lang.RuntimeException: Unknown Inbound Message</faultstring></S:Fault></S:Body></S:Envelope>

Тех поддержка у них очень медленная.
Кто-нибудь скиньте пожалуйста пример СОАП сообщения, которое нормально обрабатывается в ГИСГМП. Интересует импорт платежей.
Или подскажите что не так тут.
Offline Marko13  
#17 Оставлено : 13 марта 2014 г. 10:22:26(UTC)
Marko13

Статус: Участник

Группы: Участники
Зарегистрирован: 11.02.2014(UTC)
Сообщений: 11
Российская Федерация
Откуда: Уфа

Сказал(а) «Спасибо»: 2 раз
удалил

Отредактировано пользователем 13 марта 2014 г. 15:54:53(UTC)  | Причина: Не указана

RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest (4)
2 Страницы<12
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.