Java Mongodb Driver Как вы поймаете исключения?JAVA

Программисты JAVA общаются здесь
Anonymous
Java Mongodb Driver Как вы поймаете исключения?

Сообщение Anonymous »

Я хочу иметь возможность обнаружить, доступен ли сервер MongoDB у драйвера Java с целью реагирования на любые ненормальные события, как это было бы на земле JDBC и т. Д. Все работает нормально, когда сервер встает, но я изо всех сил пытаюсь понять, почему так сложно обнаружить ошибки. У меня есть ощущение, что это потому, что клиент MongoDB работает в другой ветке, и он не бросает ко мне или что-то в этом роде?

Код: Выделить всё

try {
MongoClient mongoClient = new MongoClient("localhost", 27017);
MongoDatabase db = mongoClient.getDatabase("mydb");
// if db is down or error getting people collection handle it in catch block
MongoCollection people = commentarr.getCollection("people");
} catch (Exception e) {
// handle server down or failed query here.
}
< /code>
Результат - < /p>

Информация: исключение в потоке монитора при подключении к серверу Localhost: 27017 < /p>
< /blockquote>
с полученным стеком, содержащим несколько различных исключений, которые я пытался поймать, но все еще не ударил. Class = "Lang-None PrettyPrint-Override">com.mongodb.MongoSocketOpenException: Exception opening socket
Caused by: java.net.ConnectException: Connection refused
Я использую драйвер Java mongodb 3.0.4, большинство сообщений, которые я читаю, взяты из более старого API с такими хаки, как mongoclient.getdatabaseNames () , который бросает mongoException if -ошибки, за исключением того, что это и то же самое, что и то же, что не так, что иначе. Семантика.
Есть ли способ просто выполнить запрос MongoDB от драйвера Java в блоке Try Catch и на самом деле заставил исключение?

Подробнее здесь: https://stackoverflow.com/questions/345 ... exceptions

Вернуться в «JAVA»