у меня есть код
package com.redsoft.company.dao;
import org.firebirdsql.jdbc.FBDriver;
import java.sql.Connection;
import java.sql.DriverManager;
public class AbstractDao {
private static final String USER = "root";
private static final String PASSWORD = "root";
private static final String URL = "jdbc:firebirdsql:localhost/3050:D:\\dev\\mycompany\\COMPANY.FDB";
public AbstractDao() throws Exception {
initConnection();
}
private void initConnection() throws Exception {
Class.forName("org.firebirdsql.jdbc.FBDriver");
DriverManager.registerDriver(new FBDriver());
System.out.println(URL);
Connection connection = DriverManager.getConnection(URL, USER, PASSWORD);
}
public static void main(String[] args) throws Exception {
AbstractDao abstractDao = new AbstractDao();
}
}
Когда я запускаю основной метод, я получаю сообщение об ошибке
Исключение в потоке "основной" org.firebirdsql.jdbc.FBSQLException: Исключение GDS. 335544421. соединение отклонено удаленным интерфейсом
Версия Firebird 3.0.3 Версия Jaybird 2.2.5
DriverManager.registerDriver
самостоятельно; этот метод должен вызываться только драйверами JDBC, а не клиентскими приложениями. Вам даже не нужно вызыватьClass.forName("org.firebirdsql.jdbc.FBDriver")
, если вы используете Jaybird 2.2 или выше. - person Mark Rotteveel   schedule 10.09.2018error: cannot find symbol
вместоurl
. - person Mark Rotteveel   schedule 10.09.2018" jdbc:firebirdsql:..."
. Обратите внимание, что наличие пробела передjdbc
. О другой ошибке см. эта запись часто задаваемых вопросов. - person Mark Rotteveel   schedule 10.09.2018connection rejected by remote interface
означает, что Firebird принял соединение, а затем разорвал его при рукопожатии, потому что клиент запросил неподдерживаемые функции (в этом случае, вероятно, устаревшая аутентификация, хотя требуется проводное шифрование) - person Mark Rotteveel   schedule 10.09.2018isc_connect_reject
, код335544421
, которую Jaybird использует, когда не получаетop_accept
,op_cond_accept
илиop_accept_data
в ответ на соединение + присоединение. Jaybird использует те же ошибки, что и Firebird, где это уместно или целесообразно. - person Mark Rotteveel   schedule 10.09.2018org.firebirdsql.jdbc:jaybird
для 2.2.14 (вorg.firebirdsql.jdbc:jaybird-jdk17:2.2.14
) и 3.0.5 (вorg.firebirdsql.jdbc:jaybird-jdk18:3.0.5
) и попытаюсь сделать это в будущих выпусках. - person Mark Rotteveel   schedule 10.09.2018