Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Нет подключения к Oracle / 25 сообщений из 67, страница 1 из 3
10.04.2017, 15:10
    #39435897
Norman94
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Добрый день. Имелся проект на эклипсе, который делал тестовое подключение к Oracle и выполнял мелкие запросы. Всё работало, стоял драйвер ojdbs8.jar.

Теперь же сделал проект с использованием Maven, и класс коннектора к Oracle теперь выдаёт ошибку

java.sql.SQLRecoverableException: Ошибка ввода/вывода: Undefined Error
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:774)
at oracle.jdbc.driver.PhysicalConnection.connect(PhysicalConnection.java:688)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:39)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:691)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at OracleConnector.main(OracleConnector.java:16)
Caused by: oracle.net.ns.NetException: Undefined Error
at oracle.net.ns.NSProtocolNIO.negotiateConnection(NSProtocolNIO.java:271)
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:317)
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1438)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:518)
... 6 more


Я не могу понять в чём дело. Класс коннектора выглядит так:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class OracleConnector {

	public static void main(String[] args) {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            System.out.println("Driver loading success!");
            String url = "jdbc:oracle:thin:@localhost:1521/xe";
            String name = "server";
            String password = "serv";
            try 
            {
                Connection con = DriverManager.getConnection(url, name, password);
                System.out.println("Connected.");
                con.close();
                System.out.println("Disconnected.");
            } catch (SQLException e) {
                e.printStackTrace();
            }
 
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }	
}



Думал дело в зависимостях в pom.xml, но я там прописал:

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.oracle.jdbc</groupId>
<artifactId>ojdbc8</artifactId>
<version>12.2.0.1</version>
<optional>true</optional>
</dependency>
</dependencies>

<repositories>
<repository>
<id>maven.oracle.com</id>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<url> https://maven.oracle.com</url>
<layout>default</layout>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>maven.oracle.com</id>
<url> https://maven.oracle.com</url>
</pluginRepository>
</pluginRepositories>


А толку всё равно ноль. Скажите, в чём дело? В обычном всё работало же. Использую ojdbc8.jar.
...
Рейтинг: 0 / 0
10.04.2017, 15:17
    #39435906
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94Теперь же сделал проект с использованием Maven, и класс коннектора к Oracle теперь выдаёт ошибку
Maven просто сборку делает.
Дай разницу кода Было и Стало.
...
Рейтинг: 0 / 0
10.04.2017, 15:18
    #39435908
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94,
упс. Понял.
Т.е. второй вариант вообще без иклипса?
...
Рейтинг: 0 / 0
10.04.2017, 15:20
    #39435912
Norman94
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Petro123Norman94,
упс. Понял.
Т.е. второй вариант вообще без иклипса?

Да нет, второй вариант с эклипсом.

Было и стало абсолютно идентичны, различия лишь в первом есть maven, во втором его нет. Я ей Богу не понимаю, почему не идёт подключение, всё абсолютно идентично.
...
Рейтинг: 0 / 0
10.04.2017, 15:23
    #39435920
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94Было и стало абсолютно идентичны, различия лишь в первом есть maven, во втором его нет
Посмотреть строку запуска java которую формирует IDE.
Сравнить classpatch, найти различия

iMHO & AFAIK
...
Рейтинг: 0 / 0
10.04.2017, 15:31
    #39435929
Norman94
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Leonid Kudryavtsev,

Простите за глупый вопрос, а как это посмотреть? Я использую эклипс, использую обычный запуск Java Application.
...
Рейтинг: 0 / 0
10.04.2017, 15:34
    #39435935
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Я один не вижу ojdbc8 в репозитории??
https://search.maven.org/#search|ga|1|ojdbc
...
Рейтинг: 0 / 0
10.04.2017, 15:35
    #39435936
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
BlazkowiczЯ один не вижу ojdbc8 в репозитории??
https://search.maven.org/#search|ga|1|ojdbc
Ааа... Оракловый репозиторий.
...
Рейтинг: 0 / 0
10.04.2017, 15:36
    #39435937
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94,

