Изучение доступной документации и за последние несколько дней это то, что появилось:
Браузерами с открытым исходным кодом являются Webkit (который используется, например, для Safari), и Firefox со вкусом Mozilla.Существует также Chromium - это версия Chrome с открытым исходным кодом, в которой используется Google Chrome, которая использует меньший механизм javascript (белка в отличие от v8) и не имеет модульной многопотоковой обработки в Google Chrome.
Дополнительноинформация о Firefox: Mozilla Firefox основан на приложении под названием xulrunner, которое использует xml и javascript для обеспечения дополнительной функциональности firefox (кроме «не очень простого» браузера - таких как парсер html, рендеринг css и парсер javascript).Xulrunner - это реализация браузера.
Firefox реализует свой собственный частный xulrunner, однако дополнительно существует xulrunner в качестве отдельной установки.
Xulrunner можно использовать для создания автономных приложений, основанных на веб-браузере и поддерживающих javascript.Xulrunner также используется для создания плагинов для Firefox, предоставляющих дополнительные функциональные возможности.
Для того, чтобы подключить интерфейс к чему-то более устойчивому и мощному, чем javascript (который в последние годы улучшился как на дрожжах),но все еще не самый сильный устойчивый движок, есть C-библиотека под названием xpcom.
Xulrunner использует xpcom (написанный на C), чтобы выставлять переменные javascript и анализировать dom, связывать переменные javascript и делать другиетакие вещи, как чтение заголовков и т. д. Подробнее о Xulrunner и xpcom.
Если вам нужен новейший и функциональный браузер (html 4 или 5, хорошая поддержка по крайней мере для css2 и немного css3 и надежный рендеринг javascript), то лучше всего делать ставку, кроме компиляции и встраивания одного изэти браузеры с открытым исходным кодом использовать SWT.
SWT - это графический интерфейс, похожий на Swing, за исключением того, что он реализует интерфейс типа веб-браузера и может использоваться для реализации браузера.SWT также имеет некоторые разработанные интерфейсы для взаимодействия как с DOM, так и с другими.SWT был разработан IBM и активно поддерживается.
Что SWT делает, так это реализует системный браузер ОС и поддерживает все основные операционные системы.С другой стороны, это означает, что нет необходимости встраивать свой собственный браузер, с другой стороны, вы застряли с тем, какой браузер / парсер существует в операционных системах, независимо от версии.Поведение по умолчанию в ОС Windows для SWT - это использование Internet Explorer.
Также возможно реализовать браузеры, не связанные с ОС, такие как Firefox, установив xulrunner, но это дополнительные 20 МБ (не так уж много, но что-топримечание), так как более поздние версии Firefox не распознаются.
Требуется поддержка javaxpcom и xulrunner для реализации браузера стиля Firefox в SWT.Самый простой способ получить последнюю версию, поддерживаемую Firefox (xulrunner 1.9. ) для javaxpcom, - это загрузить приложение под названием Prism.Prism использует xulrunner в качестве своей базы для создания браузеров, которые являются автономными для определенных URL-адресов.Существует известный взломанный xulrunner 1.9. , у которого есть некоторые проблемы - см. Википедию для получения информации по этому вопросу, если вы хотите загрузить xulrunner 1.9. *, Скомпилированный уже из исходного кода.
Xulrunner разрабатывается параллельно с каждым.новая версия браузера Firefox.До версии 1.9. * (Firefox 3. *, если я не ошибаюсь), была дополнительная поддержка функции javaxpcom, которая была интерфейсом, написанным для связи функций библиотеки Xpcom c библиотеки с java.
Первоначальное объявление Firefox о том, как легко и просто было встроить и стилизовать ваш собственный стиль xulrunner, и что его было легко переносить на множество разных языков (поддержка C, изначально поддержка Java, Python и другие).), но очевидно, что есть некоторые накладные расходы на доступ и добавление библиотек.
Xulrunner позиционируется как потенциальное программное решение для конкуренции на том же игровом поле, что и java, но имеет те же ограничения, что и приложения javascript / html. В пределах этих параметров он функционирует.
Начиная с версии 2 xulrunner, поддержка javaxpcom ослабла, так как нет активного сопровождающего этого кода. Это решение с открытым исходным кодом, так что, вероятно, его заинтересовал кто-то, имеющий необходимые навыки. Xulrunner сейчас в версии 6 на момент написания этого ответа. Тем не менее, Xpcom по-прежнему сильна. Предположительно, в сообществе не было заинтересованности / активности среди других потенциальных проблем.
Так как javaxpcom, как сообщалось, сломался, и требует, чтобы кто-то поддерживал интерес к коду; эта работа должна исходить от кого-то, кто имеет полное представление о Xulrunners xpcom, или, по крайней мере, от кого-то, кто понимает изменения, внесенные в xpcom. Комментарии из того, что я прочитал, предполагают, что документация по xulrunner может быть не такой подробной, как могла бы быть, ни по javaxpcom, но я не в состоянии оценить эти комментарии.
Я надеялся, что базовая функциональность ядра могла бы быть просто сохранена, сохраняя тяжелую работу, связанную с недавними улучшениями браузера в функциональности, «встраиваемыми». Поправки Firefox привели к выходу расширений из строя в новых версиях, что не отставало от времени
Решение с открытым исходным кодом, в которое встроен веб-браузер и т. П., Называется webrenderer.com. Это поддерживается, но есть прикрепленный ценник, который не является незначительным.
Другой возможный путь для реализации веб-браузера в Java-приложении - это путь кроссплатформенной платформы разработки под названием Qt. QtJambi является лицензированным (ранее коммерческим) веб-браузером LPGL, который имеет обширную документацию и поддержку для реализации Java. Очевидно, что есть какая-то кривая обучения при использовании любой новой платформы. Причины перехода с рекламы на LPGL? Предположительно жизнеспособность и коммерческий спрос на браузеры, поддерживающие Java, снизились ....? Функция времени, в котором мы живем, не вызывает сомнений.
GWT - это решение Google для Java / Webbrowser. GWT позволяет разработчикам писать java-решения, а затем переносить и преобразовывать это решение в стабильный javascript, который можно обфусцировать. Однако GWT не подходит для разработки приложений настольного типа в том смысле, что для бэкэнда требуется «серверная» реализация. В этом смысле он наиболее подходит или похож на решение клиент / сервер в стиле PHP или ASP.
Хотя невозможно написать GWT в качестве настольного приложения, вероятно, вам придется реализовать Apache Derby или Jetty или аналогичный в качестве внутреннего сервера для выполнения всех операций по добавлению и отключению. Это не аккуратный, элегантный или специально разработанный для этого, но более безумные решения были опробованы. Были настольные приложения в стиле php.
По ряду политических и финансовых причин кажется, что поддержка переноса / встраивания Java-браузеров и браузеров с открытым исходным кодом не на подъеме, а тенденция, которая началась с отсутствия интереса со стороны Apple к поддержке Java-приложений. Имейте в виду, браузеры с открытым исходным кодом и, по-видимому, с достаточным количеством времени и энергии, javaxpcom и т. Д. Могут быть поддержаны, но кто собирается делать это бесплатно, я не знаю.
Java обещала реализацию браузера java, но она не была выпущена с Java 7 и требует, как и многих других вещей, большого объема работы. Возможно в 8? Даже там пока неясно, будет ли он готов к этому времени, я не могу понять, в настоящее время оно включено в план или нет, и, похоже, не является их наивысшим приоритетом.
SWT требует некоторых дополнительных библиотек и установки для работы на разных платформах.
Некоторые другие решения с открытым исходным кодом, которые, по крайней мере, частично работают, похоже, работают, но обслуживание, поддержка и текущий интерес к ним, кажется, смешаны ни с одним, включая JRex, MozSwing.Rhino - это движок javascript, летающая тарелка и рендер html4.