Файл DOCX, сгенерированный JAX-RS API, показывает ошибку совместимости в WordJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Файл DOCX, сгенерированный JAX-RS API, показывает ошибку совместимости в Word

Сообщение Anonymous »

Я генерирую файл .docx в API JAX-RS.
Когда я сохраняю его непосредственно на диск, как это: < /p>
try (FileOutputStream fos = new FileOutputStream("localSavedFile.docx")) {
outputDocument(fos);
< /code>
} < /p>
Файл открывается прекрасно в MS Word.StreamingOutput stream = output -> {
try {
outputDocument(output);
} catch (Exception e) {
throw new RuntimeException(e);
}
};

return Response.ok(stream)
.header("Content-Disposition", "attachment; filename=\"file.docx\"")
.type("application/vnd.openxmlformats-officedocument.wordprocessingml.document")
.build();
< /code>
Word показывает ошибку совместимости (что -то вроде «файл поврежден или не может быть открыт должным образом») при открытии загруженного файла.public void outputDocument(final OutputStream outputStream) throws Exception {
WordprocessingMLPackage wordPackage = WordprocessingMLPackage.createPackage();
MainDocumentPart mainDocumentPart = wordPackage.getMainDocumentPart();

//other code where docx is generated

// finally write the package to the provided stream
wordPackage.save(outputStream);
< /code>
} < /p>
Что я попробовал: < /p>
Сохранение с помощью FileOutputStream работает нормально (так что сам документ действителен). < /p>
Настройка явного контента-типа и контента. При записи в локальный файл, но показывает ошибку совместимости при потоке в ответе JAX-RS?
мне нужно понижать/закрыть поток по-разному, или для офисных файлов требуются дополнительные заголовки?

Подробнее здесь: https://stackoverflow.com/questions/797 ... or-in-word
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»