Как указать путь к файлу PDF при создании в стойках 2? - PullRequest
0 голосов
/ 18 июля 2011

Я пытаюсь создать файл PDF с помощью Struts 2. Местоположение класса действия выглядит следующим образом.

/home/Jagan/MATCH/Jagan/src/ActionClasses/PDFFile.java

Здесь рабочая область начинается с

/ MATCH

В PDFFile.java. Я пишу, как указано ниже, и работает нормально.

pdfwriter = PdfWriter.getInstance (document, new FileOutputStream ("/ home / Jagan / xyz.pdf "));

Но я должен создать это в папке

/ home / Jagan / MATCH / Jagan / PDFs

Я не должен использовать /home/Jagan/, поскольку он станет жестким кодом, если мне придется запускать это приложение в другой системе.

Я пытался

pdfwriter = PdfWriter.getInstance (документ, новыйFileOutputStream ("../../../ PDFs / xyz.pdf"));

Но он не создает файл. Даже если он работает, это нереальное решение (потому что ")../../../ "не работает в windows).

Пожалуйста, предложите мне хороший способ указать путь для создания файла.


Добавление к вопросу.

Я должен пОпция загрузки rovide для загрузки этого созданного файла на странице JSP. Какой тег Struts следует использовать.Пожалуйста, предоставьте мне синтаксис для этого

Ответы [ 2 ]

1 голос
/ 18 июля 2011

загрузка файлов имеет 2 подхода: 1. вы можете вернуть его с опережающим результатом, как объяснено здесь 2. поскольку вы пытаетесь сначала сохранить файл в файловой системе, а затем получить к нему доступ из другого URL-адреса.Ответ на ваш вопрос: вы должны получить servletContext.getRealPath ("/ WEB-INF"), и после этого все относительно WEB-INF.

1 голос
/ 18 июля 2011

Я не должен использовать / home / Jagan /, так как он станет жестким кодом, если мне придется запускать это приложение в другой системе.

Правильно, используйте вместо этого

System.getProperty("user.home");///home/Jagan/, it will return you path to your home dir
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...