|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Здравствуйте! Пишу Java-Spring приложение на локальном ПК (Windows). В данном приложении, при нажатии на кнопку идет считывание данных из файла Excel, путь к которому прописан в строковой переменной ("E:..."). Я это приложение размещаю на удаленном сервере (Linux). Это делаю закидывая war-архив в Tomcat и авто деплоя. Путь к файлу, из которого следует считывать данные, на сервере уже соответственно другой (/opt/tomcat/webapps/Wtr/). Как задать ссылку на файл для чтения, если директории с файлом на ПК, где ведется разработка и на сервере разные? Попробовал 2-а способа задать с помощью относительной ссылки относительно директории приложения: 1) Код: java 1. 2. 3. 4.
Он вернул "/fast", которая находится в "/opt/tomcat/webapps/". Если я туда кидаю свой файл, то после запуска отладки он просто удаляется. Поэтому на мой относительный путь "/Hydrometcentre.xls" вылетает исключение - Файл не найден. 2) Код: java 1. 2. 3.
Он возвращает - "E:\Fast_w\apache-tomcat-9.0.19\bin.". Но это директория самого Tomcat. Попытка туда закинуть файл, также вызвала исключение. Что-то делаю не так. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 19:13 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, Пропиши путь в системную переменную Оси. Если код не находит выдай ошибку: "не установлена переменная ENV_MY_PETRO ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 19:40 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, Заведите в property-file Spring-а переменную, где будет указан путь к вашему файлу. Код: java 1. 2. 3. 4. 5. 6. 7.
Код: java 1. 2. 3. 4. 5. 6. 7.
application.yaml Код: python 1. 2.
Где-то так application.yaml кладем рядом с jar-ником. По идее он перкрывает, тот, что бдует собран в jar-нике ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 06:35 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
mad_nazgul, у меня не SpringBoot, просто Spring. Это придется новые зависимости устанавливать. Есть способ по проще? Костыль какой-нибудь? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 13:04 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, В твоем спринге web.xml есть? Там тоже пару строк. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 14:02 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, перепутал, есть pom.xml ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 14:07 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, есть glassfish-web.xml ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 14:11 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Попробовал прописать полный абсолютный путь на сервере заранее перед заливкой: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Та же ошибка в 139 строке кода, где создается объект книги: авторRoot Cause java.lang.NullPointerException org.apache.poi.poifs.filesystem.POIFSFileSystem.closeInputStream(POIFSFileSystem.java:333) org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:321) org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:401) org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:382) service.ReadExcel.readExcelAll(ReadExcel.java:139) controller.UserController.administration(UserController.java:134) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:498) org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:189) org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102) org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:895) org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:800) org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1038) org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:897) javax.servlet.http.HttpServlet.service(HttpServlet.java:634) org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:882) javax.servlet.http.HttpServlet.service(HttpServlet.java:741) org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 14:38 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, Мой выше вариант прочитать с операционки чем не подошел? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 16:40 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, >Попробовал прописать полный абсолютный путь на сервере заранее перед заливкой: == Я запутался у тебя. Напиши тут в какой директории работает программа. И потом мы подскажем как сделать чтобы на любом сервере работало. Или у тебя вообще нигде не работает? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 16:48 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, Дружище. Кто тебя учил так работать с exceptions? Они - не для того чтобы на экране печатать стектрейс. А для того чтобы отработать логику принятия решений в случае аварии. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 23:41 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, после того как я собрал у себя на ПК под Windows war-архив, я его деплою на удаленный сервер Linux через Tomcat Menager. После диплоя war-архива на сервере Tomcat в директории /opt/tomcat/webapps/ создается папка данного приложения "Wtr" из которой оно и работает. В этой папке (/opt/tomcat/webapps/Wtr/) создаются 2 рабочие папки - META-INF и WEB-INF. В общем на удаленном сервере всё приложение размещено в директории /opt/tomcat/webapps/Wtr/. У меня на ПК оно диплоится и работает из папки E:\Fast_wt\apache-tomcat-9.0.19\webapps\water, а файл к которому я обращаюсь по абсолютному пути лежит в E:\Fast_wt\apache-tomcat-9.0.19\webapps. На сервере я загружаю файл в директорию /opt/tomcat/webapps/, но не знаю как прописать так путь что бы приложение его нашло. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:13 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir, в дебаггере в калькуляторе просто исполни эту строку. Код: java 1.
Если путь верный - ты получишь ненулевоей объект InputStream. Если путь неверный - будет FileNotFoundEx. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:16 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
mayton, пока нужно добиться чтобы заработало, а потом уже буду дописывать нюансы ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:24 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir я его деплою на удаленный сервер Linux через Tomcat Menager. выше ты сказал что у тебя glassFish файл сервера? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:31 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
mayton, нет у меня на сервере дебагера, там стоит Линукс без графической оболочки, поставил ещё jdk, Tomcat, mysql and java-mysql connector, и все ) Я так пробовал 22142705 , не получилось, возможно тут ещё конфликт прав root и пользователя под которым работает приложение. Проверю ещё это ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:31 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:34 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, у меня Tomcat, а почему он так этот файл назвал, или я его не создавал, когда сперва хотел глассфише деплоить, в общем это фигня ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:34 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Vlad__i__mir, Мой выше вариант прочитать с операционки чем не подошел? Не знаю как это сделать ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:36 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir На сервере я загружаю файл в директорию /opt/tomcat/webapps/, но не знаю как прописать так путь что бы приложение его нашло. - пропиши жестко гвоздями в коде и ответь на вопрос - работает на боевой машинке? А потом уже с переменной и путями. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:38 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir PetroNotC Sharp Vlad__i__mir, Мой выше вариант прочитать с операционки чем не подошел? Не знаю как это сделать А записать в линукс переменную умеем? Или тоже показать? ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:40 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Vlad__i__mir пропущено... Не знаю как это сделать А записать в линукс переменную умеем? Или тоже показать? Лучше показать ) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:41 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
Vlad__i__mir Лучше показать ) Отвечай на остальные посты - покажем. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:44 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
mayton Vlad__i__mir, в дебаггере в калькуляторе просто исполни эту строку. Код: java 1.
Если путь верный - ты получишь ненулевоей объект InputStream. Если путь неверный - будет FileNotFoundEx. Само приложение работает, но когда обращаюсь к файлу, то выдает ошибку 22142705 . ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:49 |
|
Как задать относительную ссылку на файл для чтения в Springe-mvc
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Vlad__i__mir На сервере я загружаю файл в директорию /opt/tomcat/webapps/, но не знаю как прописать так путь что бы приложение его нашло. - пропиши жестко гвоздями в коде и ответь на вопрос - работает на боевой машинке? А потом уже с переменной и путями. Само приложение работает, но когда обращаюсь к файлу, то выдает ошибку 22142705. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:53 |
|
|
start [/forum/topic.php?fid=59&fpage=15&tid=2120793]: |
0ms |
get settings: |
22ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
609ms |
get tp. blocked users: |
2ms |
others: | 309ms |
total: | 1040ms |
0 / 0 |