А вы действительно не способны найти оба jar файла и проверить на сколько они отличаются?
...
Рейтинг: 0 / 0
10.04.2017, 15:46
    #39435953
Norman94
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
BlazkowiczBlazkowiczЯ один не вижу ojdbc8 в репозитории??
https://search.maven.org/#search|ga|1|ojdbc
Ааа... Оракловый репозиторий.

Поставил ojdbc7, даже зависимости те же поставил - пофиг. Абсолютно пофиг. Я не знаю, что делать.

Да ничем не отличаются, вот пожалуйста. Класс с 1 проекта:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class OracleConnector {

	public static void main(String[] args) {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            System.out.println("Driver loading success!");
            String url = "jdbc:oracle:thin:@localhost:1521/xe";
            String name = "server";
            String password = "serv";
            try 
            {
                Connection con = DriverManager.getConnection(url, name, password);
                System.out.println("Connected.");
                con.close();
                System.out.println("Disconnected.");
            } catch (SQLException e) {
                e.printStackTrace();
            }
 
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }	
}



А вот со второго

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class OracleConnector {

	public static void main(String[] args) {
        try {
            Class.forName("oracle.jdbc.driver.OracleDriver");
            System.out.println("Driver loading success!");
            String url = "jdbc:oracle:thin:@localhost:1521/xe";
            String name = "server";
            String password = "serv";
            try 
            {
                Connection con = DriverManager.getConnection(url, name, password);
                System.out.println("Connected.");
                con.close();
                System.out.println("Disconnected.");
            } catch (SQLException e) {
                e.printStackTrace();
            }
 
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }	
}



Они даже называются одинаково.
...
Рейтинг: 0 / 0
10.04.2017, 15:48
    #39435955
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
BlazkowiczNorman94,

А вы действительно не способны найти оба jar файла и проверить на сколько они отличаются?
тоже не понял).
Казалось бы, код одинаковый. Куда проще найти разницу в двух проектах с одинаковым кодом)).
...
Рейтинг: 0 / 0
10.04.2017, 16:01
    #39435973
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
"Наступил психологический момент для" ... файлового менеджера.
...
Рейтинг: 0 / 0
10.04.2017, 16:20
    #39435995
Norman94
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Basil A. Sidorov"Наступил психологический момент для" ... файлового менеджера.

Что?
...
Рейтинг: 0 / 0
10.04.2017, 16:26
    #39436000
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94Basil A. Sidorov"Наступил психологический момент для" ... файлового менеджера.

Что?
Что "что"? Очевидно же что разница не в коде, а в ojdbc8.jar. Найдите оба файла, один, который у вас был изначально, а второй, который скачал Maven. Сравните эти файлы. Хотя бы по размеру для начала.
...
Рейтинг: 0 / 0
10.04.2017, 16:30
    #39436004
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
С моей кочки зрения, наиболее вероятная причина - "древний" jdbc-драйвер.
Соответственно, надо взять удобный диспетчер файлов и глазками глянуть что и где находится.
...
Рейтинг: 0 / 0
10.04.2017, 16:41
    #39436014
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
P.S. В штатной пророческой установке есть всё необходимое, включая jdbc-драйверы.
Задлянафига мавен и репозитории, чтобы переложить готовое из одного каталога в другой ... Нет, не быть мне программистом.
...
Рейтинг: 0 / 0
10.04.2017, 17:39
    #39436057
0FD
0FD
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94,

http://www.orafaq.com/wiki/JDBC
url должен либо jdbc:oracle:thin:@localhost:1521:xe, либо jdbc:oracle:thin:@//localhost:1521/xe,
я всегда строку из tnasnames использую, какой вам подойдет не знаю
...
Рейтинг: 0 / 0
10.04.2017, 19:49
    #39436131
Norman94
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Вряд ли в драйвере дело, я поставил ojdbc7, поставил зависимости, та же беда.
...
Рейтинг: 0 / 0
10.04.2017, 20:09
    #39436138
Garrick
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94,

