Разрешение пути в tomcat 9

У меня есть этот фрагмент кода:

Paths.get("conf/app.properties").toAbsolutePath()

Когда я запускаю его в Tomcat 7, он правильно разрешается в относительный каталог, используя $CATALINA_HOME. Но когда я запускаю его в Tomcat 9, он «разрешает» /conf/app.properties, которого, очевидно, не существует. Как заставить Tomcat 9 правильно разрешить путь?


person Jorn    schedule 06.02.2018    source источник
comment
Я проверил руководства по миграции tomcat (с 7 по 8 и с 8 по 9), но не смог найти ничего, что касалось бы разрешения путей к файлам.   -  person Jorn    schedule 06.02.2018


Ответы (1)


Я проверил этот ответ - кажется, он делает что-то близкое к тому, что вам нужно: Чтение свойств из tomcat

Я быстро перешел от этого к чему-то вроде:

<%= new File(System.getProperty("catalina.base"), "conf").getAbsolutePath() %>
person Vasil Svetoslavov    schedule 06.02.2018
comment
Это работает, но кажется неправильным. Разве tomcat не должен позаботиться об этом автоматически? - person Jorn; 06.02.2018
comment
Для меня наличие папки сервера в качестве свойства Java настолько правильно, насколько это возможно. Должно ли ваше приложение возиться с конфигурацией сервера — это совсем другая история;) - person Vasil Svetoslavov; 06.02.2018