Ну, я не могу точно сказать, почему происходит сбой соединения. Но что неправильно - это ваш catch
блок. Вы игнорируете фактическую ошибку и заменяете ее бесполезной (той, которую вы видите).
Никогда игнорировать исключения. Они выбрасываются по какой-то причине и, как правило, содержат полезную информацию о непредвиденной ошибке, с которой столкнулась система. У вас проблемы с выяснением проблемы, потому что вы выбрасываете эту полезную информацию, даже не глядя на нее.
Ошибки, которые вы видите, исходят из кода в вашем блоке catch
. Этот код, по сути, пытается сделать именно то, что просто не удалось, но немного по-другому. Вам нужно зарегистрировать свою ошибку, чтобы вы могли выяснить причину ее сбоя и в первую очередь достичь блока catch
.
Хорошее практическое правило для блоков try/catch
заключается в том, что вы должны ловить исключение, только если вы готовы обработать исключение. Здесь вы не обращаетесь с этим вообще, поэтому, если вы не сделаете это, вы должны просто полностью удалить try/catch
. Пусть исключение всплывает где-то, что оно может быть обработано. В качестве альтернативы, замените код в блоке catch
на запись некоторых ошибок и выйдите из блока кода полезным и значимым способом (верните ошибку в вызывающий блок кода, сгенерируйте пользовательское исключение с перехваченным исключением внутри него и т. Д. ).