Мне удалось реализовать простой файл ввода-вывода в моем проекте Spring для файлов, не входящих в мой проект (затем файл WAR
), используя файл .properties
, содержащий путь (source), и теперь мне нужно сделать это на сервере.Пути файлов ввода Tomcat (для процесса ввода-вывода Java)
Раньше, когда я включил файлы внутри файла WAR
, я могу получить доступ к ним на сервере Tomcat, используя путь
/home/my_username/tomcat7/webapps/my_project/WEB-INF/classes/
Но теперь, что файлы не внутри файла WAR
, я просто положил их рядом с папкой webapps
.
Структура моей папки Tomcat 7 является:
tomcat7
|----> bin
|----> conf
|----> logs
|----> resources*
|----> temp
|----> webapps
|----\----> springapp.war*
|----> work
где /resources
папка мне нужно внутри WAR
файла ввода/вывода.
Мой .properties
файл имеет:
dir.server=home/my_username/tomcat7/resources
// or
dir.server=/home/my_username/tomcat7/resources
но появляется сообщение об ошибке (из моего catalina.out
файла):
java.io.FileNotFoundException: /home/my_username/tomcat7/resources/my_file.file (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at weka.core.SerializationHelper.read(SerializationHelper.java:270)
Есть правильный способ объявить путь к файлу или нужно изменить моя реализация ввода/вывода файлов?
Определенно начинается с косой черты. Также необходимо установить правильные рекурсивные права 'chown owner: group' и' chmod a + rw'. В FileNotFoundException вы можете попытаться отключить путь до корня, чтобы найти правильный нарушительный каталог '/ home/my_username' или так. –
Если я правильно понимаю, мне нужно сделать разрешения '/ resources' на' 755' (и рекурсивно)? –
Да, если это проблема; права чтения должны быть достаточными, если вы только читаете 'chmod a + r'. –