1. В репозиториях Maven нет Oracle JDBC. Необходимо скачать драйвер в сайта oracle.com и подключить его в локальный репозиториий. Либо включить оракловый maven репозиторий в ваш файл pom.xml (см. maven.oracle.com)
2. Ошибка ввода/вывода - скорее всего означает, что у вас физически нет соединения с сервером, т.е. неверно указаны координаты сервера, некорректный url или заблокирован порт 1521 антивирусом, фаерволом и т.п.
...
Рейтинг: 0 / 0
10.04.2017, 20:32
    #39436145
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Все на самом деле не понятно:
1. Физическое соединение, это самое очевидное
2. 0FD написал, что строка соединения у ТС не верна.
(а тут могут быть уже эффекты, что на одной версии драйверов это работает, а на другой версии уже нет)
3. У ТС не обычный oracle, а Oracle XE. Вроде такие ошибки могут быть из-за не корректной NLS_LANG и по другим причинам.
...
Рейтинг: 0 / 0
10.04.2017, 23:01
    #39436198
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Это похоже на старую болезнь Oracle XE под Windows. Каждый раз на нее натыкаюсь
и вспоминаю как фиксил. Кажется это связано с неверной привязкой к eth адресу,
потом адрес меняется и - болт.

После установки перебиваю листенеры в sqlnet.ora, tnsnames.ora
на localhost. Потом под DBA делаю

alter system set local_listerer = .....

alter system register.

Потом полезен reboot ОС. т.к. рестарт листенера не помогает. Потом желательно конфигурировать
локаль под AMERICAN_AMERICA.CL8MSWIN1251 на стороне клиента ВСЕГДА. В случае с jdbc
дай бох памяти там вроде-бы надо было менять user.country/lang e.t.c и только
после этого - аллилуя... вроде можно было работать.
...
Рейтинг: 0 / 0
11.04.2017, 00:07
    #39436209
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
пока мы тут гадаем.
Он вроде говорит что есть 2 проекта:
- один MyOK без мавен и работает
- второй My_Error с мавен и не работает.
Значит дело только в проекте или в разнице проектов.
...
Рейтинг: 0 / 0
11.04.2017, 03:13
    #39436221
Leonid Kudryavtsev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Norman94Leonid Kudryavtsev,

Простите за глупый вопрос, а как это посмотреть? Я использую эклипс, использую обычный запуск Java Application.
Не помню ((( сейчас в Eclipse посмотрел, тоже с ходу не нашел.

Может с JDeveloper'ом путаю, но, вроде, можно заставить что бы в консоле сначала полностью выводилась команда на запуск программы со всеми ключами "java --cp......."
...
Рейтинг: 0 / 0
11.04.2017, 08:33
    #39436263
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
Petro123пока мы тут гадаем.
Он вроде говорит что есть 2 проекта:
- один MyOK без мавен и работает
- второй My_Error с мавен и не работает.
Значит дело только в проекте или в разнице проектов.
Добавлю несколько нюансов.

При работе с чистым JDBC, в фазе компилляции никакой драйвер вообще не нужен. В скоупе java.sql
определены все интерфейсы что нужно.

Для maven нужно указать scope=system (или provided).

Стандартный репозитарий не предоставляет oracle-jdbc (ИМХО). Его нужно качать из своих
кастомных репозитариев через тег repository. Или инсталлировать себе локально через mvn install.

Как там у автора в проекте Х.З. он привел только огрызок кода а по нему совершенно невозможно
сказать где у него и как чего сконфижено.
...
Рейтинг: 0 / 0
11.04.2017, 10:44
    #39436351
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Нет подключения к Oracle
maytonа по нему совершенно невозможно
сказать где у него и как чего сконфижено.
Если код он утверждает одинаков, то конфигиКода тоже одинаковы?
Я бы ему посоветовал, если он не может разобрать конфиги кода\сборки и молчит в своей теме, то плюнуть на мавен и делать проект в IDE который у него работает.
Удачи автору!
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Нет подключения к Oracle / 25 сообщений из 67, страница 1 из 3
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]