Не могу открыть сгенерированный PDF-файл

Я использую приведенный ниже код для загрузки значения поля в формате PDF в формате jsf.

Хотя я могу скачать PDF-файл, но не могу его открыть. Он показывает "не могу открыть pdf".

Что-то не так с кодировкой (пытался указать UTF-8 в getbytes (), но это тоже не сработало.)?

public StreamedContent getGeneratePdf() throws IOException {
        final PortletResponse portletResponse = (PortletResponse) FacesContext.getCurrentInstance().getExternalContext()
                .getResponse();
        final HttpServletResponse res = PortalUtil.getHttpServletResponse(portletResponse);
        res.setContentType("application/pdf");
        res.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
        res.setHeader("Content-Disposition", "attachment; filename=\"letter.pdf\"");
        res.setHeader("Refresh", "1");
        res.flushBuffer();
        OutputStream output = res.getOutputStream();
        byte[] out=null;
        out=this.getNotes().getBytes();
        output.write(out);
        output.flush();
        output.close();
        return null;
    }

notes - это свойство типа string, которое заполняется из пользовательского интерфейса.

Строка! = PDF. Сначала вам нужно создать PDF-документ. Только установка типа контента не поможет.

Jasper de Vries 11.10.2018 09:09

Спасибо, Джаспер. Что-нибудь с этим сделаю.

Naxi 11.10.2018 09:17
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
40
0

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