#java #xml #servlets #glassfish
#java #xml #сервлеты #glassfish
Вопрос:
У меня есть сервлет, который выводит XML. Я попробовал несколько способов вывода, убедившись, что я постоянно очищаю PrintWriter.
Он работает примерно до 49500 символов. При таком ограничении выданный результат равен нулю.
Развертывание кода на Tomcat работает отлично (без проблем с ограничением).
Есть ли где-нибудь настройка на GlassFish? Я изменил Xmx для конфигурации сервера с 512M на 1024M в качестве теста, но это, похоже, не имело никакого значения.
Любое руководство с благодарностью принимается.
Твое здоровье, Грег
Комментарии:
1. Вы получаете сообщение об ошибке в журнале сервера?
2. @Preston К сожалению, ничего. Также проверил метод PrintWriter.hasError() и его возврат false . Только что был небольшой прорыв с удалением фильтра GZipper — дальнейшее тестирование, пока мы говорим.
3. Немного потраченный впустую день на охоту за этим. Оказалось, что между сервлетом и вызывающим абонентом находится фильтр GZipper. Удаление фильтра GZipper приводит к правильному отображению XML-файла. Думаю, завтра будут еще расследования.
4. Рад, что ты на верном пути. Опубликуйте ответ, когда поймете это.
Ответ №1:
ОК. У меня не было времени на полное расследование, но я надеюсь, что у меня будет немного времени в выходные, чтобы хорошенько поиграть.
Похоже, у нас возникла проблема с настройкой GZipper на Glassfish и фрагментированным ответом на данные. После удаления этих настроек с сервера все, казалось, работало нормально.
Эта дискуссия на форуме, похоже, соответствует тому, что мы видели. Необходимо отметить, что видел эту Glassfish 3.1.1.
http://www.java.net/forum/topic/glassfish/glassfish/empty-response-gzip