- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我收到以下错误。我将发布我正在做的代码明智的事情,然后将发布堆栈跟踪,我一直在努力寻找足够的信息来修复。我正在使用自签名证书。
SSLContext sslContext = null;
try {
sslContext = SSLContexts.custom()
//.loadTrustMaterial(new File("~local_trust_store"), //"pass".toCharArray())
.loadTrustMaterial(null, new TrustStrategy() {
@Override
public boolean isTrusted(final X509Certificate[] chain, final String authType)
throws CertificateException {
return true;
}
}).build();
} catch (Exception e) {
}
SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(
sslContext, NoopHostnameVerifier.INSTANCE);
// create a default client
httpClient = HttpClients.custom()
.setConnectionManager(poolConnectionManager)
.setDefaultRequestConfig(config).setSSLSocketFactory(sslsf).build();
//.setDefaultRequestConfig(config).build();
异常响应:
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
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
at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)
at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)
at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509)
at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)
at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)
at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:394)
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353)
at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:141)
at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:55)
at com.socievo.nightli.sparktestapp.AppService.sendTestRequest(AppService.java:205)
at com.socievo.nightli.sparktestapp.AppController.lambda$new$1(AppController.java:37)
at spark.ResponseTransformerRouteImpl$1.handle(ResponseTransformerRouteImpl.java:47)
at spark.webserver.MatcherFilter.doFilter(MatcherFilter.java:162)
at spark.webserver.JettyHandler.doHandle(JettyHandler.java:61)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:189)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)
at org.eclipse.jetty.server.Server.handle(Server.java:517)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:302)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:192)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:745)
Caused by: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387)
at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292)
at sun.security.validator.Validator.validate(Validator.java:260)
at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324)
at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229)
at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124)
at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491)
... 42 more
Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141)
at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126)
at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280)
at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382)
... 48 more
我不确定是什么导致了这个问题。我是这样发帖的
// running test server with self signed cert stored in trust store above (note I have also used the jks in place of trust store above)
String URL = "https://localhost:1000"
HttpPost postRequest = new HttpPost(URL);
postRequest.addHeader("Content-Type", "application/json");
postRequest.addHeader("Accept", "application/json");
StringEntity postingJson = new StringEntity("{\"id\":\"12345\"}", "UTF8");
postRequest.setEntity(postingJson);
httpResponse = httpClient.execute(postRequest);
if (httpResponse.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
throw exception;
}
为了让它发挥作用,我尝试了很多方法。任何帮助表示赞赏。
编辑:至于链接的问题,正如您所看到的,这是不同的,我提供的代码应该绕过任何问题,我提供的代码的信任策略,但我仍然收到错误。
最佳答案
因此,这最终与我使用的 PoolingHttpClientConnectionManager
相关,该问题没有显示在问题中,尽管它在堆栈跟踪中足够有趣。花了很多功夫挖掘。但是任何其他有类似设置的人,可能是其他一些配置设置导致了问题,对我来说,这是缺少配置的 PoolingHttpClientConnectionManager
希望这对将来的任何人都有帮助。
关于java - ValidatorException HTTPClient Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37997076/
我收到以下错误。我将发布我正在做的代码明智的事情,然后将发布堆栈跟踪,我一直在努力寻找足够的信息来修复。我正在使用自签名证书。 SSLContext sslContext = null;
我拿了以下BalusC kickoff example并通过添加提交按钮和其他 h:messages 并删除 f:ajax 对其进行了修改。来自 h:inputSecret's (由于某种原因删除了
从星期一开始,我面临与sun.security.ValidatorException相关的问题。在上周一之前,一切正常。 异常(exception)是: 配置根项目“CoreApp”时发生问题。 Co
当我使用 Primefaces Maven 存储库时出现以下异常 mvn clean spring-boot:run [ERROR] Failed to execute goal on project
我正在尝试在 Ubuntu 16.04 上使用 sbt,但是在尝试运行它时出现错误。我进行了全新安装,然后完全按照 the sbt site 中的说明进行操作。 ,但是当我做 sbt 时得到以下信息:
我正在使用gradle构建springboot项目,但是gradle负载依赖性始终不好。错误如下: FAILURE: Build failed with an exception. * What we
我正在使用 REST Assured,但是当我尝试发送请求时,出现以下错误:- javax.net.ssl.SSLHandshakeException:sun.security.validator.V
我有一个用 Java 编写的 RESTful 客户端,用于使用 SSL 的 Web 服务。该应用程序已经运行了几个星期。突然之间,所有与 Web 服务进行交易的尝试都会导致以下异常: sun.secu
我目前代表一位正在度假的同事。他负责的一个应用这几天一直报如下错误。 Error: IOException sun.security.validator.ValidatorException: PKI
我正在研究中央认证系统 (jasig.org) 以实现单点登录功能对于我的 Intranet Web 应用程序。我有两个 tomcat 实例在我的同一台机器(windows)上运行。两个 tomcat
为了对我的 xmpp 堆栈进行集成测试,我在本地主机上设置了一个 vysper 服务器 (0.7)。现在我想使用版本 4.0.2 中的 smack-core 和 smack-tcp 连接到服务器。 问
我低于异常 sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.ce
以前,我可以成功地向 Web 服务发送请求并接收响应,但它现在返回以下异常。根据其他答案,我需要更新证书,但我需要知道为什么我现在收到此异常。另一个问题是,我可以找到我的 java_home 的地址,
创建了一台 Azure SQL Server 计算机,我能够进行 rdp 并通过本地 SQL Server Mgt Studio 客户端进行连接。 但是,我无法使用下面的连接字符串通过 Java 代码
DataGrip 无法连接到我的 Postgres 实例,但我可以通过终端上的 psql 正常连接: psql -h dbhost.com reps username >Password for us
我已经使用此命令创建了 CSR 请求: openssl req -out certificatecsr.csr -new -newkey rsa:2048 -keyout certificatekey
我们所处的场景是,公司代理正在解密所有 HTTPS 流量,并使用 Java 不信任的 CA ROOT 对其进行重新签名。 我们还面临无法修改 Java 目录中的 cacerts 文件的情况。 我们在许
org.apache.axis2.AxisFault:sun.security.validator.ValidatorException:PKIX 路径构建失败:sun.security.provid
我在服务器上安装了 apache、Tomcat7,我的请求从 apache 重定向到 tomcat。我在 apache 上安装了 SSL。我在我的应用程序中使用 goole api 进行一些身份验证。
我的公司运行一个用 ColdFusion MX7.0.2 构建的旧应用程序,运行 Java 1.4.2。我无法升级 ColdFusion,因为 CyberSource 不支持任何高于 MX7 的版
我是一名优秀的程序员,十分优秀!