0

I have written the below code to call REST api with pfx file in keystore using Rest Assured.

    RestAssuredConfig configRestAssured = new RestAssuredConfig();
    SSLConfig sslConfig = configRestAssured.getSSLConfig();
    sslConfig = sslConfig.keyStore(configData.get("Cert"), configData.get("CertPassword")).keystoreType("PKCS12");
    configRestAssured = configRestAssured.sslConfig(sslConfig);
    RequestSpecBuilder requestSpecBuilder = new RequestSpecBuilder();
    requestSpecBuilder.setConfig(configRestAssured);
    requestSpecBuilder.setBaseUri(configData.get("Base_URI"));
    requestSpecBuilder.setPort(Integer.parseInt(configData.get("Port")));
    RequestSpecification requestSpecification = requestSpecBuilder.build();
    RestAssured restAssured = new RestAssured();
    requestSpecification = restAssured.given().spec(requestSpecification);
    Response response =requestSpecification .get("URL");
    System.out.println(response);

It is giving the below error:

javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

but same file with keystore from SOAP UI I am getting response.

What is the issue in the above code?

James Z
  • 12,209
  • 10
  • 24
  • 44
saba
  • 539
  • 1
  • 14
  • 30
  • `restAssured.useRelaxedHTTPSValidation();` means don't check HTTPS certificate. Check this answer https://stackoverflow.com/questions/36352033/how-to-make-https-get-call-with-certificate-in-rest-assured-java/37436519#37436519 – lucas-nguyen-17 Mar 19 '22 at 14:10
  • @lucas-nguyen-17 even if I removed this restAssured.useRelaxedHTTPSValidation(); same issue happened. – saba Mar 19 '22 at 15:03
  • @lucas-nguyen-17 Also I have gone through the given post and already tried but not worked. – saba Mar 19 '22 at 15:14

0 Answers0