更新到Java 8 v 60后的CF10 Web服务错误

时间:2015-09-18 22:20:34

标签: java coldfusion ssl-certificate coldfusion-10

我有一个在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 Admin中安装Certman。我们安装了它并导入了证书,但仍然是同样的错误。我们的解决方法是回滚到Java 7版本75,因此这个Web服务可以工作,但我们需要尽快更新到最新版本的Java,这样我们的图表可以再次工作,显然出于安全考虑。有什么建议吗?

统计:

Java Dev Kit 8 v 60, ColdFusion 10修补程序17, Windows Server 8

**** ***** UPDATE 在阅读了Sean Coyne的回答后,我与网络管理员进行了交谈。他们已经将tools.jar文件复制到lib文件夹中。他们删除了stubs文件夹并重新启动了CF服务器,但我们仍然遇到了同样的错误。我和他们一起去过,他们告诉我证书确实在密钥库中。

如此处所述:https://helpx.adobe.com/coldfusion/kb/coldfusion-mx-troubleshooting-scheduled-tasks.html 我在运行Web服务时向jvim.config添加了一些调试。调试指出与其中一个证书的握手无效。真是太棒了!

我问我们是否可以在CF管理员的证书管理器中看到证书。它毕竟没有安装。所以NA在CF Admin中安装了CertMan add。使用CertMan导入证书并重新启动CF服务器后,Web服务就可以运行了。

我认为做Sean Coyne在下面建议并确保安装CertMan以便我们可以导入证书是为我们修复的。

1 个答案:

答案 0 :(得分:3)

您可能需要删除存根。这些都在[cfroot]/cfusion/stubs中。只需停止CF,删除该目录中的所有文件,然后重新启动CF.

此外,您还需要将JDK安装中的tools.jar文件复制到[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