如何调试cfhttp调用https URL

时间:2014-01-21 13:08:39

标签: java ssl coldfusion ssl-certificate shopify

我正在运行普通旧ColdFusion 9的开发人员版本。我正在尝试cfhttp对Shopify的API调用,但我正在针对旧的I/O Exception: peer not authenticated问题进行裁剪。我正在使用“https”网址调用它。

//also tried without setting the port directly
variables.httpService = new http(username=trim(application.stDBVars.stShopify.sAPIKey),password=trim(application.stDBVars.stShopify.sPassword),method="POST",url="https://shopname-shop.myshopify.com/admin/webhooks.json",port=443);
variables.httpService.addParam(type="header",name="Content-Type",value="application/json");
variables.httpService.addParam(type="body",value="#variables.sJSON#");
writeDump(variables.httpService.send().getPrefix());

我在使用其他第三方API之前遇到过这个问题,但我按照kb文章中的说明解决了这个问题,以便在密钥库中导入证书:http://helpx.adobe.com/coldfusion/kb/import-certificates-certificate-stores-coldfusion.html

我再次遵循了建议,并选择了要添加到密钥库的证书,但无论我添加多少次,删除它,重新别名,停止ColdFusion,启动ColdFusion,重新启动计算机和执行伏都教我不断得到I/O Exception: peer not authenticated

有没有办法调试它以查看它是否甚至尝试使用我的证书,无论是在ColdFusion还是Java?

1 个答案:

答案 0 :(得分:0)

我最近在试图连接到Twitter api的CF9盒子上遇到了同样的问题。以下是咨询Pete Freitag之后解决的问题:

  

Java更新了Java 1.6.0_19中的客户端证书,包括Verisign证书:http://www.oracle.com/technetwork/java/javase/6u19-141078.html所以更新到最近的JVM我认为可以解决它。

     

请注意,如果安装Java 1.7,则需要确保已安装CF 9.0.1累积修补程序4(这增加了对java 1.7的支持)。您可以通过查看{cfroot} / lib / updates文件夹并找到文件chf9010004.jar来查看是否有9.0.1 CHF4

应用cumlative修补程序4后,CF管理员开始抛出错误。网站工作但CF管理员失败了。我通过以下方式解决了这个问题:

  

确保还应用了最新的安全修补程序APSP13-19和APSP13-27,如果服务器已经应用了累积修补程序4之后发布的安全修补程序,请参阅http://helpx.adobe.com/security/products/coldfusion.html#version9,这可能会导致问题。

首先应用安全修补程序,可以避免CF管理员问题。

以下是我用来更新JVM的帖子:

Upgrading ColdFusion To Java 7