我有一个Java控制台应用程序,它遍历一个名称和帐号列表,并将做两件事,我称之为A部分和B部分。
A部分是使用FedEx公共SOA接口创建运输标签。这是我编写的程序的第一部分,它工作正常。
B部分正在使用我们的内部SOA接口将FedEx跟踪号写入客户的帐户。这个界面基本上是
AddComment(String acctNum,String comment)
我编写了一个独立的Java应用程序来测试B部分,它运行正常。
当我将B部分添加到原始程序中时,A部分仍然有效,但当我尝试执行B部分时,我收到了SSL握手错误。
B部分的SOA接口使用SSL。
我甚至放入一个标志,以便我可以将程序作为“仅A部分”或“仅部分B”运行,并且每个程序单独工作,但是当一起运行时,部分B失败。
闻起来就像A部分留下了引擎盖下的东西,B部分不再像以前那样工作。
当您有两台不同的服务器时,这似乎可能是一个非常罕见的问题,这两台服务器可能有不同的协议等。
所以我真正的问题是更普遍,而不仅仅是编码问题。
我是否可以在启动B部分之前在我的代码中重置我的环境,以便它以独立运行的方式运行?
答案 0 :(得分:0)
我能够通过使用SSL上下文setDefault方法解决这个问题,这似乎完全符合我怀疑需要做的事情,即让我回到干净的环境。
sslCtx.setDefault(sslCtx);