Ошибка подключения к базе данных

#java #sql-server-2005 #jdbc #weblogic

#java #sql-server-2005 #jdbc #weblogic

Вопрос:

Я получаю приведенную ниже ошибку при выполнении вызовов JDBC к базе данных. Я использую —

  • Microsoft SQL Server 2005
  • Weblogic 10

java.sql.SQLException: [SQLState=null][ErrorCode =0] Непредвиденное исключение при подключении XAConnection java.sql.SQLException: Откат транзакции: неизвестная причина в weblogic.jdbc.jta.DataSource.enlist(DataSource.java:1419) в weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java:1331) в weblogic.jdbc.jta.DataSource.refreshXAConnAndEnlist(DataSource.java.jta). Источник данных.getConnection (источник данных.java: 426) в weblogic.jdbc.jta.DataSource.connect (источник данных.java:383) в weblogic.jdbc.common.internal.RmiDataSource.getConnection(RmiDataSource.java:339)

Есть мысли относительно того, почему это происходит? Или любым способом я могу это отладить?

Комментарии:

1. Возможно, констатируя очевидное, но это выглядит как проблема с подключением. Убедитесь, что URI, номера портов, аутентификация и т.д. и т.п. Все в порядке.

2. @Richard: Тройная проверка … : ( Итак, пытаюсь найти способ, как я могу отладить проблему.

3. Проверьте это: forums.oracle.com/forums /… а также это: cn.forums.oracle.com/forums/… Может быть, это помогает…

4. WebLogic позволяет протестировать соединение из консоли администрирования. Сообщается ли о каких-либо исключениях при выполнении этого теста?

5. @Vineet Reynolds: Тестовое подключение отлично работает с консоли администратора weblogic

Ответ №1:

Немедленная мысль: проверьте, используете ли вы правильный драйвер JDBC. Часть «XA» вашего соединения указывает на то, что ваш вызов пытается присоединиться к распределенной транзакции — возможно, это не поддерживается вашей версией weblogic / SQLServer 2005.

(В противном случае, если вы пишете свои собственные вызовы базы данных с помощью драйвера JDBC, убедитесь, что вы не используете драйвер «XA», если вам не нужны функции распределенных транзакций.)

Ответ №2:

Я нашел проблему. В моем коде был бесконечный цикл, который вызывал утечку соединения.