Я создал пару плагинов Firefox именно с этим требованием.
Одной из стратегий является использование моста JavaScript-Java в Firefox, который разрешает использование Java RMI. Я нашел этот подход медленным и нестабильным, а многопоточность - болезненной.
Мое текущее решение - открыть сокет localhost
и использовать текстовый протокол для связи. Смотрите Руководство разработчика XULPlanet по сокетам , чтобы узнать, как открывать и читать / писать с сокетами в Firefox JavaScript, и есть руководство Sun по сокетам в Java .
Исходный код для одного из написанных мной плагинов (для Firefox и Eclipse) доступен под лицензией X11, известной как MIT: Источник Firedoclipse . В каталоге lib
находится компонент, называемый jsjr
, с несколькими классами Java и объектом JavaScript XPCOM, который реализует удаленный вызов метода между Java и JavaScript. Каталог test
содержит несколько модульных тестов. Этот удаленный вызов метода был бы излишним для отправки только одного вида сообщений в одном направлении, но вы могли бы найти код полезным.