Я пытался реализовать действие, которое позволяет пользователю загружать файл с определенным именем файла. Это filename
устанавливается передачей действия параметру через struts.xml
следующим образом:
<result name="success" type="stream">
<param name="contentType">application/octet-stream</param>
<param name="inputName">input_document</param>
<param name="contentDisposition">attachment;filename=foo.bar</param>
<param name="bufferSize">1024</param>
</result>
Я пропустил остальную часть кода, так как хочу просто сосредоточиться на этом:
<param name="contentDisposition">attachment;filename=foo.bar</param>
Таким образом, он отлично работает и позволяет загружать файл foo
с расширением .bar
.
Итак, вот сделка, мне было любопытно узнать, возможно ли получить расширение из файла свойств и передать его через параметр, например:
<param name="contentDisposition">attachment;filename=foo%{+ getText("EXTENSION_KEY_IN_PROPERTIES_FILE")}</param>
Я знаю, что getText("...")
не будет работать, но я просто хочу, чтобы вы поняли, что я ищу.
В настоящее время я работаю с некоторыми файлами свойств для глобальных параметров и файлов локализации, поэтому было бы здорово, если бы я мог получить это расширение файла из одного из них.
Он должен работать, если ваши действия реализуют TextProvider
<param name="contentDisposition">attachment;filename=foo${getText('EXTENSION_KEY_IN_PROPERTIES_FILE')}</param>