Наше приложение построено на платформе Spring и размещено на WAS 6.1. Он был разработан для Internet Explorer 6 (как пользователи, использующие IE 6). Он открывает файл PDF через AJAX-связь через контроллер. В фоновом режиме он вызывает mq для извлечения байта []. Он записывается в bufferedOutputStream ответа.
Он отлично работает в среде разработки и тестирования, но в производственной среде работает не всегда нормально. Иногда оно открывается, иногда нет. (Для балансировки нагрузки у нас более 1 сервера.)
Иногда строка запроса запроса задается в имени файла, и при попытке сохранить вложение во всплывающем окне выдается следующее сообщение об ошибке:
"Интернет не может загрузить ...... URL-адрес с abc.com Файл не может быть записан в кэш"
PFB код:
byte[] letterByteArr = null;
letterByteArr = fetchFromMQ();
bufferedOutputStream = new BufferedOutputStream(response.getOutputStream());
response.reset();
response.setContentType(application/pdf);
response.setHeader(Content-disposition, attachment; filename=LP.pdf);
int length = letterByteArr.length;
response.setContentLength(length);
bufferedOutputStream.write(letterByteArr, 0, length);
bufferedOutputStream.flush();
Аналогичный фрагмент кода работает нормально в другом приложении, работающем в другой jvm.
Может ли кто-нибудь предложить возможные решения этой проблемы, если они столкнулись во время реализации вашего кода? Где может быть возможная проблема в WAS, сети, IE или Abode?