Ошибка при соединении с БД
От: Funny Rabbit Россия  
Дата: 06.10.25 13:53
Оценка:
Вот такой код
String url = "jdbc:postgresql://localhost:5433/libra";
                String user = "пользователь";
                String password = "пароль";
                try {
                    Connection connection = DriverManager.getConnection(url, user, password);

                    String query = "select value from light.t_weight_metrics";
                    Statement stmt = connection.createStatement();
                    ResultSet rs = stmt.executeQuery(query);
                    while(rs.next())
                    {
                        spinnerAdapter.add(rs.getString(0));
                    }
                    connection.close();
                } catch (SQLException e) {

                    TextView t = (TextView)findViewById(R.id.etmErrors);
                    t.setText(e.toString());
                }

приводит к такой ошибке

org.postgresql.util.PSQLException: Something unusual has occurred to cause the driver to fail. Please report this exception.



В чем может быть дело? В сети ответа не нашел.
То что меня не убивает, делает меня умнее.
Отредактировано 06.10.2025 13:53 Funny Rabbit . Предыдущая версия .
Re: Ошибка при соединении с БД
От: GarryIV  
Дата: 08.10.25 06:23
Оценка: 4 (1)
Здравствуйте, Funny Rabbit, Вы писали:

FR>В чем может быть дело? В сети ответа не нашел.


В смысле не ншел? Гугловый AI прям портянку вариантов приводит
Подсказки в стектрейсе должны быть — там NPE или еще что то, вот по этому cause и копай
WBR, Igor Evgrafov
Re[2]: Ошибка при соединении с БД
От: Funny Rabbit Россия  
Дата: 09.10.25 04:09
Оценка:
Здравствуйте, GarryIV, Вы писали:

GIV>В смысле не ншел? Гугловый AI прям портянку вариантов приводит

GIV>Подсказки в стектрейсе должны быть — там NPE или еще что то, вот по этому cause и копай

Спасибо. Но что делать я не пойму. Может у кого совет есть?
То что меня не убивает, делает меня умнее.
Re[3]: Ошибка при соединении с БД
От: GarryIV  
Дата: 09.10.25 22:40
Оценка: +1
Здравствуйте, Funny Rabbit, Вы писали:

GIV>>В смысле не ншел? Гугловый AI прям портянку вариантов приводит

GIV>>Подсказки в стектрейсе должны быть — там NPE или еще что то, вот по этому cause и копай

FR>Спасибо. Но что делать я не пойму. Может у кого совет есть?

Сказал же.- стектрейс смотри
Что там?
WBR, Igor Evgrafov
Re[4]: Ошибка при соединении с БД
От: Funny Rabbit Россия  
Дата: 11.10.25 05:18
Оценка:
Здравствуйте, GarryIV, Вы писали:

GIV>Сказал же.- стектрейс смотри

GIV>Что там?

org.postgresql.Driver.connect(Driver.java:277)
java.sql.DriverManager.getConnection(DriverManager.java:580)
java.sql.DriverManager.getConnection(DriverManager.java:218)
com.example.test.MainActivity.onCreate(MainActivity.java:57)
android.app.Activity.performCreate(Activity.java:9276)
android.app.Activity.performCreate(Activity.java:9254)
android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1541)
android.app.ActivityThread.performLaunchActivity(ActivityThread.java:4436)
android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:4655)
android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:222)
android.app.servertransaction.TransactionExecutor.executeNonLifecycleItem(TransactionExecutor.java:133)
android.app.servertransaction.TransactionExecutor.executeTransactionItems(TransactionExecutor.java:103)
android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:80)
android.app.ActivityThread$H.handleMessage(ActivityThread.java:2917)
android.os.Handler.dispatchMessage(Handler.java:132)
android.os.Looper.dispatchMessage(Looper.java:333)
android.os.Looper.loopOnce(Looper.java:263)
android.os.Looper.loop(Looper.java:367)
android.app.ActivityThread.main(ActivityThread.java:9227)
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:566)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:929)

То что меня не убивает, делает меня умнее.
Отредактировано 11.10.2025 5:39 Funny Rabbit . Предыдущая версия . Еще …
Отредактировано 11.10.2025 5:37 Funny Rabbit . Предыдущая версия .
Re[5]: Ошибка при соединении с БД
От: kov_serg Россия  
Дата: 11.10.25 08:35
Оценка: 4 (1)
Здравствуйте, Funny Rabbit, Вы писали:

FR>приводит к такой ошибке

org.postgresql.util.PSQLException: Something unusual has occurred to cause the driver to fail. Please report this exception.


https://github.com/pgjdbc/pgjdbc/blob/master/pgjdbc/src/main/java/org/postgresql/Driver.java#L322
https://github.com/pgjdbc/pgjdbc/blob/master/pgjdbc/src/main/java/org/postgresql/Driver.java#L404

Установите setLevel(Level.FINE)
Отредактировано 11.10.2025 8:37 kov_serg . Предыдущая версия .
Re: Ошибка при соединении с БД
От: gyraboo  
Дата: 11.10.25 08:41
Оценка: 4 (1)
Здравствуйте, Funny Rabbit, Вы писали:

