Ошибка 335544421. соединение отклонено удаленным интерфейсом

у меня есть код

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


person Aleksandr Zorin    schedule 10.09.2018    source источник
comment
root/root довольно странный логин/пароль Firebird на машине с MS-Windows...   -  person Arioch 'The    schedule 10.09.2018
comment
спасибо, я пробую URL другого варианта и только для этого я могу получить указанную выше ошибку   -  person Aleksandr Zorin    schedule 10.09.2018
comment
Какую версию Jaybird вы используете? Также обратите внимание: вы не должны вызывать DriverManager.registerDriver самостоятельно; этот метод должен вызываться только драйверами JDBC, а не клиентскими приложениями. Вам даже не нужно вызывать Class.forName("org.firebirdsql.jdbc.FBDriver"), если вы используете Jaybird 2.2 или выше.   -  person Mark Rotteveel    schedule 10.09.2018
comment
Если я использую URL-адрес современного формата (jdbc:firebirdsql://localhost:3050/D:\dev\mycompany\COMPANY.FDB), я получаю сообщение об ошибке, отклоненное удаленным интерфейсом   -  person Aleksandr Zorin    schedule 10.09.2018
comment
Кроме того, убедитесь, что вы публикуете свой фактический код. Показанный код приведет к error: cannot find symbol вместо url.   -  person Mark Rotteveel    schedule 10.09.2018
comment
Проблема с вашим кодом заключается в том, что URL-адрес определяется как " jdbc:firebirdsql:...". Обратите внимание, что наличие пробела перед jdbc. О другой ошибке см. эта запись часто задаваемых вопросов.   -  person Mark Rotteveel    schedule 10.09.2018
comment
Я редактирую вопрос и редактирую URL, и теперь я получаю исключение GDS. 335544421. соединение отклонено удаленным интерфейсом   -  person Aleksandr Zorin    schedule 10.09.2018
comment
Пожалуйста, убедитесь, что вы правильно отредактировали свой вопрос. Вы не обновили ошибку в своем вопросе. А также укажите версию Firebird и используемую версию Jaybird.   -  person Mark Rotteveel    schedule 10.09.2018
comment
@Arioch'The Это неверно, connection rejected by remote interface означает, что Firebird принял соединение, а затем разорвал его при рукопожатии, потому что клиент запросил неподдерживаемые функции (в этом случае, вероятно, устаревшая аутентификация, хотя требуется проводное шифрование)   -  person Mark Rotteveel    schedule 10.09.2018
comment
Не имеет прямого отношения к вашей проблеме, но почему вы до сих пор используете Jaybird 2.2.5? Последняя версия Jaybird — 3.0.5, а последняя версия 2.2.x — 2.2.14.   -  person Mark Rotteveel    schedule 10.09.2018
comment
Это сообщение об ошибке выглядит как одна из форм fbclient.dll, или у вас точно такие же тексты ошибок и в JayBird? P.S. sql.ru/forum/interbase   -  person Arioch 'The    schedule 10.09.2018
comment
@Arioch'Это ошибка isc_connect_reject, код 335544421, которую Jaybird использует, когда не получает op_accept, op_cond_accept или op_accept_data в ответ на соединение + присоединение. Jaybird использует те же ошибки, что и Firebird, где это уместно или целесообразно.   -  person Mark Rotteveel    schedule 10.09.2018
comment
@Arioch'The PS Не вижу смысла давать ссылку на русский форум; Я не читаю по-русски, да и здесь это не имеет прямого отношения.   -  person Mark Rotteveel    schedule 10.09.2018
comment
@MarkRotteveel это было для Аль-р Зорина, у которого явно русское имя. Я удалил свой комментарий к нему, в котором изначально была ссылка. Просто не хотел плодить лишние комментарии только к ссылке. Поскольку явной проблемы нет, а скорее похоже, что новичок делает первые шаги и совершает разные ошибки, очевидные в ретроспективе, но трудно различимые для новичков, формат форума может быть лучше, чем оптимизированная SO модель вопросов и ответов.   -  person Arioch 'The    schedule 10.09.2018
comment
@Mark Rotteveel Я использую последнюю доступную версию FireBird 3.0.5 и Jaybird (mvnrepository .com/artifact/org.firebirdsql.jdbc/jaybird/2.2.5)   -  person Aleksandr Zorin    schedule 10.09.2018
comment
Это не последняя версия. Последняя версия — Jaybird 3.0.5, см. search.maven.org/ (или mvnrepository. com/artifact/org.firebirdsql.jdbc/jaybird-jdk18/) И такой вещи, как Firebird 3.0.5, не существует, последней выпущенной версией Firebird является 3.0.3.   -  person Mark Rotteveel    schedule 10.09.2018
comment
@Arioch'The В этом случае имеет смысл опубликовать сообщение в списке рассылки Firebird-Java.   -  person Mark Rotteveel    schedule 10.09.2018
comment
Я добавил новые артефакты перемещения зависимостей в org.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
comment
@MarkRotteveel и нужно добавить зависимость javax.resource в файл jar   -  person Aleksandr Zorin    schedule 10.09.2018
comment
@AleksandrZorin Нет, это уже включено в POM для правильного артефакта (org.firebirdsql.jdbc:jaybird-jdk17 или jaybird-jdk18). Если вы на самом деле не используете Maven, тогда да, вам нужно включить это, как описано в документации.   -  person Mark Rotteveel    schedule 10.09.2018