Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
Привет всем! Столкнулся с проблемой:
1. ОС Ubuntu 11.10, Java JDK 6 update 30 (jdk 1.6.0.30 скачал с сайта Oracle)
2. Скачал SQLdeveloper 3.1 rpm, установил, запустил, указал путь к JDK.
3. Создал соединение с БД Oracle 10g, установленная на сервере. Соединение прошло успешно.

Нажимаю на "Tables" и жму "Open", в результате выходит ошибка:
java.lang.ArithmeticException: / by zero
at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedStatement.java:1291)
at oracle.jdbc.driver.T4CPreparedStatement.<init>(T4CPreparedStatement.java:29)
at oracle.jdbc.driver.T4CDriverExtension.allocatePreparedStatement(T4CDriverExtension.java:67)
at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:3523)
at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:3409)
at oracle.dbtools.raptor.controls.grid.OracleRSTModel.prepareStatement(OracleRSTModel.java:81)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel.openResultSet(ResultSetTableModel.java:458)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel.fetchNext(ResultSetTableModel.java:183)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel$4.doWork(ResultSetTableModel.java:636)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel$4.doWork(ResultSetTableModel.java:620)
at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:515)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)

Так же ввожу селект (select sysdate from dual) результат возвращает "/by zero".

Что еще нужно сделать, чтобы sqldeveloper работал?

К сообщению приложен файл. Размер - 91Kb
16 янв 12, 13:00    [11910162]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
Максим Н
Member

Откуда: Екатеринодар
Сообщений: 1439
F_RUS,
А rpm-ка у вас "no-jre" или с jre?
Кстати, а как вы на Ubuntu rpm-ставите? И самое главное зачем?

Попробуйте скачать sqldeveloper "for other platform" и в sqldeveloper.conf указать путь к вашей JRE.
16 янв 12, 13:16    [11910324]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
jan2ary
Member

Откуда: Киев
Сообщений: 1780
Для Ubuntu есть прекрасный пакет sqldeveloper-package (multiverse), который из официального zip-архива с SQL Developer умеет собрать deb-пакет, который штатно ставится с помощью dpkg. Java тоже не нужно ставить из третьих источников, вполне подойдет openjdk-6 (или даже openjdk-7, хоть SQL Developer и будет ругаться что не поддерживается) из universe.
16 янв 12, 13:38    [11910580]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
Максим Н
F_RUS,
А rpm-ка у вас "no-jre" или с jre?
Кстати, а как вы на Ubuntu rpm-ставите? И самое главное зачем?

Попробуйте скачать sqldeveloper "for other platform" и в sqldeveloper.conf указать путь к вашей JRE.


Привет, скачал sqldeveloper-3.1.06.82-1.noarch.rpm, потом сделал deb пакет с помощью alien. Запустил пакет, установился в /opt/sqldeveloper.
При запуске из терминала, попросил указать путь. я указал /opt/jdk1.6.0_30. Запустился sqldeveloper, соединился с базой на сревере.
17 янв 12, 08:36    [11915334]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
[quot F_RUS]
Максим Н
F_RUS,
А rpm-ка у вас "no-jre" или с jre?
Кстати, а как вы на Ubuntu rpm-ставите? И самое главное зачем?

Попробуйте скачать sqldeveloper "for other platform" и в sqldeveloper.conf указать путь к вашей JRE.


Попробую сегодня скачать sqldeveloper "for other platform" и запустить.
17 янв 12, 10:31    [11915733]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
jan2ary
Для Ubuntu есть прекрасный пакет sqldeveloper-package (multiverse), который из официального zip-архива с SQL Developer умеет собрать deb-пакет, который штатно ставится с помощью dpkg. Java тоже не нужно ставить из третьих источников, вполне подойдет openjdk-6 (или даже openjdk-7, хоть SQL Developer и будет ругаться что не поддерживается) из universe.


Скачал sqldeveloper-3.1.06.82-no-jre.zip, сделал deb пакет с помощью sqldeveloper-package, удалил sqldeveloper rpm. При установке прописал путь к jave /usr/lib/jvm/java-6-openjdk. При вопросе импорта предыдущих настроек, сказал нет. Подключился к БД, ввожу селект, опять то же самое. При открытии tables выдает ошибку:
java.lang.ArithmeticException: / by zero
at oracle.jdbc.driver.OraclePreparedStatement.<init>(OraclePreparedStatement.java:1291)
at oracle.jdbc.driver.T4CPreparedStatement.<init>(T4CPreparedStatement.java:29)
at oracle.jdbc.driver.T4CDriverExtension.allocatePreparedStatement(T4CDriverExtension.java:67)
at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:3523)
at oracle.jdbc.driver.PhysicalConnection.prepareStatement(PhysicalConnection.java:3409)
at oracle.dbtools.raptor.controls.grid.OracleRSTModel.prepareStatement(OracleRSTModel.java:81)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel.openResultSet(ResultSetTableModel.java:458)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel.fetchNext(ResultSetTableModel.java:183)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel$4.doWork(ResultSetTableModel.java:636)
at oracle.dbtools.raptor.controls.grid.ResultSetTableModel$4.doWork(ResultSetTableModel.java:620)
at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:193)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:515)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:679)

Может из-за того, что на сервере NLS_LANG=AMERICAN_AMERICA.CL8KZ1048, а у меня при вводе env | grep LANG выводит: LANG=ru_RU.UTF-8
LANGUAGE=ru:en
?
17 янв 12, 12:41    [11916762]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
brig_2000
Member

