Статус: Новичок
Группы: Участники
Зарегистрирован: 05.01.2020(UTC) Сообщений: 6
|
Здравствуйте. При попытке запустить пример Sample-sources/CryptXML.java Код:
public static void main(String[] args) throws Exception {
/**
* Регистрация алгоритмов ГОСТ
*/
XmlInit.init();
check(JCP.GOST_EL_DH_EPH_NAME, "Crypto", JCP.GOST_EL_SIGN_NAME, JCP.PROVIDER_NAME, "CN=cert01");
check(JCP.GOST_DH_2012_256_NAME, "Crypto", JCP.GOST_SIGN_2012_256_NAME, JCP.PROVIDER_NAME, "CN=cert256");
check(JCP.GOST_DH_2012_512_NAME, "Crypto", JCP.GOST_SIGN_2012_512_NAME, JCP.PROVIDER_NAME, "CN=cert512");
System.out.println("%%% OK %%%");
}
приложение падает на вызове функции check с ошибкой java.security.NoSuchProviderException: no such provider: Crypto. Подскажите в чем причина и в какую сторону копать?
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,963 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Здравствуйте. Приведите полный номер версии JCP в формате x.y.zzzzz, Java 8 или 10+? |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 05.01.2020(UTC) Сообщений: 6
|
Автор: Евгений Афанасьев Здравствуйте. Приведите полный номер версии JCP в формате x.y.zzzzz, Java 8 или 10+? Здравствуйте. jcp - 2.0.40035, Java 8
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 05.01.2020(UTC) Сообщений: 6
|
Ситуация изменилась. Сейчас получаю ошибку Код:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xml/security/exceptions/AlgorithmAlreadyRegisteredException
at com.example.fss_wsdl.utils.CryptXML.main(CryptXML.java:46)
Caused by: java.lang.ClassNotFoundException: org.apache.xml.security.exceptions.AlgorithmAlreadyRegisteredException
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
У меня в проекте есть папка libs, в которую я скопировал jcp-шные jar-файлы: ASN1p, asn1rt, CAdES, forms_rt, J6CF, J6Oscar, JCP, JCPInst, JCPRequest, JCPRevCheck, JCPRevTools, JCPxml, JCryptoP, OCF, Oscar, XMLDsigRI. В проект их подключал через gradle (implementation files('/libs/ASN1p.jar') и т. д.) Таким же образом подключены 4 файла, про которые сказано в документации (они тоже лежат в папке libs) Код:
implementation files('libs/commons-logging-1.2.jar')
implementation files('libs/serializer-2.7.1.jar')
implementation files('libs/xalan-2.7.1.jar')
implementation files('libs/xmlsec-1.5.0.jar')
Может дело в версиях файлов? Upd.Скопировал 4 файла в .../jre/lib/ext и всё заработало. Единственное, что попробовал заменить xmlsec-1.5.0 на более свежую версию 2.3.0 и опять повалились ошибки - пока остановлюсь на рабочем варианте. Отредактировано пользователем 19 мая 2022 г. 13:05:45(UTC)
| Причина: Не указана
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 06.12.2008(UTC) Сообщений: 3,963 Откуда: Крипто-Про Сказал(а) «Спасибо»: 20 раз Поблагодарили: 704 раз в 665 постах
|
Автор: korka попробовал заменить xmlsec-1.5.0 на более свежую версию 2.3.0 и опять повалились ошибки xmlsec версии 1.х и 2.х отличаются, поддерживаемой JCP считается 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