Я использую streamedcontent в премьер-фейсах и использую медиа-тег для его отображения. При нажатии кнопки загрузки в программе просмотра загружается файл с именем dynamiccontent.properties. Есть ли способ его переименовать?
I am using html4, java 7 and primefaces 5.2.24.
Я попытался установить параметр #toolbar, чтобы скрыть панель инструментов, как показано ниже, но он не работает:
<p:media id = "pdfViewer" value = "#{mybean.pdfMedia}" width = "100%" height = "90%" player = "pdf" cache = "false" >
<f:param name = "#toolbar" value = "0"></f:param>
</p:media>
и мой потоковый контент создается из iText следующим образом:
baos = new ByteArrayOutputStream();
document = new Document();
document.setPageSize(PageSize.A4);
document.setMargins(70, 70, 100, 100);
writer = PdfWriter.getInstance(document, baos);
document.open();
document.newPage();
XMLWorkerHelper.getInstance().parseXHtml(writer, document,
new ByteArrayInputStream(pageContents));
document.close();
InputStream stream = new ByteArrayInputStream(baos.toByteArray());
StreamedContent pdfMedia = new DefaultStreamedContent(stream, "application/pdf");
Есть ли способ его переименовать? или есть ли способ скрыть панель инструментов?
@Selaron обновлен





Вам необходимо установить Имя для вашего потокового контента, используя конструктор
org.primefaces.model.DefaultStreamedContent.DefaultStreamedContent(InputStream stream, String contentType, String name) или метод org.primefaces.model.DefaultStreamedContent.setName(String).
название осталось прежним. то есть dynamiccontent.properties.jsf
Я думаю, что Chrome заблокировал это поведение для PDF-файлов.
Это была ошибка в PF 5.2.24, которую вы используете, и исправлена в PF 6.1 или выше. См. Этот отчет об ошибке: https://github.com/primefaces/primefaces/issues/2055
Обязательно установите «NAME» в DefaultStreamedContent с помощью конструктора org.primefaces.model.DefaultStreamedContent.DefaultStreamedContent(InputStream stream, String contentType, String name) или метода org.primefaces.model.DefaultStreamedContent.setName(String).
эта ошибка снова возникает в PF 10.0, несмотря на то, что я установил имя в DefaultStreamContent
Покажите, пожалуйста, код, в котором вы создаете экземпляр StreamedContent.