更新到Java 8 v 60后出现CF10 Web服务错误
我有一个在Java 7版本75上工作正常的Web服务。我们最近更新到Java 8,现在我们在Web服务上收到这个错误:PKIX路径构建失败:sun.security.provider.certpath。 SunCertPathBuilderException:无法找到要求的目标的有效证书路径
这是完整的转储:
Charset [empty string]
ErrorDetail I/O Exception: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Filecontent Connection Failure
Header [empty string]
Mimetype Unable to determine MIME type of file.
Responseheader ws dump - struct [empty]
Statuscode Connection Failure. Status code unavailable.
Text YES
我们更新了证书并将证书重新导入了正确的密钥存储区,并使用keytool -list验证它是否存在并重新启动,但仍然出现验证错误。
我发现这通常是通过重新安装证书来解决的,但这一切都没有奏效。 许多建议来解决这个错误建议在CF管理员安装Certman。 我们安装了它并导入了证书,但仍然是相同的错误。 我们的解决方法是回滚到Java 7版本75,以便此Web服务可以正常工作,但我们需要尽快更新到Java的最新版本,以便我们的图表可以再次运行,显然是出于安全原因。 有什么建议么?
统计:
Java开发工具包8 v 60,ColdFusion 10修补程序17,Windows Server 8
****更新*****在阅读Sean Coyne的回答后,我与我们的网络管理员进行了交谈。 他们已经将tools.jar文件复制到lib文件夹中。 他们删除了存根文件夹并重新启动了CF服务器,但我们仍然遇到同样的错误。 我和他们一起拜访了他们,他们告诉我证书确实在密钥库中。
如此处所述:https://helpx.adobe.com/coldfusion/kb/coldfusion-mx-troubleshooting-scheduled-tasks.html在运行Web服务时,我们为jvim.config添加了一些调试。 调试指出与其中一个证书的握手无效。 有没有搞错!
我问我们是否可以在CF管理员的证书管理器中看到证书。 毕竟它没有安装。 所以NA在CF Admin中安装了CertMan插件。 在使用CertMan导入证书并重新启动CF服务器之后,Web服务在此之后工作。
我认为在做下面的Sean Coyne建议的事情,并确保CertMan已经安装好,这样我们就可以导入证书,这是为我们修复的。
您可能需要删除存根。 这些在[cfroot]/cfusion/stubs
。 只需停止CF,删除该目录中的所有文件并再次启动CF。
另外,您需要将tools.jar文件从JDK安装文件复制到[cfroot]/cfusion/lib/tools.jar
的lib文件夹中。 先备份现有的tools.jar文件,然后从[jdk root]/lib/tools.jar
。
参考:http://blogs.coldfusion.com/post.cfm/coldfusion-10-and-11-support-with-java-8
链接地址: http://www.djcxy.com/p/29255.html