Так как у СМЭВ есть образцовая реализация механизма их же нормализации XML в их методической рекомендации (можно глянуть тут пункт 12.4), то я решил для проверки собственноручной реализации ее в пыхе попробовать проверить себя, все ли правильно. Проблема в том что в java я новичок и сильно путаюсь в обилии библиотек и классов, но среду худо-бедно настроил. Смысл вопроса в следующем:
На входе в качестве аргумента в функцию для трансформации принимется объект класса XMLSignatureInput. После гугления и матерков я нагуглил вроде правильынй способ получить его из обычной и привычной строки (в пыхе к счастью все намного проще):
String xmlText = "<ns2:SenderProvidedRequestData xmlns:ns2=\"urn://x-artefacts-smev-gov-ru/services/message-exchange/types/1.0\" Id=\"SIGNED_BY_CONSUMER\">\n" +
" <MessagePrimaryContent xmlns=\"urn://x-artefacts-smev-gov-ru/services/message-exchange/types/basic/1.0\">\n" +
" <SomeRequest:SomeRequest xmlns:SomeRequest=\"urn://x-artifacts-it-ru/vs/smev/test/test-business-data/1.0\">\n" +
" <x xmlns=\"urn://x-artifacts-it-ru/vs/smev/test/test-business-data/1.0\">qweqwe</x>\n" +
" </SomeRequest:SomeRequest>\n" +
" </MessagePrimaryContent>\n" +
"</ns2:SenderProvidedRequestData>";
byte[] byteArray = xmlText.getBytes("UTF-8");
InputStream stream = new ByteArrayInputStream(byteArray);
XMLSignatureInput xml = new XMLSignatureInput(stream);
Как я понял мы преобразуем набор символов в какой-то поток и пихаем его в этот импут. Онако образцовая ХМЛ из примера той же методической рекомендации не хочет читаться механизмом трансформации. И когда делаешь вот так:
xml = transform.enginePerformTransform(xml);
То валится ошибка в стиле
javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
Т.е. при начале чтения этого самого XMLSignatureInput он валится и не может его прочитать. Такое ощущение что нужная структура данных из текстовой ХМЛки не создается. Если кто-то работал с XMLSignatureInput или еще лучше той ОБРАЗЦОВОЙ реализацией от СМЭВ поясните пожалуйста как оно правильно делается?
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
Делаю редактор кода с подсветкой синтаксиса на Swing в NetBeans 82
Здравствуйте! При переводе миллисекунд в минуты, число превышает 60, должно быть меньше 60Что я делаю не так, подскажите? Спасибо