Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何调试对https URL的cfhttp调用_Java_Ssl_Coldfusion_Ssl Certificate_Shopify - Fatal编程技术网

Java 如何调试对https URL的cfhttp调用

Java 如何调试对https URL的cfhttp调用,java,ssl,coldfusion,ssl-certificate,shopify,Java,Ssl,Coldfusion,Ssl Certificate,Shopify,我正在运行普通旧ColdFusion 9的开发者版。我正在尝试对Shopify进行cfhttp API调用,但我遇到了一个老问题:I/O异常:对等未验证问题。我使用https url调用它 //also tried without setting the port directly variables.httpService = new http(username=trim(application.stDBVars.stShopify.sAPIKey),password=trim(applica

我正在运行普通旧ColdFusion 9的开发者版。我正在尝试对Shopify进行cfhttp API调用,但我遇到了一个老问题:I/O异常:对等未验证问题。我使用https url调用它

//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文章中关于在密钥库中导入证书的说明解决了这个问题:

我再次遵循建议,选择了要添加到密钥库的证书,但无论我添加、删除、重新命名、停止ColdFusion、启动ColdFusion、重新启动计算机并执行voodoo操作多少次,我都会不断收到I/O异常:对等未经验证


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

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

Java更新了Java 1.6.019中的客户端证书,包括Verisign证书:因此,我认为更新到最近的JVM可能会解决这个问题

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

应用累积修补程序4后,CF管理员开始抛出错误。网站运行正常,但CF管理员已关闭。我通过以下方式解决了这一问题:

确保还应用了最新的安全修补程序APSP13-19和APSP13-27,查看服务器是否已经应用了在累积修补程序4之后发布的安全修补程序,这可能会导致问题

您可以通过首先应用安全修补程序来避免CF管理问题

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


您确定已将证书添加到正确的Java密钥库中吗?如果您曾经为ColdFusion服务器更新过JVM,那么它可能不再位于默认位置。是的,我已经将它添加到我电脑上的每个密钥库中。当你导航到同一台机器上的URL时会发生什么?它会获取调用的版本,让我返回我创建的所有Webhook的json。诚然,我是使用标准的shopify登录名而不是基于API的登录名登录我的shopify帐户的。您可以在cfhttp调用中尝试您的凭据,看看是否有效吗?唉,我们正在运行1.6.0_14,我不确定我们是否能够花时间升级jvm。有可能这个答案是正确的,但在我能花时间尝试之前我不会知道。@Jarede我们一路升级到1.7。更新JVM并不难。如果您必须事先应用任何修补程序或补丁程序,那么它会变得更加复杂。我总共花了2个小时更新服务器。此外,我还添加了一个步骤,当CF管理员在更新过程中锁定我时,我采取了这一步骤。是的,不幸的是,我不是那个扣动扳机的人。停机时间=错误或正确的坏时间。由于证书已经更改,也许我可以随意修改密钥库certificates@Jarede必须维护服务器。要做到这一点,它必须有一些停机时间。无论您试图完成什么,服务器都不能没有关键补丁。这是一个安全问题。任何认为服务器即使在关键更新时也无法停机的人,都将服务器置于危险之中。我在晚上和凌晨做了更新。我不相信你会得到任何地方更新密钥库证书。祝你好运。我又碰到这个问题了。似乎这可能是因为开发人员版od CF9(至少我们正在使用的版本)与企业版CF9类似,而且BSafe CryptoJ库的实现中似乎存在缺陷@雷蒙德卡姆登有更多信息