2012-06-20 3 views
0

У меня есть Java-чат-приложение, использующее комету с использованием Grizzly Comet, которая работает в Chrome, но не в Firefox (последние версии обоих). Он использует метод потоковой передачи HTTP, посылая фрагменты Javascript до скрытого iframe («вечный кадр»), который будет выполнен. В Firefox сообщения из чата не отображаются на начальном этапе, пока пользователь Chrome не отправил несколько сообщений, а затем он оживает и работает.HTTP Streaming с использованием Grizzly Comet в Glassfish не работает в Firefox

Прокси-сервер не используется, поэтому это не проблема с прокси-сервером.

В чем может быть проблема?

ответ

1

Убедитесь, что у вас есть как этих строк, когда вы addCometHandler:

 response.setContentType("text/html"); 
     // Needed to fill buffer on some browsers 
     response.getWriter().write(padding); 

padding в этом случае представляет собой массив символов, и может быть что угодно, пока это не будет делать ничего, и достаточно долго для запуска буферизации во всех браузерах (1K должно быть достаточно). Я просто заполнил его пробелами.