Фон
Я использую Authorize.net SDK в собственном проекте Eclipse. Все отлично работает. Затем мне нужно было добавить его в мой основной проект. Я добавил зависимости к пути класса и скопировал в блок кода, который мне нужен. Он должен был работать.
Проблема
Короче говоря, код не будет работать там, где я его разместил. Однако он будет работать, когда я привожу его к основному методу в проекте.
В том месте, где это не сработает, я прошел через код с отладчиком и нашел следующее исключение:
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 = DefaultHttpClient из Apache
Теперь я полностью ошеломлен. Не вызывайте эту ошибку. В Eclipse оба продукта, как представляется, нацелены на одну и ту же JRE. У них также есть httpclient-4.0.1.jar. Обратите внимание, что в проблемном проекте также есть некоторые другие зависимости, которые рабочий проект не выполняет {boneCP, guava, mysql_connector_java, protobuf}
Я не думаю, что дополнительные банки являются причиной того, что код проблемы работает в другом месте проекта.
Любые идеи о том, что не так, очень ценятся, я потратил этот день на отладку и не знаю, куда идти дальше.
Спасибо.