![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Итак охарактеризую проблему.
Есть GWT приложение довольно большое с кучей логики. Приложение это не что иное как чат но с кучей своих заморочек. Соответсвенно есть 2 части клиент и сервер взаимодействуют они через RPC. Проблема в том что все работает нормально в Firefox/Opera/Chrome/Safari/IE но в злополучном IE7/8 возникает 1 баг если открыть окошко нашего чата 2 раза то на 2 запуске это окошко зависает при чем наш чат просто не загружается нету запросов по http и в профайлере для IE8 нету вызова не 1 функции из наших скриптов. Может кто сталкивался с зависанием? Убито уже кучу времени, а воз и ныне там... ![]() Сначала были предположения что может надо останавливать цикл запросов к серверу (с некоторой переодичностью сервер опрашивается на предмет новых собитий) но ведь запросов по http вроде нету (смотроел через HttpSpy). По логу сервера когда закрывается первый раз окошко пользователь вылогинивается и все происходит коректно при откритии окна 2 раз в логах ничего нету тоесть ничего никуда не отсылалось. ![]() Может быть надо както освобождать ресурсы? Поудалять листенеры я хз... ![]() Потратил кучу времени на поиски подобных проблем.... Ниче не нашел ![]() Версия GWT 1.5 Для отрысовки используется rocket версии 0.56 Возможности сменить версию GWT использовать что то другое вместо rocket нет... В будущем возможно но сейчас просто нету времени на это все... п.с. привести код приложения не выйдет во первых там куча строк, класов и т.д., во вторых это комерческий проект... надеюсь люди сталкивались с подобными проблемами и приведут свои примеры проблем и их решений... п.п.с. щас это одна из главных проблем перед продакшеном... :( Это сообщение отредактировал(а) iLoveJava - 5.1.2010, 20:18 |
|||
|
||||
mecid |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 30.7.2009 Где: Baku Репутация: нет Всего: нет |
есть 1 решение,обновите версию GWT уже 2.0
|
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Типа у нас машинка не едет если горка с уклоном 30% а ветер северный... решение поменять в машинке двигатель с 1.5 на 2.0 л пофиг на то что коробка, бензобак, карбюратор все расчитано на 1.5
![]() Если б можна было поменять за 2минуты то я б не постил сюда, а взял бы и поменял да даже если б за 1 день можна было... Это сообщение отредактировал(а) iLoveJava - 6.1.2010, 17:16 |
|||
|
||||
mecid |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 30.7.2009 Где: Baku Репутация: нет Всего: нет |
понимаете это может быть баг который исправили в новых версиях
|
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Да но суть в том что GWT ничто иное как JavaScript получается баг то не в GWT, а експлорер чето там не закрывает или чето ему не нравится суть в том что если исправили в GWT 2.0 то почему б не вышло исправить в моем придложение ведь я могу добавить нативную функцию или на крайняк так какойнить JavaScript всунуть хотя может быть даже вышло на самом GWT выполнить требуемые действия... Давайте даже проще... JavaScript может сделать ченить этакое что бы IE завис?
![]() п.с. чувствую надо в разделе по JavaScript спрашивать... |
|||
|
||||
andyhomes |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 14.7.2009 Репутация: 2 Всего: 2 |
Такое поведение возможно если в JS-скрипте возникает исключение. Не выдает ли браузер сообщений об ошибках? F5 или Ctrl + F5 не помогают? Не HTTPS ли вы используете? |
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
F5 или Ctrl + F5 - рефреш? не не помогло
Не просто HTTP Я тут с IE8 поекспиремнтировал, повидение почти тоже только иногда не со 2 ну, а с 3 раза открития чата подвисает не так стабильно конешно... В сего чуда есть профайлер, дык от он совсем не пролил свет, вообще не видно чтобы вызывались функции моего приложения, тоесть показывается что вызывались он клики и маус ховер для стандартной странички ну или функции той которая была открыта, а с моего чата ниче не вызывается... Эт ставит меня совсем в тупик ![]() ладно б вызвалась джвтешная какаянить a.b.c() ну и зависла это хоть бы сказало четко что чето в коде напортачил но такое поведение совсем не вселяет надежду ![]() А да я додумался оставить приложение на ночь дык IE8 сожрал 800мб+ памяти может там вечный цикл...? но разве небыл чегото типа "это приложение может замедлить работу... продолжить выполнение скрипта? да не". Это сообщение отредактировал(а) iLoveJava - 11.1.2010, 19:38 |
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Чем дальше в лес...
Вот onModuleLoad моего модуля
Думаю вы догадались оно не выскакивает... Теперь возникает вопрос ну допустим я ченить не закрыл или после закрытия странички там сделал вечный цикл... разве броузер не дольжен был все убить? ладно допустим он не убил и там все бегает выполняется... но как я откроываю новую закладку то причем тут то что было и чего небыло?... п.с. почему у меня чувство шо ие пофиксить проще? ![]() |
|||
|
||||
andyhomes |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 14.7.2009 Репутация: 2 Всего: 2 |
Похоже, что ваш сервер не отдает скрипт приложения. Что в логах HTTP-сервера после открытия второго окна?
Если используется идентификация сессии, то эксплорер может не передавать в новое окно идентификатор сессии из кукисов... Это сообщение отредактировал(а) andyhomes - 11.1.2010, 21:04 |
|||
|
||||
iLoveJava |
|
||||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
У анс Jetty (юзаем jetty continuation решили заюзать родной сервер... если он вообще родной ему
![]() Дык от сломалось с 3 раза лог
Куча картинок и прочей дряни но от это
как раз наше (some_params_here - там наши параметры они не повлияют на исход ![]() Идентификация сессии из-за специфики передается как параметр.... (скажем так сайт на другом сервере ну и тд и тп...), даже будь он нужен в куках я б увидел если б его небыло просто страничку там с логином и пасом тут же я ничего не вижу просто бесконечную загрузку.... Это сообщение отредактировал(а) iLoveJava - 12.1.2010, 11:18 |
||||
|
|||||
andyhomes |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 14.7.2009 Репутация: 2 Всего: 2 |
А вот эти запросы чьи:
? |
|||
|
||||
andyhomes |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 14.7.2009 Репутация: 2 Всего: 2 |
Еще, может быть, проблемы с кешированием.
Попробуйте явно задать заголовки, управляющие кешированием, а то у вас все кешируется... По крайней мере нужно чтобы Messenger.nocache.js всегда загружался с сервера. |
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Дцмаю запросы это RPC про ноукеш нуна попробывать... но разве из-за этого могло б подвисать
![]() я думал максимум какаянить старая версия б подгурзилась... |
|||
|
||||
iLoveJava |
|
||||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Все ручки не доходили...
Ну 1 ведь по логу авидно что ноукеш запрашивали постоянно; 2 чесно говоря я хз как сделать шоб он не кешировался... Пример с GWT 1.7.1
Ниче нигде про кеш не указывали. ![]() Вот как у нас
Разве этого не достаточно? ![]() Хотя эти браузеры я в них не верю уже... ![]() Это сообщение отредактировал(а) iLoveJava - 14.1.2010, 11:13 |
||||
|
|||||
andyhomes |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 14.7.2009 Репутация: 2 Всего: 2 |
Этим занимается контейнер сервлетов, устанавливая в ответе соответствующие HTTP-заголовки.
Вот есть пример: nocache.js getting cached in browser Кстати вот еще ссылочка, которая может вас заинтересовать: Popups in GWT and IE8 И посмотрите в сторону <meta http-equiv="X-UA-Compatible"... Это сообщение отредактировал(а) andyhomes - 14.1.2010, 12:55 |
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
![]() ![]() ![]() ![]() ![]() |
|||
|
||||
andyhomes |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 57 Регистрация: 14.7.2009 Репутация: 2 Всего: 2 |
Ну, не знаю чем вам еще помочь...
Исходники не хотите показывать, хоть доступ дайте к тестовой версии приложения. Может идеи какие появятся. А так, навряд ли... |
|||
|
||||
iLoveJava |
|
|||
Новичок Профиль Группа: Участник Сообщений: 49 Регистрация: 29.7.2007 Репутация: нет Всего: нет |
Я тут поекспериментировал и выяснилось...
У нас как страничка закрывается мы пытаемся послать событие лог аут через рпц но вызов то асинхронный гарантии что он успеет или не успеет нету... Вообщем в попытках сделать что бы он успел в процессе инвестигейшена ![]() Мы то не можем конешно оставить там алерт... но может стать причиной зависания асинхронный запрос который отправился а обработаться не успел? ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |