Статус: Активный участник
Группы: Участники
Зарегистрирован: 28.04.2016(UTC) Сообщений: 35 Откуда: Moscow Сказал(а) «Спасибо»: 1 раз Поблагодарили: 2 раз в 2 постах
|
Есть приложение для взаимодействия со СМЭВ 3 (smev3), построено на базе клиента, использует рекомендованные для клиента jre 1.7.05 и jcp 1.54. Кроме того сейчас пробую по аналогии с примерами из wss4j.wss4j1_6_3.tests.forum сделать приложение для СМЭВ 2 (smev2). smev3 использует xmlsec-1.4.8 если положить в jre/lib/ext xmlsec-1.5.0 выдаёт эксепшен: Цитата: Exception in thread "main" java.lang.NoSuchMethodError: org.apache.xml.security.algorithms.SignatureAlgorithm.providerInit()V at ru.voskhod.crypto.DigitalSignatureFactory.initXmlSec(DigitalSignatureFactory.java:71) at ru.voskhod.crypto.DigitalSignatureFactory.init(DigitalSignatureFactory.java:37)
если убрать xmlsec из jre/lib/ext и добавить xmlsec-1.4.8 к проекту, то Цитата: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/security/algorithms/SignatureAlgorithmSpi at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:791) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:791) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at java.lang.ClassLoader.loadClass(ClassLoader.java:410) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:186) at ru.voskhod.crypto.DigitalSignatureFactory.initXmlSec(DigitalSignatureFactory.java:70) at ru.voskhod.crypto.DigitalSignatureFactory.init(DigitalSignatureFactory.java:37) at Test.initMessageExchangeEndpoint(Test.java:257) at Test.main(Test.java:90)
При этом smev2 использует xmlsec-1.5.0 и при подключении 1.4.8 через jre/lib/ext Цитата: Exception in thread "main" java.lang.NoSuchMethodError: org.apache.xml.security.utils.resolver.ResourceResolver.getInstance(Lorg/w3c/dom/Attr;Ljava/lang/String;Z)Lorg/apache/xml/security/utils/resolver/ResourceResolver; at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMURIDereferencer.dereference(DOMURIDereferencer.java:95) at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.dereference(DOMReference.java:395) at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMReference.digest(DOMReference.java:329) at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.digestReference(DOMXMLSignature.java:453) at ru.CryptoPro.JCPxml.dsig.internal.dom.DOMXMLSignature.sign(DOMXMLSignature.java:352) at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:169)
если убрать xmlsec из jre/lib/ext и подключить xmlsec-1.5.0 к проекту, то выдаёт Цитата: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/security/exceptions/AlgorithmAlreadyRegisteredException at ru.CryptoPro.JCPxml.xmldsig.JCPXMLDSigInit.isInitialized(Unknown Source) at wss4j.wss4j1_6_3.tests.forum.SMEVExample.main(SMEVExample.java:91) Caused by: java.lang.ClassNotFoundException: org.apache.xml.security.exceptions.AlgorithmAlreadyRegisteredException at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) ... 2 more
Хотелось бы найти способ подружить оба проекта на одной JRE чтобы не заниматься костылингом
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 07.03.2015(UTC) Сообщений: 1
|
Сейчас столкнулся с такой же проблемой. Удалось ли найти решение?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 4,003 Откуда: Крипто-Про Сказал(а) «Спасибо»: 21 раз Поблагодарили: 714 раз в 674 постах
|
Здравствуйте. jcpxml из jcp 1.0.54 зависит от xmlsec-1.4.4. Попробуйте использовать jcp 2.0, в нем jcpxml зависит от xmlsec-1.5.0. |
|
|
|
|
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close