Браузер просит сохранить JSP - PullRequest
1 голос
/ 14 марта 2009

Я раньше работал с JBoss и WebLogic, но на моей нынешней работе мы используем OC4J, который является первым для меня. Я думаю , что моя проблема может быть связана с этим. Я создаю EAR-файл, в котором есть один WAR-файл. JSP верхнего уровня, кажется, отображаются правильно, но когда я пытаюсь отобразить JSP в подкаталоге, таком как secure / index.do или secure / header.jsp, браузер спрашивает меня, хочу ли я сохранить файл. Если я сохраню его, это файл размером 0 байт. На самом деле, я просто попробовал secure / index.xyz, которого, как я знаю, не существует, и он сделал то же самое. Я знаю эти другие файлы / сервлеты существуют. Любые намеки на то, что может быть причиной этого?

Ответы [ 5 ]

1 голос
/ 14 марта 2009

Я согласен с Даной Саней. Возможно, ваш веб-сервер или JBoss возвращает неправильный тип содержимого в ответах. Если у вас есть Wireshark, запустите wireshark на своем клиенте и посмотрите HTTP-заголовки в ответе. Я ожидаю, что заголовок типа контента - это то, что ваш браузер не знает, как обрабатывать или отображать.

1 голос
/ 14 марта 2009

Я считаю, что браузер предложит вам сохранить файл для типов контента, которые он не распознает. В этом случае ответ сервера, вероятно, содержит искаженный или неправильный тип содержимого.

Из остальной части вашего описания проблемы это звучит как общая проблема конфигурации сервера. Одна вещь, которую вы делаете, это проверяет, предоставлены ли какие-либо примеры проектов (или EAR) с сервером, и посмотрите, можете ли вы воспроизвести ту же проблему. Если вы видите такое же поведение, это указывает на конфигурацию, если нет, то, вероятно, вам не нравится ваше развертывание.

0 голосов
/ 24 марта 2009

Нашел это. Вы, ребята, были по сути правы в вопросе типа контента, но в моем коде была основная ошибка, которая вызвала это. Я создал фильтр с именем SecureActionFilter, который вызывался всякий раз, когда существовал URL-адрес / secure / *. Проблема в том, что я сломал цепь. Я забыл добавить «chain.doFilter (req, res)» в конец моего метода «doFilter». Из-за этого запрос никогда не передавался в JSP, и поэтому в браузер ничего не возвращалось, включая любой тип MIME, и браузер затем пытался сохранить содержимое нулевой длины в моей файловой системе.

0 голосов
/ 14 марта 2009

Эдди прав!

В противном случае это может быть вызвано ошибкой рендеринга, если нагрузка на сервер слишком высока.

0 голосов
/ 14 марта 2009

Если вы используете Firefox, установите LiveHTTPHeaders, посмотрите, что сервер возвращает браузеру, когда вы посещаете URL, которые доставляют вам проблемы. Если это странное значение типа содержимого или имеется заголовок расположения содержимого, это проблема.

...