Браузер просит сохранить JSP
Я работал с JBoss и WebLogic раньше, но на моей нынешней работе мы используем OC4J, который является первым для меня. Я думаю, что моя проблема может быть связана с этим. Я создаю EAR-файл, в котором есть один WAR-файл. JSP верхнего уровня, кажется, отображаются правильно, но когда я пытаюсь отобразить JSP в подкаталоге, таком как secure/index.do или secure/header.jsp, браузер спрашивает меня, хочу ли я сохранить файл. Если я сохраню его, это файл размером 0 байт. На самом деле, я просто попробовал secure/index.xyz, которого, как я знаю, не существует, и он сделал то же самое. Я знаю, что эти другие файлы / сервлеты существуют. Любые намеки на то, что может быть причиной этого?
5 ответов
Нашел это. Вы, ребята, были по сути правы в вопросе типа контента, но в моем коде была ошибка, которая привела к этому. Я создал фильтр с именем SecureActionFilter, который вызывался всякий раз, когда существовал URL-адрес / secure / *. Проблема в том, что я сломал цепь. Я забыл добавить "chain.doFilter(req, res)" в конец моего метода "doFilter". Из-за этого запрос никогда не пересылался в JSP, и поэтому в браузер ничего не возвращалось, включая любой тип MIME, и браузер затем пытался сохранить содержимое нулевой длины в моей файловой системе.
Я согласен с Даной Саней. Возможно, ваш веб-сервер или JBoss возвращает неправильный тип содержимого в ответах. Если у вас есть Wireshark, запустите wireshark на своем клиенте, а затем посмотрите HTTP-заголовки в ответе. Я ожидаю, что заголовок типа контента - это то, что ваш браузер не знает, как обрабатывать или отображать.
Я считаю, что браузер предлагает вам сохранить файл для типов контента, которые он не распознает. В этом случае ответ сервера, вероятно, содержит искаженный или неправильный тип содержимого.
Из остального вашего описания проблемы это звучит как общая проблема конфигурации сервера. Одна вещь, которую вы делаете, это проверяет, предоставлены ли какие-либо примеры проектов (или EAR) с сервером, и посмотрите, можете ли вы воспроизвести ту же проблему. Если вы видите такое же поведение, это указывает на конфигурацию, если нет, то, вероятно, вам не нравится ваше развертывание.
Если вы используете Firefox, установите LiveHTTPHeaders, посмотрите, что сервер возвращает браузеру, когда вы посещаете URL, которые доставляют вам проблемы. Если это странное значение типа содержимого или заголовок размещения содержимого, это проблема.
Эдди прав!
В противном случае это может быть вызвано ошибкой рендеринга, если нагрузка на сервер слишком высока.