Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > MYSQL и Java |
Автор: Rusico 1.6.2004, 12:57 |
Скачал с mysql.com Connector для mysql, пишу: try { Class.forName("com.mysql.jdbc.Driver");//.newInstance(); DriverManager.registerDriver(new com.mysql.jdbc.Driver()); Connection conn; //до этих пор всё в порядке. conn = DriverManager.getConnection("jdbc:mysql://192.168.1.1/kataloguser=rus&password=ico"); }catch(SQLException h){} Выкидывает исключение: java.lang.NoClassDefFoundError: java/sql/Savepoint Что это? Често говоря уже не могу вариться в собственном соку, может кто поможет? Заранее благодарен. |
Автор: breeezy 1.6.2004, 13:46 |
Может, формат строки неправильный? Типа вопросика не хватает? jdbc:mysql://[hostname][,failoverhost...][:port]/[dbname][?param1=value1][¶m2=value2]..... jdbc:mysql://192.168.1.1/?kataloguser=rus&password=ico |
Автор: Rusico 1.6.2004, 13:54 |
извиняюсь за неточность, формат строки такой: "jdbc:mysql://192.168.1.1/base_of_shtrih?user=russo&password=rusico" |
Автор: Rusico 1.6.2004, 14:10 |
эту ошибку исправил, но теперь возникает другая: java.sql.SQLException: Cannot load connection class because of underlying exception: 'java.lang.SecurityException: Prohibited package name: java.sql'. |
Автор: Sun 1.6.2004, 14:49 |
Ты наверно пытаешься запускать это из аплета? Если да, то тебе броузер не дает установить сокет соединение с сервером баз данных. Побороть можно добавив права аплету (у нас в факе вроде должно быть как). Либо перенести работу с базой данных на сервер. |
Автор: Rusico 1.6.2004, 14:58 |
нет, всё это я делаю не в апплете ![]() |
Автор: LSD 1.6.2004, 19:45 |
Класс (вернее интерфейс) java.sql.Savepoint появился в JDK 1.4 и судя по ошибке у тебя более старая версия и ты пытаешься загрузить его (java.sql.Savepoint) не через Extension Mechanism. |
Автор: Domestic Cat 1.6.2004, 20:20 | ||
"Prohibited package name ..." i t d hardcoded v classe ClassLoader:
Kak dobitsya zagruzki classa: http://java.sun.com/developer/JDCTechTips/2001/tt0130.html |
Автор: ZAVS 4.6.2004, 02:12 |
сделай не так try { Class.forName("com.mysql.jdbc.Driver");//.newInstance(); DriverManager.registerDriver(new com.mysql.jdbc.Driver()); Connection conn; //до этих пор всё в порядке. conn = DriverManager.getConnection("jdbc:mysql://192.168.1.1/kataloguser=rus&password=ico"); }catch(SQLException h){} а так try { Class.forName("com.mysql.jdbc.Driver").newInstance();// я делаю так ![]() ![]() DriverManager.registerDriver(new com.mysql.jdbc.Driver()); Connection conn; //до этих пор всё в порядке. conn = DriverManager.getConnection("jdbc:mysql://192.168.1.1/kataloguser=rus&password=ico"); }catch(SQLException h){} |
Автор: skalex 22.3.2005, 11:44 | ||||||
Все таки надо расставить все точки над i. Вот пример (фактически из документации к mysql-connector):
Этот пример у меня не работает. Выдается ошибка:
Никак не могу понять, в чем дело... Потому что, если я изменю строку #17 на
и попытаюсь запустить программу на локальном компютере где установлен MySQL c настройками по умолчанию, то все заработает... В чем дело то? ![]() |
Автор: Domestic Cat 22.3.2005, 11:55 |
Какая версия у коннектора? |
Автор: skalex 22.3.2005, 12:23 |
MySQL Connector/J 3.0.13-production (formerly MM.MySQL) |
Автор: 3,14 22.3.2005, 13:28 | ||||
Всегда использовал :
Всё работает, а насчёт твоего случая предположу, что someuser и somepassword содержат символы к-ые нужно за urlencode-ить |
Автор: skalex 22.3.2005, 14:22 | ||||||
Так я тоже пробовал. Не работало!
Нет, ничего подобного там нет! В общем, скачал я более новую версию (MySQL Connector/J 3.1.7 (formerly MM.MySQL) ) и проблема решилась! |
Автор: Domestic Cat 22.3.2005, 19:00 | ||
это у тебя был баг 3.0.13 коннектора. |