HtmlUnit ValidatorException:PKIXパスの構築に失敗しました:

[09:17:36:713] [ERROR] - com.xx.sea.util.HtmlUnitUtil.httpGetResponse(HtmlUnitUtil.java:95) - htmlunit ERR
javax.net.ssl.SSLHandshakeException:sun.security.validator.ValidatorException: PKIXパスの構築に失敗しました:sun.security.provider.certpath.SunCertPathBuilderExceptionを:要求されたターゲットへの有効な証明書パスを見つけることができません
    sun.security.ssl.Alerts.getSSLException(Alerts.java:192)で〜[:?1.8.0_91]
    でsun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)〜[:?1.8.0_91]
    sun.security.ssl.Handshaker.fatalSEで(Handshaker.java:302)〜[:?1.8.0_91]
    でsun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)〜[:?1.8.0_91]
    sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1509)で〜[:?1.8.0_91]
    [?:1.8.0_91] sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)〜で
    sun.security.ssl.Handshaker.processLoopで(Handshaker.java:979)〜[:?1.8.0_91]
    [?:1.8.0_91] sun.security.ssl.Handshaker.process_record(Handshaker.java:914)〜で
    sun.security.ssl.SSLSocketImpl.readRecordで(SSLSocketImpl.java:1062)〜[:?1.8.0_91]
    [?:1.8.0_91] sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)〜で
    sun.security.ssl.SSLSocketImpl.startHandshakeで(SSLSocketImpl.java:1403)〜[:?1.8.0_91]
    sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)で〜[:?1.8.0_91]
    org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:436)で〜[HTTPClientの-4.5.10.jar:4.5.10]
    org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocketで( SSLConnectionSocketFactory.java:384)〜[HTTPClientの-4.5.10.jar:4.5.10]
    org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:142時)〜[HTTPClientの-4.5.10.jar :4.5.10]
    4.5.10]:org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:374)〜[HTTPClientの-4.5.10.jarで
    org.apache.http.impl.execchainで.MainClientExec.establishRoute(MainClientExec.java:393)〜[HTTPClientの-4.5.10.jar:4.5.10]
    org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)で〜[HTTPClientの-4.5.10.jar:4.5.10]
    org.apache.http.impl.execchain.ProtocolExec.executeで( ProtocolExec.java:186)〜[HTTPClientの-4.5.10.jar:4.5.10]
    org.apache.http.impl.execchain.RetryExec.executeで(RetryExec.java:89)〜[HTTPClientの-4.5.10.jar :4.5.10]
    4.5.10]:org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)〜[HTTPClientの-4.5.10.jarで
    org.apache.http.impl.clientで.InternalHttpClient.doExecute(InternalHttpClient.java:185)〜[HTTPClientの-4.5.10.jar:4.5.10]
    org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)で〜[httpclient- 4.5.10.jar:4.5.10]
    :org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)〜[4.5.10のHTTPClient-4.5.10.jar]で
    sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)で〜[? :1.8.0_91]
    sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)〜[時:?1.8.0_91]
    sun.reflect.DelegatingMethodAccessorImpl.invokeで(DelegatingMethodAccessorImpl.java:43)〜[:?1.8.0_91 ]
    java.lang.reflect.Method.invoke(Method.java:498)〜[時:?1.8.0_91]
    org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190)で[spring-ウェブ5.2.2.RELEASE.jar:5.2.2.RELEASE]
    :org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138)5.2.2.RELEASEばねウェブ5.2.2.RELEASE.jar]で
    org.springframework.web.servlet.mvcで:.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:106)5.2.2.RELEASEばねwebmvc-5.2.2.RELEASE.jar]
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapterで:.invokeHandlerMethod(RequestMappingHandlerAdapter.java:888)5.2.2.RELEASEばねwebmvc-5.2.2.RELEASE.jar]
    org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternalで(RequestMappingHandlerAdapter.java :793)[スプリングwebmvc-5.2.2.RELEASE.jar:5.2.2.RELEASE]
    :org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87)5.2.2.RELEASEばねwebmvc-5.2.2.RELEASE.jar]で
    org.springframework.web.servletで.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)ばねwebmvc-5.2.2.RELEASE.jar:5.2.2.RELEASE]
    org.springframework.web.servlet.DispatcherServlet.doServiceで(DispatcherServlet.java:943)[ばねwebmvc-5.2.2.RELEASE.jar:5.2.2.RELEASE]
    org.springframework.web.servlet.FrameworkServlet.processRequestで(FrameworkServlet.java:1006)ばねwebmvc-5.2.2.RELEASE.jar。 5.2.2.RELEASE]
    org.springframework.web.servlet.FrameworkServlet.doGetで(FrameworkServlet.java:898)ばねwebmvc-5.2.2.RELEASE.jar:5.2.2.RELEASE]
    javax.servlet.http.HttpServlet.serviceで(HttpServlet.java:634)のTomcat-埋め込みコア9.0.29.jar:9.0.29]
    org.springframework.web.servlet.FrameworkServlet.serviceで(FrameworkServlet.java :883)[スプリングwebmvc-5.2.2.RELEASE.jar:5.2.2.RELEASE]
    javax.servlet.http.HttpServlet.serviceで(HttpServlet.java:741)のTomcat-埋め込みコア9.0.29。ジャー:9.0.29]
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)における[Tomcatの-埋め込みコア9.0.29.jar:9.0.29]
    org.apache.catalina.coreで.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)のTomcat-埋め込みコア9.0.29.jar:9.0.29]
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)で[ Tomcatの-埋め込む-のWebSocket-9.0.29.jar:9.0.29]
    :org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)9.0.29 Tomcatの-埋め込みコア9.0.29.jar]で
    org.apache.catalina.core.ApplicationFilterChain.doFilterで(ApplicationFilterChain .java:166)[Tomcatの-埋め込みコア9.0.29.jar:9.0.29]
    org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter(FilterChainProxy.java:320)におけるばねセキュリティWEB- 5.2.1.RELEASE.jar:5.2.1.RELEASE]
    org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126)における[スプリングセキュリティウェブ5.2.1.RELEASE。瓶:5.2.1.RELEASE]
    :org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90)5.2.1.RELEASEばねセキュリティウェブ5.2.1.RELEASE.jar]で
    org.springframework.securityで.web.FilterChainProxy $ VirtualFilterChain.doFilter(FilterChainProxy.java:334)[春-セキュリティのWeb-5.2.1.RELEASE.jar:5.2.1.RELEASE]
    org.springframework.security.web.access.ExceptionTranslationFilter.doFilterで(ExceptionTranslationFilter.java:118)[春-セキュリティのWeb-5.2.1.RELEASE.jar:5.2.1.RELEASE]
    org.springframework.security.web.FilterChainProxy $ VirtualFilterChain.doFilter(FilterChainProxy.java:334)で[春・セキュリティ・ウェブ5.2.1.RELEASE.jar:5.2.1.RELEASE]
    org.springframework.security.web.session.SessionManagementFilter.doFilterで(SessionManagementFilter.java:137)[春 - セキュリティのWeb-5.2.1.RELEASE.jar:5.2.1.RELEASE]

 