FR>В чем может быть дело? В сети ответа не нашел.


Продебажь, найди в Идее по scope=all где выводится текст "Something unusual has occurred to cause the driver to fail. Please report this exception.", поставь там брейкпоинт, и потом по стектрейсу пройди обратно (прокликай) и посмотри что там произошло. В 99% случаев этот подход помогает в Java, т.к. все JVM-библиотеки автоматически декомпилируются и дебажаться в Идее.

  Вот тут ставить брейкпоинты
Отредактировано 11.10.2025 8:49 gyraboo . Предыдущая версия .
Re[6]: Ошибка при соединении с БД
От: GarryIV  
Дата: 11.10.25 09:11
Оценка:
Здравствуйте, kov_serg, Вы писали:

FR>>приводит к такой ошибке

_>

_>org.postgresql.util.PSQLException: Something unusual has occurred to cause the driver to fail. Please report this exception.


_>https://github.com/pgjdbc/pgjdbc/blob/master/pgjdbc/src/main/java/org/postgresql/Driver.java#L322

_>https://github.com/pgjdbc/pgjdbc/blob/master/pgjdbc/src/main/java/org/postgresql/Driver.java#L404

_>Установите setLevel(Level.FINE)


Ну да там кауза есть в обоих случаях
хз зачем Кролик скрывет ее
WBR, Igor Evgrafov
Re[5]: Ошибка при соединении с БД
От: GarryIV  
Дата: 11.10.25 09:15
Оценка:
Здравствуйте, Funny Rabbit, Вы писали:

FR>

FR>org.postgresql.Driver.connect(Driver.java:277)


Уже лучше а если будет полный стектрейс то вообще бы было хорошо)
Текущие сырцы не соовпадают с твоим стектрейсом — какая версия драйвера?
И логгирование стоит тоже выкрутить на макс как советуют https://rsdn.org/forum/pda/9004573.1
Автор: kov_serg
Дата: 11.10 11:35
WBR, Igor Evgrafov
Re[6]: Ошибка при соединении с БД
От: Funny Rabbit Россия  
Дата: 12.10.25 09:21
Оценка:
Здравствуйте, GarryIV, Вы писали:

GIV>Здравствуйте, Funny Rabbit, Вы писали:


FR>>

FR>>org.postgresql.Driver.connect(Driver.java:277)


GIV>Уже лучше а если будет полный стектрейс то вообще бы было хорошо)

GIV>Текущие сырцы не соовпадают с твоим стектрейсом — какая версия драйвера?

dependencies {

implementation(libs.appcompat)
implementation(libs.material)
implementation(libs.constraintlayout)
implementation(libs.lifecycle.livedata.ktx)
implementation(libs.lifecycle.viewmodel.ktx)
implementation(libs.navigation.fragment)
implementation(libs.navigation.ui)
implementation("org.postgresql:postgresql:42.2.5")
testImplementation(libs.junit)
androidTestImplementation(libs.ext.junit)
androidTestImplementation(libs.espresso.core)

}


GIV>И логгирование стоит тоже выкрутить на макс как советуют https://rsdn.org/forum/pda/9004573.1
Автор: kov_serg
Дата: 11.10 11:35


Логирование поднял. Тоже самое. Как получить полный стактрейс? Я с джава 3-й день всего. У меня Андроид Студио.
То что меня не убивает, делает меня умнее.
Re[7]: Ошибка при соединении с БД
От: GarryIV  
Дата: 12.10.25 12:02
Оценка: 4 (1)
Здравствуйте, Funny Rabbit, Вы писали:


FR>>>

FR>>>org.postgresql.Driver.connect(Driver.java:277)


GIV>>Уже лучше а если будет полный стектрейс то вообще бы было хорошо)

GIV>>Текущие сырцы не соовпадают с твоим стектрейсом — какая версия драйвера?
FR>

FR>dependencies {
FR> implementation("org.postgresql:postgresql:42.2.5")


https://github.com/pgjdbc/pgjdbc/blob/REL42.2.5/pgjdbc/src/main/java/org/postgresql/Driver.java#L274-L280

видишь
} catch (Exception ex2) {

в 274 строке
это то что тебе надо посмотреть

GIV>>И логгирование стоит тоже выкрутить на макс как советуют https://rsdn.org/forum/pda/9004573.1
Автор: kov_serg
Дата: 11.10 11:35


FR>Логирование поднял. Тоже самое. Как получить полный стактрейс? Я с джава 3-й день всего. У меня Андроид Студио.

в смысле то же самое?
там в 275 строке
LOGGER.log(Level.FINE, "Unexpected connection error: ", ex2);

если ты поднял до FINE то должен видешь Unexpected connection error + стек от ex2
Можно и не поднимать ничего просто бейпоинт в этой строчке поставить и посмотреть.

про логгирование тут https://habr.com/ru/articles/247647/
PG использует JUL
WBR, Igor Evgrafov
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.