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

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline billGilbert  
#1 Оставлено : 22 ноября 2023 г. 1:06:13(UTC)
billGilbert

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

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

Сказал(а) «Спасибо»: 3 раз
При подключении провайдера

Цитата:
Security.addProvider(new JCSP());



Код:
Exception in thread "main" java.lang.NoSuchMethodError: 'ru.CryptoPro.JCP.tools.logger.DefaultLoggerInterface ru.CryptoPro.JCP.tools.logger.LoggingFactory.createLogger(java.lang.String)'
	at ru.CryptoPro.JCSP.JCSPLogger.<clinit>(Unknown Source)
	at ru.CryptoPro.JCSP.KeyStore.KeyStoreConfigBase.g(Unknown Source)
	at ru.CryptoPro.JCSP.KeyStore.KeyStoreConfig.load(Unknown Source)
	at ru.CryptoPro.JCSP.KeyStore.KeyStoreConfig.<clinit>(Unknown Source)
	at ru.CryptoPro.JCSP.JCSP.a(Unknown Source)
	at ru.CryptoPro.JCSP.JCSP.<init>(Unknown Source)


Все какие можно библиотеки для логгинга я добавил
Код:
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.7.5</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.5</version>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.7.5</version>
        </dependency>


В чём может быть ошибка?
Offline Евгений Афанасьев  
#2 Оставлено : 22 ноября 2023 г. 8:24:34(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
Если используется версия для java 10, Jcp.jar и все остальное добавили в проект?
Offline billGilbert  
#3 Оставлено : 22 ноября 2023 г. 11:45:54(UTC)
billGilbert

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

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

Сказал(а) «Спасибо»: 3 раз
Автор: Евгений Афанасьев Перейти к цитате
Если используется версия для java 10, Jcp.jar и все остальное добавили в проект?


JDK 11 использую

Зависимости заливаю через mvn install в локальный репозиторий пока, потом вот так подключаю
Вот так
Цитата:

call mvn install:install-file -Dfile=./libs/JCSP.jar -DgroupId=ru.cryptopro.jcp -DartifactId=jcp-jscp -Dversion=5.0.42119-A -Dpackaging=jar


Цитата:
<dependency>
<groupId>ru.cryptopro.jcp</groupId>
<artifactId>jcp-jscp</artifactId>
<version>5.0.42119-A</version>
</dependency>
<dependency>
<groupId>ru.cryptopro.jcp</groupId>
<artifactId>jcp-jcp</artifactId>
<version>5.0.42646-A</version>
</dependency>


Провайдер JCP нормально инициализируется

Т.е. первая строчка проходит а на второй получаю ошибку.
Цитата:

Security.addProvider(new JCP());
Security.addProvider(new JCSP());
Offline Евгений Афанасьев  
#4 Оставлено : 22 ноября 2023 г. 19:06:27(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
Запустите в ком. строке в виде java -cp <указать папку с jar-файлами дистрибутива JCP или JCSP> <ваш класс>
Ошибка указывает на то, что нет JCP.jar, в котором этот метод находится. Возможно, вы пытаетесь использовать JCSP без JCP.

Отредактировано пользователем 22 ноября 2023 г. 19:07:36(UTC)  | Причина: Не указана

Offline billGilbert  
#5 Оставлено : 22 ноября 2023 г. 21:50:06(UTC)
billGilbert

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

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

Сказал(а) «Спасибо»: 3 раз
Автор: Евгений Афанасьев Перейти к цитате
Запустите в ком. строке в виде java -cp <указать папку с jar-файлами дистрибутива JCP или JCSP> <ваш класс>
Ошибка указывает на то, что нет JCP.jar, в котором этот метод находится. Возможно, вы пытаетесь использовать JCSP без JCP.


