背景
我一直在它自己的 Eclipse 项目中使用 Authorize.net SDK。一切都运转良好。然后我需要将其添加到我的主项目中。我将依赖项添加到类路径中,并将其复制到我需要的代码块中。它应该有效。
Problem
长话短说,代码在我放置的地方不起作用。但是,当我将其直接引入项目中的主要方法时,它就会起作用。
在它不起作用的地方,我使用调试器单步调试代码,发现以下异常:
java.net.SocketException: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: sun.security.ssl.SSLContextImpl$DefaultSSLContext)
投掷于:
HttpResponse httpResponse = httpClient.execute(httpPost);
注意:httpClient=默认HttpClient http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/impl/client/DefaultHttpClient.html来自阿帕奇
我现在完全被难住了。不知道是什么导致了这个错误。在 Eclipse 中,这两个产品似乎都针对相同的 JRE。他们也都有httpclient-4.0.1.jar。请注意,有问题的项目还具有工作项目没有的一些其他依赖项{boneCP,guava,mysql_connector_java,protobuf}
我不认为额外的罐子是原因,因为问题代码在项目中的不同位置工作。
非常感谢任何关于错误的想法,我花了一天的时间来调试这个,但不知道下一步该去哪里。
Thanks.