Метод getDefault() не определен для типа SSLContext?

Я получаю указанную ошибку в eclipse при импорте моего проекта. Я уже добавил jsse jar в путь сборки java. Код ошибки var = SSLContext.getDefault().getSocketFactory();

В гугле не нашел разрешения. Заранее спасибо


person Pankaj Kumar    schedule 23.11.2013    source источник
comment
Я не вижу никакого метода setDefault с тем, что вы опубликовали. Однако, если вы просмотрите документ, вы увидите, что setDefault принимает параметр. docs.oracle.com/javase/7/docs/api/javax/net/ssl/   -  person Alexis C.    schedule 23.11.2013
comment
@ZouZou Извините... это было getDefault()   -  person Pankaj Kumar    schedule 23.11.2013
comment
Вы уверены, что импортировали правильный пакет? (javax.net.ssl.SSLContext)   -  person Alexis C.    schedule 23.11.2013
comment
Какую версию Java вы используете? getDefault() был представлен в Java 6.   -  person Jon Skeet    schedule 23.11.2013
comment
@ZouZou Да, это импортировано.   -  person Pankaj Kumar    schedule 23.11.2013


Ответы (2)


Я уже добавил jsse jar в путь сборки java.

JSSE некоторое время был частью основной JRE (насколько я помню, Java 1.4). Любая версия, которую вы добавили в путь сборки, безусловно, является старой версией, которая конфликтует с версией по умолчанию: не добавляйте эту дополнительную библиотеку, используйте то, что уже есть в JSSR (в общем случае нет необходимости явно добавлять поставщиков безопасности, если вы следуя старым инструкциям).

person Bruno    schedule 23.11.2013
comment
Я использую java 6. Удаление jsse jar из пути сборки дает ошибку... Импорт javax.net.ssl.... не может быть разрешен. Я сбит с толку, так как по умолчанию мое затмение должно использовать установленную java 6, и если уже есть jsse jar, то почему эта ошибка? Может быть, мне нужно настроить конкретные параметры проекта в компиляторе Java или что-то изменить в аспектах проекта... Пожалуйста, помогите мне. Спасибо - person Pankaj Kumar; 24.11.2013
comment
В вашем проекте Eclipse в разделе «Системные библиотеки JRE» должен быть jsse.jar, но не дополнительный. Я не уверен, что вы сделали со своей установкой, но вы можете проверить, не изменили ли вы также структуру JRE на диске. - person Bruno; 24.11.2013

Если вы используете Java 6, версию, которая добавляет getDefault(), то вы должны получить доступ к другому классу с именем SSLContext — попробуйте javax.net.ssl.SSLContext.getDefault().

person Elliott Frisch    schedule 23.11.2013
comment
Да, мы используем Java 6. var=javax.net.ssl.SSLContext.getDefault().getSocketFactory(); тоже не работал - person Pankaj Kumar; 23.11.2013
comment
Убедитесь, что ваш уровень компилятора установлен на java 6. Эта ссылка может помочь. - person Elliott Frisch; 23.11.2013