Я запускаю веб-приложение, которое предоставляет сервлет.Этот сервлет открывает файл PDF из сетевой файловой системы и, наконец, передает его запрашивающему браузеру.
Все файлы PDF линеаризуются генератором PDF жизненного цикла Adobe и готовы для быстрого просмотра в Интернете.
К сожалению, быстрый веб-просмотр не работает.Я предполагаю, что это проблема того, как открыть и передать файл в коде Java и настройки информации заголовка ответа.если я разверну тестовый pdf в своем веб-приложении на jboss AS и открою его прямо из браузера по URL, то увеличивается загрузка.
Может ли кто-нибудь мне помочь?
Вот код моегосервлет:
response.setContentType("application/pdf");
response.setHeader("Expires", "0");
response.setHeader("Cache-Control",
"must-revalidate, post-check=0, pre-check=0");
response.setHeader("Content-Disposition",
"inline;filename=" + documentReference);
response.setHeader("Accept-Ranges", "bytes");
File nfsPDF = new File(NFS_DIRECTORY_PATH + documentReference);
FileInputStream fis = new FileInputStream(nfsPDF);
BufferedInputStream bis = new BufferedInputStream(fis);
ServletOutputStream sos = response.getOutputStream();
byte[] buffer = new byte[(int) nfsPDF.length()];
while (true) {
int bytesRead = bis.read(buffer, 0, buffer.length);
if (bytesRead < 0) {
break;
}
sos.write(buffer, 0, bytesRead);
}
sos.flush();
//... closing...