private static WebClient createWebClient() {
		log.info("webClient init start.");
		// 创建一个webclient
		WebClient webClient = new WebClient(BrowserVersion.CHROME);

		// 参数设置
		// 1 启动JS
		webClient.getOptions().setJavaScriptEnabled(true);
		// 2 禁用Css,可避免自动二次请求CSS进行渲染
		webClient.getOptions().setCssEnabled(false);
		// 3 启动客户端重定向
		webClient.getOptions().setRedirectEnabled(true);
		// 4 运行错误时,是否抛出异常
		webClient.getOptions().setThrowExceptionOnScriptError(false);
		// 5 设置超时
		webClient.getOptions().setTimeout(50000);
		// 6 设置忽略证书
		webClient.getOptions().setUseInsecureSSL(true);
		// 7 设置Ajax
		// webClient.setAjaxController(new
		// NicelyResynchronizingAjaxController());
		// 8设置cookie
		webClient.getCookieManager().setCookiesEnabled(true);

		webClient.getOptions().setJavaScriptEnabled(true);
		webClient.getOptions().setActiveXNative(false);
		webClient.getOptions().setCssEnabled(false);
		webClient.getOptions().setThrowExceptionOnScriptError(false);
		webClient.waitForBackgroundJavaScript(600 * 1000);
		webClient.setAjaxController(new NicelyResynchronizingAjaxController());
		log.info("webClient init end.");
		return webClient;

	}

 

公開された620元の記事 ウォン称賛54 ビュー45万+

おすすめ

転載: blog.csdn.net/wxb880114/article/details/103999406