public class CertificateLoader {
private CertificateLoader() {}
public static KeyStore load() {
try {
InputStream is = Files.newInputStream(
Paths.get(AuthConfiguration.CERTIFICATE_PATH));
if (is == null) {
throw new AuthException("Сертификат не найден.", null);
} else {
System.out.println("Путь к сертификату: " + is);
}
KeyStore keyStore = KeyStore.getInstance("PKCS12");
keyStore.load(is, AuthConfiguration.CERTIFICATE_PASSWORD.toCharArray());
return keyStore;
} catch (Exception e) {
System.out.println("Путь к сертификату из catch: " + CertificateLoader.class.getClassLoader().getResourceAsStream(AuthConfiguration.CERTIFICATE_PATH));
throw new AuthException("Не могу загрузить сертификат, ошибка: ", e);
}
}
}
---
KeyStore keyStore = CertificateLoader.load();
System.out.println("CERTIFICATE_PATH: " + AuthConfiguration.CERTIFICATE_PATH);
System.out.println("keyStore: " + keyStore);
Response response2 = RestAssured
.given()
.config(RestAssured.config()
.sslConfig(new SSLConfig().keyStore(String.valueOf(keyStore),
AuthConfiguration.CERTIFICATE_PASSWORD)))
.when()
.get(AuthConfiguration.AUTH_URL);
---
Путь к сертификату: sun.nio.ch.ChannelInputStream@68f32020
CERTIFICATE_PATH: src/main/resources/16733424.p12
keyStore: java.security.KeyStore@61dde151
java.io.FileNotFoundException: java.security.KeyStore@61dde151 (Нет такого файла или каталога)
at java.base/java.io.FileInputStream.open0(Native Method)
at java.base/java.io.FileInputStream.open(FileInputStream.java:213)
at java.base/java.io.FileInputStream.<init>(FileInputStream.java:152)
at org.codehaus.groovy.runtime.ResourceGroovyMethods.newInputStream(ResourceGroovyMethods.java:2216)
at org.codehaus.groovy.runtime.ResourceGroovyMethods.withInputStream(ResourceGroovyMethods.java:1920)
at org.codehaus.groovy.runtime.dgm$1161.invoke(Unknown Source)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:253)
at org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:57)