Из вашего кода:
FileHandler handler = new FileHandler("logging.txt");
Это создаст файл logging.txt
в рабочем каталоге по умолчанию для сервера приложений. Точный путь к рабочему каталогу по умолчанию можно определить следующим образом:
System.out.println(new File(".").getAbsolutePath());
Файл logging.txt
должен находиться в этой папке.
Однако это не лучшая идея. Использование относительных путей - плохая идея, когда вы не можете управлять рабочим каталогом по умолчанию изнутри вашего приложения. Вы должны использовать абсолютные пути вместо этого. То есть, начать с /
:
FileHandler handler = new FileHandler("/path/to/logging.txt");
В Windows это будет сохранено на том же диске, где находится текущий рабочий каталог. В противном случае, если вы также захотите сменить диск, вам также понадобится префикс C:
или что-то еще.
Обратите внимание, что эта проблема никоим образом не связана с JSF. У вас точно такая же проблема с любым другим API / каркасом Java.