Вот библиотеки, которые я добавил в папку libs
Цитата:
AdES-core.jar
ASN1P.jar
asn1rt.jar
bcpkix-jdk15on-1.60.jar
bcprov-jdk15on-1.60.jar
CAdES.jar
cmsutil.jar
commons-logging-1.2.jar
forms_rt.jar
httpasyncclient-4.1.4.jar
httpclient-4.5.8.jar
httpcore-4.4.10.jar
httpcore-nio-4.4.10.jar
J6CF.jar
J6Oscar.jar
jaxws-rt-2.3.0.jar
JCP.jar
JCPControlPane.jar
JCPRequest.jar
JCPRevCheck.jar
JCPRevTools.jar
JCPxml.jar
JCryptoP.jar
JCSP.jar
json-20180813.jar
junit-4.13-beta-2.jar
log4j-1.2.16.jar
OCF.jar
Rutoken.jar
serializer-2.7.2.jar
slf4j-api-1.7.25.jar
slf4j-api-1.7.5.jar
slf4j-log4j12-1.7.5.jar
tls_proxy.jar
XAdES.jar
xalan-2.7.2.jar
xercesImpl-2.9.1.jar
xml-security-impl-1.0.jar
XMLDSigRI.jar
xmlParserAPIs-2.6.2.jar
xmlsec-2.1.2.jar


Из самого файла удалил ВСЁ лишнее. только инициализация JSCP

Цитата:
import ru.CryptoPro.JCPxml.xmldsig.JCPXMLDSigInit;
import ru.CryptoPro.JCSP.JCSP;

import java.security.Security;


public class XmlSignStep1 {
public static void main(String[] args) throws Exception {
JCPXMLDSigInit.init();

System.out.println("Initialization success");
System.setProperty("file.encoding", "UTF-8");
Security.addProvider(new JCSP());

System.out.println("Process finished...");
}
}


Результат почему-то тот же

Цитата:

java -classpath "libs\*" XmlSignStep1.java
log4j:WARN No appenders could be found for logger (org.apache.xml.security.Init).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.or...4j/1.2/faq.html#noconfig for more info.
Initialization success
Exception in thread "main" java.lang.NoSuchMethodError: 'ru.CryptoPro.JCP.tools.logger.DefaultLoggerInterface ru.CryptoPro.JCP.tools.logger.LoggingFactory.createLogger(java.lang.String)'
at ru.CryptoPro.JCSP.JCSPLogger.<clinit>(Unknown Source)
at ru.CryptoPro.JCSP.KeyStore.KeyStoreConfigBase.g(Unknown Source)
at ru.CryptoPro.JCSP.KeyStore.KeyStoreConfig.load(Unknown Source)
at ru.CryptoPro.JCSP.KeyStore.KeyStoreConfig.<clinit>(Unknown Source)
at ru.CryptoPro.JCSP.JCSP.a(Unknown Source)
at ru.CryptoPro.JCSP.JCSP.<init>(Unknown Source)
at XmlSignStep1.main(XmlSignStep1.java:25)


убираю JSCP и ставлю JCP - всё норм.
Offline Евгений Афанасьев  
#6 Оставлено : 22 ноября 2023 г. 23:47:58(UTC)
Евгений Афанасьев

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

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

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 704 раз в 665 постах
Цитата:

<dependency>
<groupId>ru.cryptopro.jcp</groupId>
<artifactId>jcp-jscp</artifactId>
<version>5.0.42119-A</version>
</dependency>
<dependency>
<groupId>ru.cryptopro.jcp</groupId>
<artifactId>jcp-jcp</artifactId>
<version>5.0.42646-A</version>
</dependency>

Вы тут разные версии смешали? Так нельзя делать, все должно быть в рамках одной версии.
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
billGilbert оставлено 22.11.2023(UTC)
Offline billGilbert  
#7 Оставлено : 22 ноября 2023 г. 23:57:16(UTC)
billGilbert

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

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

Сказал(а) «Спасибо»: 3 раз
Автор: Евгений Афанасьев Перейти к цитате
Цитата:

<dependency>
<groupId>ru.cryptopro.jcp</groupId>
<artifactId>jcp-jscp</artifactId>
<version>5.0.42119-A</version>
</dependency>
<dependency>
<groupId>ru.cryptopro.jcp</groupId>
<artifactId>jcp-jcp</artifactId>
<version>5.0.42646-A</version>
</dependency>

Вы тут разные версии смешали? Так нельзя делать, все должно быть в рамках одной версии.


Да, уже понял ошибку.

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