Как переименовать PDF в медиа теге Primefaces

Я использую 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");

Есть ли способ его переименовать? или есть ли способ скрыть панель инструментов?

Покажите, пожалуйста, код, в котором вы создаете экземпляр StreamedContent.

Selaron 20.12.2018 10:02

@Selaron обновлен

Imran Khurram 20.12.2018 10:09
stackoverflow.com/questions/44393132/…
Kukeltje 24.12.2018 09:24
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
5
3
957
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Вам необходимо установить Имя для вашего потокового контента, используя конструктор org.primefaces.model.DefaultStreamedContent.DefaultStreamedContent(InputStream stream, String contentType, String name) или метод org.primefaces.model.DefaultStreamedContent.setName(String).

название осталось прежним. то есть dynamiccontent.properties.jsf

Imran Khurram 20.12.2018 16:13

Я думаю, что Chrome заблокировал это поведение для PDF-файлов.

Melloware 18.05.2021 14:10
Ответ принят как подходящий

Это была ошибка в 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

Julios_Rodmax 17.05.2021 23:51

Другие вопросы по теме