Intereting Posts
Android: Как загрузить .mp3 файл и изображение на http-сервер? Когда край прокрутки просматривается при прокрутке в android Подключитесь к эмулятору android для веб-службы localhost LoaderManager: как захватить мою переменную / метод от моих загрузчиков? Gradle: Не удалось создать плагин типа AppPlugin Android: как справиться с силой закрыть Qt для Android – эквивалент startActivityForResult не работает Можем ли мы иметь значение внутри файла свойств в виде массива значений? Как сместить изображение с помощью пальца в Android? Получить растровое изображение из макета Установите видимость в программном меню Android SetMaxDate () отлично работает на Lollipop 5.0.1 android и нуждается в правильном решении Как настроить gson для исключения 0 целых значений Откройте второй вывод drawerlayout в качестве вспомогательного элемента drawerlayout за первый Навигация Android от скользящего меню – фрагменты или действия?

Как разрешить ошибку jsoup: не удалось найти допустимый путь сертификации для запрошенной цели

Я пытаюсь проанализировать html следующего URL-адреса:

https://www.smuc.ac.kr/mbs/smuc/jsp/board/list.jsp?boardId=6993&id=smuc_040100000000

Я получаю следующую ошибку:

sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:387) at sun.security.validator.PKIXValidator.engineValidate(PKIXValidator.java:292) at sun.security.validator.Validator.validate(Validator.java:260) at sun.security.ssl.X509TrustManagerImpl.validate(X509TrustManagerImpl.java:324) at sun.security.ssl.X509TrustManagerImpl.checkTrusted(X509TrustManagerImpl.java:229) at sun.security.ssl.X509TrustManagerImpl.checkServerTrusted(X509TrustManagerImpl.java:124) at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1491) ... 15 more Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target at sun.security.provider.certpath.SunCertPathBuilder.build(SunCertPathBuilder.java:141) at sun.security.provider.certpath.SunCertPathBuilder.engineBuild(SunCertPathBuilder.java:126) at java.security.cert.CertPathBuilder.build(CertPathBuilder.java:280) at sun.security.validator.PKIXValidator.doBuild(PKIXValidator.java:382) ... 21 more 

Это мой код:

 public class MainActivity extends AppCompatActivity { private ListView listView; private TextView textView; public ArrayList<String> arrayList = new ArrayList<String>(); private ArrayAdapter<String> arrayAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); listView = (ListView) findViewById(R.id.listView); new Insert().execute(); arrayAdapter = new ArrayAdapter<String>(MainActivity.this, R.layout.list_ok, R.id.text, arrayList ); } class Insert extends AsyncTask<String, Void, String> { @Override protected String doInBackground(String... params) { try { // Connection.Response res = Jsoup.connect("https://www.smuc.ac.kr/mbs/smuc/index.jsp") // .method(Connection.Method.POST) // .execute(); Document document = Jsoup.connect("https://www.smuc.ac.kr/mbs/smuc/jsp/board/list.jsp?boardId=6993&id=smuc_040100000000").get(); Elements elements = document.select(".tit"); arrayList.clear(); for (Element element : elements) { arrayList.add(element.text()); } } catch (IOException e) { e.printStackTrace(); } return null; } @Override protected void onPostExecute(String result){ listView.setAdapter(arrayAdapter); } } } 

Вы можете игнорировать проверку TSL, установить validateTLSCertificates(false) :

 Document document = Jsoup.connect("URL").timeout(10000).validateTLSCertificates(false).get(); 

Так как чтение страницы занимает некоторое время, увеличьте время timeout(10000) .