Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Preferences |
Автор: chief39 21.2.2006, 17:41 | ||||||
ребят, взгляните с "сапогами надетыми на свежую голову", а то хожу вокруг да около. Нашлёпал программулину, поработала, валялась себе без дела... И вот сегодня она мне вновь понадобилась... Запускаю я её и вижу что из преференсов она не подбирает значения... Почему-то... Никто вроде не трогал.. но. Не пашет. вот такие преференсы:
код:
и потом
Всё кошерно, файл у него exist, но ВСЕ get'ы не отрабатывают. Вернее берут по умолчанию значение. Понимаю что смотрю на новые ворота, но какого чёрта они перестали открываться - не пойму. Бага как всегда под ногами, но её как всегда не видно. Хоть подтолкните к нужной калитке ![]() jdk 1.4.2 , fedora core 4, файл для рида разрешён всем. |
Автор: LSD 21.2.2006, 18:03 | ||
Класса NetFlowEmulator.class у меня нет, но так:
Все работает. Ты уверен что Preferences.importPreferences(prefsStream); проходит без ошибок, а то ты там можешь получить exception и даже не узнать об этом. Кстати ты вначале создаешь File file = new File("some.xml");, а потом сам же его и не используешь. |
Автор: LSD 21.2.2006, 20:47 | ||
Таки давайте ужо посмотрим, що там вообще е ![]()
|
Автор: chief39 22.2.2006, 13:05 | ||
Вот то-то и оно что ничего из энтрисов! ![]() Если твоим субтри - тогда
Слушай... у мня тут подлая мысль закралась... Какой-то левый симбол не мог это всё покерить? Может он отлавливает что-то непонятное и на все энтрисы забивает? Сейчас попробую программно сей файл создать и записать на диск. |
Автор: LSD 22.2.2006, 13:18 | ||
Формат XML правильный, у меня то все импортировалось нормально. Если только какая местная федорина трабла. А вообще под Linux куда Preferences сохраняются? Там ручками пошарить нельзя? |
Автор: chief39 22.2.2006, 13:33 | ||
То есть??? В файл ![]() Потому что править могли и вием и миднайтом и жэдитом и кэдитом откуда ни попадя. Сейчас заново пересоздам файлу. Добавлено @ 13:36 Я уже на неё всё свалить готов. Она меня так часто подставляла, что.... ![]() 50% траблов из сферы ответственности моих корявых рук перекочевали в сферу федориных корявых байт ![]() ![]() |
Автор: chief39 22.2.2006, 14:00 |
LSD, вопрос решился. Создал програмно эти префы и слил в файл. Теперь видит. Уже не знаю что за симбольчики, и какая програмулина их туда, и чьими ручками... Спасибо большое. ЗЫ: огромная польза форума в том, что тебя подгоняет мысль: вон люди мой код третируют и находят решения тебе, хотя им это совсем ни к чему, а я тут сижу и туплю. В НЕОГРАНИЧЕННЫХ КОЛИЧЕСТВАХ ![]() |
Автор: LSD 22.2.2006, 14:19 | ||
Не, я говорил о an implementation-dependent backing store. Т.е. когда ты пишешь Preferences.importPreferences() ты переносишь настройки из файла в это самое backing store, в виндах это реестр, а вот под Linux не знаю. Кстати а некошерный файлик у тебя сохранился? Если его сравнить c новым и попробовать прогнать на нем валидацию по DTD каким нибудь XML парсером? |
Автор: chief39 22.2.2006, 16:35 | ||
Нэа... ![]() а) чтоб не путался б) отомстил ему малость
Трудно сказать.... Накопал в /etc/.java/.systemPrefs два файлика: .system.lock .systemRootModFile Но они пусты, как моя голова. Запускал прожку, чтоб подтянула преференсы - они всё равно пустые. А в памяти сиё храниться не может? |
Автор: LSD 22.2.2006, 16:43 |
Нет кончено, это же персистентные настройки. Вообще говоря, то что вы их постоянно импортируете из файла, это не правильно. По идее их надо один раз загрузить, а дальше они уже будут храниться в системе. Под виндами за хранение настроек отвечает класс WindowsPreferences, и по нему можно понять где они храняться. Может что подобное и в Linix-е есть? |
Автор: chief39 22.2.2006, 16:56 | ||
Они меняются через файл. Надо каждый раз из файла подтягивать свежие. Хм... только что проверил... запустил с файлом - они есть... Потом файлоподтяжку закоммитил - все геты взяли дефолты. Не нашли то бишь в системе. Интересно. |
Автор: chief39 5.5.2006, 17:12 | ||||
Есть такое. Вспомнил что тема была - решил поделиться ![]() в хоум папке лежит .java в ней .userPrefs а в ней понеслось дерево каталогов: каждая папка - нод. Причём в каждой папке есть файлик prefs.xml Его содержимое - мапа ентрисов для данного нода(содержащей его папки)
Почему тогда у меня не импортило - сейчас не скажу, не помню. Как опять доберусь - скажу. |