У меня проблема с загрузкой файла с помощью Struts2. Я сделал кучу исследований и нашел множество подобных вопросов, но ни один из ответов не помог мне.Struts 2 Загрузить файл 0 байт
Вот что я в настоящее время
JSP
<s:url id="fileDownload" namespace="/jsp" action="download"></s:url>
Download file - <s:a href="%{fileDownload}">MyFile.pdf</s:a>
Действие
private InputStream inputStream;
private String fileName;
public String execute() throws Exception {
File fileToDownload = new File("C:My Documents/MyFile.pdf");
fileName = fileToDownload.getName();
inputStream = new FileInputStream(fileToDownload);
return SUCCESS;
}
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public InputStream getInputStream() {
return inputStream;
}
Struts.xml
<action name="download" class="com.my.path.to.action.class">
<result name="success" type="stream">
<param name="contentDisposition">attachment;filename=${fileName}</param>
<param name="contentType">application/pdf</param>
<param name="inputName">inputStream</param>
<param name="bufferSize">4096</param>
</result>
</action>
Когда я нажимаю на ссылку, она загружает файл, который назван правильно, но в нем нет данных. Если у кого-нибудь есть идеи относительно того, что я делаю неправильно, мне бы понравилось предложение, так как я уверен, что это просто что-то немое.
'новый файл («C: Мои документы/M yFile.pdf ")' - отсутствует косая черта после 'C:' – binoternary
Косая черта не требуется. Я добавил его в любом случае, и результат будет таким же. – Zared619
Что возвращает 'fileToDownload.exists()'? – binoternary