Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Ошибка при создании файла на сервере


Автор: Zhenyusya 13.12.2011, 04:54
В общем алгоритм программы такой:
Пользователь выбирает файл для последующей обработки, в процессе которой формируются сообщения. Эти сообщения необходимо записать в протокол (log-файл на сервере).
Код

                try {
                    File F = new File(fn);
                    if (!F.exists()) {
                        if (F.createNewFile())
                            functions.writeLog("1Создание лог-файла прошло успешно", "Загрузка информации", fn, myfile.getOriginalName(), number, "ConvertData");
                        else functions.writeLog("0Лог-файл не создан", "Загрузка информации", fn, myfile.getOriginalName(), number, "ConvertData");
                    }
                    FileWriter fw = new FileWriter(fn, true);
                    fw.write(str + "\n");
                    fw.close();
                    functions.writeLog("1Запись сообщений в лог-файл", "Загрузка информации", fn, myfile.getOriginalName(), number, "ConvertData");
                } catch (Exception e) {
                    functions.writeLog("0Запись сообщений в лог-файл: " + e.getMessage(), "Загрузка информации", fn, myfile.getOriginalName(), number, "ConvertData");
                }


Как правило, файл не создается и сообщения не записываются. Возникает исключение "ЗАПИСЬ СООБЩЕНИЙ В ЛОГ-ФАЙЛ: СИСТЕМЕ НЕ УДАЕТСЯ НАЙТИ УКАЗАННЫЙ ПУТЬ".
Однако, после перезапуска ApacheTomcat (когда пользователей нет в программе) файл отлично формируется.
Подскажите, в чем может быть причина? Ну ооочень нужна помощь!! smile 

Автор: LSD 13.12.2011, 11:43
Код

if (F.createNewFile())

Перед этим надо проверить, что каталог куда будут писаться логи существует.

Добавлено через 29 секунд
И писать логи на русском это ФУ smile 

Автор: Zhenyusya 13.12.2011, 13:34
1. Да каталог-то железно существует, он постоянный, жестко зафиксированный и никак не изменяется.
2. Суть вопроса в том, что файл то формируется, то не формируется.
3. А логи пишутся на русском для пользователей, которые какой-другой язык могут и не понять.

Автор: LSD 13.12.2011, 13:39
1. Проверка никогда не помешает.
2. Явно проблема во внешних условиях.
3. На какой именно строчке кидается исключение?

Автор: Zhenyusya 14.12.2011, 13:12
Вопрос снимаю. Нашла решение.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)