Comments 20
Хотя нет, слишком уж навороченно получается если данные еще и на серверную часть передавать. Этот метод подойдет если в проекте уже ипользуется GWT.
0
Господи. GWT-то тут причем? Он тут ничем не поможет.
Автор, я так понял, решает проблему взаимодействия Standalone Java Application и HTML-страницы, открытой в браузере, встроенном в его приложение.
Честно говоря, за изложение материала хочется поставить двойку. Даже просто за заголовок. Абсолютно неинформативно.
Автор, я так понял, решает проблему взаимодействия Standalone Java Application и HTML-страницы, открытой в браузере, встроенном в его приложение.
Честно говоря, за изложение материала хочется поставить двойку. Даже просто за заголовок. Абсолютно неинформативно.
+1
23.3. Взаимодействие с JavaScriptсценариями из Java«JavaScript. Подробное руководство, 5-е издание — Флэнаган Д. 2008»
…
Любое взаимодействие Java с JavaScriptсценарием осуществляется через экземпляр класса netscape.javascript.JSObject.
Насколько я понимаю это оно? В книге есть примеры и полное описание объекта (также рассказано и взаимодействие в обратном направлении).
+1
Возможно по ссылкам выше уже описано такое решение: использовать в клиенте встроенный в JRE http-сервер (com.sun.net.httpserver.HttpServer).
Тогда можно будет очевидным образом взаимодействовать со страницы браузера с приложением.
Плюсы такого решения: всё достаточно «очевидно» в том смысле что нет черной магии JS с изменением статуса а потом чтением этого статуса и нет BrowserFunction. Если есть ForntEnd разработчик — он может ваять свои интерфейсы и взаимодействие привычным и понятным способом. Это становится особенно важным когда взаимодействие становится сложней чем просто передать содержимое поля.
Тогда можно будет очевидным образом взаимодействовать со страницы браузера с приложением.
Плюсы такого решения: всё достаточно «очевидно» в том смысле что нет черной магии JS с изменением статуса а потом чтением этого статуса и нет BrowserFunction. Если есть ForntEnd разработчик — он может ваять свои интерфейсы и взаимодействие привычным и понятным способом. Это становится особенно важным когда взаимодействие становится сложней чем просто передать содержимое поля.
0
Мне кажется для десктопного прилежения на SWt как раз более муторным будет устраивать взаимодействие через httpServer. Спрашивается зачем? KISS никто не отменял :)
0
KISS как раз будет со встроенным http-сервером)
Есть html страница в браузере. Её делают те кто в этом хорошо понимает и взаимодействуют привычным образом.
Использование стандартных вещей (status/title) нестандартным образом на KISS (который «никто не отменял») никак не тянет :)
Да что CustomFunction == KISS — тоже ниоткуда не следует
Есть html страница в браузере. Её делают те кто в этом хорошо понимает и взаимодействуют привычным образом.
Использование стандартных вещей (status/title) нестандартным образом на KISS (который «никто не отменял») никак не тянет :)
Да что CustomFunction == KISS — тоже ниоткуда не следует
0
При двух одновременно запущенных экземплярах программы редакторы одновременно работают?
0
Приложения Standalone. Поэтому запустив 2 экземпляра, в получаете 2 отдельных приложения, в каждом из которых запущен свой instance браузера. соответственно данные не являются общими, и callback функции выполняются отдельно в каждом браузере. Если даже одноврменно редактировать один и тот же файл в каждом из двух приложений (ну при условии отсутсвия лока на файл)
0
Извиняюсь, что так не скоро отвечаю :)
Просто у Java был наследный баг со встроенным браузером — на все приложения Java запускался единственный его экземпляр. В приницпе, казалось бы, ничего страшного — фактически один экземполяр, у которого открыты разные вкладки, но на практике вылазило множество побочных эффектов. По крайней мере под Windows было именно так. Потому и интересно насколько хорошо работают два запущенные приложения в данном случае.
Просто у Java был наследный баг со встроенным браузером — на все приложения Java запускался единственный его экземпляр. В приницпе, казалось бы, ничего страшного — фактически один экземполяр, у которого открыты разные вкладки, но на практике вылазило множество побочных эффектов. По крайней мере под Windows было именно так. Потому и интересно насколько хорошо работают два запущенные приложения в данном случае.
0
Я тоже красавец с ответом =)
Ммм… не уверен по поводу баги. У меня в моём приложении 4 виджета браузера. Запустил парочку инстансов, все диалоги с браузерами пооткрывал. Логика моего приложения работает без сбоев.
Кроме всего прочего, один и тот же диалог с браузером запущен был несколько раз. Всё нормально отработало, нигде ничего не было нарушено. (Это в контексте одной jvm)
А 2 приложения запускаются в разных jvm ещё помоему, так что инстансы браузера явно не могут перекрываться.
Ммм… не уверен по поводу баги. У меня в моём приложении 4 виджета браузера. Запустил парочку инстансов, все диалоги с браузерами пооткрывал. Логика моего приложения работает без сбоев.
Кроме всего прочего, один и тот же диалог с браузером запущен был несколько раз. Всё нормально отработало, нигде ничего не было нарушено. (Это в контексте одной jvm)
А 2 приложения запускаются в разных jvm ещё помоему, так что инстансы браузера явно не могут перекрываться.
0
Большое спасибо. А то, я как два года назад на эти грабли напоролся, так с тех пор и боюсь браузеры для пользовательского интерфейса в Java использовать.
0
Могу развить вам новую параною =)
Вот столкнулся недельку назад. Ситуация какая. Есть BrowserFunction. Я ей передаю в аргументы htm из jquery. Так вот, если браузер подтянет не вебкит или дефолтный браузер, а мозиллу, то в java передастся голый текст без html. для Webkit браузера и ИЕ (на винде) всё отлично возвращается HTML. Для 5го фф вернётся хтмл без хтмл =) по сути результат выполнения $.text()... Побороть не смог, буду сажать своих пользователей на хром
Вот столкнулся недельку назад. Ситуация какая. Есть BrowserFunction. Я ей передаю в аргументы htm из jquery. Так вот, если браузер подтянет не вебкит или дефолтный браузер, а мозиллу, то в java передастся голый текст без html. для Webkit браузера и ИЕ (на винде) всё отлично возвращается HTML. Для 5го фф вернётся хтмл без хтмл =) по сути результат выполнения $.text()... Побороть не смог, буду сажать своих пользователей на хром
0
Sign up to leave a comment.
Получаем данные из Javascript через функции Java