Откуда:
Сообщений: 207
F_RUS,

1) вы стабильную версию 3.0 (3.0.04.34) пробовали ставить, а не 3.1 Early Adopter 3 (3.1.06.82)?

2) из Установка и запуск Oracle SqlDeveloper :

To install and start SQL Developer, follow these steps:

Unzip the SQL Developer kit into a directory (folder) of your choice. This directory location will be referred to as <sqldeveloper_install>.

Unzipping the SQL Developer kit causes a directory named sqldeveloper to be created under the <sqldeveloper_install> directory. It also causes many files and folders to be placed in and under that directory.

To start SQL Developer, go to the sqldeveloper directory under the <sqldeveloper_install> directory, and do one of the following, as appropriate for your operating system:

On Linux and Mac OS X systems, run sh sqldeveloper.sh.


Зачем из архива, который требуется просто распаковать в определенную папку, делать пакет ? ("Скачал sqldeveloper-3.1.06.82-no-jre.zip, сделал deb ")


3) Также не лишним будет выставить в файле sqldeveloper.conf прописать AddVMOption -Duser.region=US - часто спасет
17 янв 12, 15:58    [11918877]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
brig_2000,

Пробовал 3.0. rpm ку, тоже самое. Скачаю 3.0 zip попробую просто распоковать. Посмотрим, что из этого получиться.
18 янв 12, 09:18    [11922557]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
brig_2000,
Не помогло, то же самое. Даже в sqldevelopere менял в tools - NLS страну и язык с Русский на American. Какие еще есть идеи?
18 янв 12, 12:45    [11924258]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6729
F_RUS,

brig_2000
3) Также не лишним будет выставить в файле sqldeveloper.conf прописать AddVMOption -Duser.region=US - часто спасет

Это тоже пробовал?
18 янв 12, 12:54    [11924356]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
env,

да
18 янв 12, 13:14    [11924582]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
Создал SR на Metalinkе, посмотрим, что индусы ответят.
18 янв 12, 15:12    [11925961]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
Итак что нам предложил oracle support?
1. Первое что предложили это поменять в настройках sqldeveloperf NLS язык на American. Start sqldeveloper.
Go to Tools-->preferences-->database-->NLS parameters.
Change LANGUAGE to AMERICAN.
Restart sql developer
Это не помогло.
2. Второе что предложили, это скачать поздние драйвера JDBC. Это тоже не помогло.
3. Так как проблема возникала в работе с базой Oracle 10.2.0.5, предложили поставить JDBC версий 10.2: You also tried with this version of JDBC driver.
Oracle Database 10g Release 2 (10.2.0.5), (10.2.0.4), (10.2.0.3), (10.2.0.2), (10.2.0.1.0) drivers
Это тож не помогло.
4. Я им объяснил, что на базе параметры такие:
SQL> select * from nls_database_parameters;

PARAMETER VALUE
------------------------------ ----------------------------------------
NLS_NCHAR_CHARACTERSET AL16UTF16
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_CHARACTERSET CL8KZ1048
NLS_CALENDAR GREGORIAN
NLS_DATE_FORMAT DD-MON-RR
NLS_DATE_LANGUAGE AMERICAN
NLS_SORT BINARY

PARAMETER VALUE
------------------------------ ----------------------------------------
NLS_TIME_FORMAT HH.MI.SSXFF AM
NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
NLS_DUAL_CURRENCY $
NLS_COMP BINARY
NLS_LENGTH_SEMANTICS BYTE
NLS_NCHAR_CONV_EXCP FALSE
NLS_RDBMS_VERSION 10.2.0.5.0

20 rows selected.

Они ответили что это BAG, который исправиться тока в релизе 12: ".
So with Klon, you mean this character set.
CL8KZ1048

I found a JDBC related bug to the issue:
Bug 12819067 : NLS: JAVA.LANG.ARITHMETICEXCEPTION: / BY ZERO; USER CUSTOM CHARSET; PREPARESTATE
=>
Will be fixed in Rdbms release 12

Version 10.2 is desupported Rdbms
So, patches are not delivered anymore for this version. :-/"
20 янв 12, 08:16    [11936772]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
F_RUS
Member

Откуда:
Сообщений: 11
Я для чистоты экперемента поставил себе на ubuntu 11.10 oracle - xe - universal 10.2.0.1. И что удивительно sqldeveloper 3.0.0.4 подключился к базе XE, выдал таблицы, селекты работают без всяких проблем. Я даже с помощью инструкции размещеной в одном из форумах этого ресурса изменил NLS_CHARACTERSET на CL8KZ1048. SQLDEVELOPER опять подключился и работает. Все прекрасно. Вот только никак не пойму почему к нашей базе 10.2.0.5 на солярисе sqldeveloper подключается, но не работает, выдает ошибку, а с базой на моем компе работает на ура?
20 янв 12, 08:31    [11936790]     Ответить | Цитировать Сообщить модератору
 Re: Sqldeveloper не работает с Java JDK 1.6.0.30, при открытии таблиц выдает ошибку.  [new]
brig_2000
Member

Откуда:
Сообщений: 207
F_RUS, потому что SqlDEveloper бесплатный :).

Если рассуждать логически, то проблема в JDBC. В SqlDeveloper 3.0+ JDBC - от 11g версии базы данных. Возможно, продукты с JDBC от 10g базы данных могут и заработать (типа, JDeveloper 10.1.3.5 или SqlDEveloper 1.2.1)
20 янв 12, 22:41    [11943275]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить