Когда JEditorPane не будет делать.JRex, JRex, почему ты JRex? - PullRequest
3 голосов
/ 31 августа 2011

IDEA: внедрить новейший веб-браузер в Java-приложение (для сохранения в автономном режиме, не на сервере).


Вопрос заключается в следующем: можно ли в java-приложении реализовать веб-браузер с поддержкой jquery / html / css в java-программе?


Поэтому я прошу любого, кто играл с JRex, за советом: я хочу знать, насколько сложно будет интегрировать браузер с открытым исходным кодом в java.Я не настолько заинтересован в идее компиляции Mozilla из исходной сборки.Есть ли готовая скомпилированная версия?

Существует ли упрощенный метод, позволяющий использовать последнюю скомпилированную версию (наиболее актуальную с точки зрения поддержки HTML css & javascript) и интегрировать ее в приложение?

Также: я ценю объем работы, необходимый для поддержки HTML4, 5 и совместимости с CSS2.Насколько близко к этому JRex?

Приложение: я намерен использовать веб-браузер для рендеринга веб-страницы из автономного контента.Это не обязательно должен быть онлайн-контент, а просто для отображения на основе файлов = например, file: /// C: ...

Должен ли веб-браузер быть включен в сервер для работы, например, дляпередать файлы в браузер для рендера, насколько сложно?Я не заинтересован в реализации Jetty или другого приложения типа сервера только для этого.


Если JRex не является решением ... что тогда?Можно ли запустить реализацию браузера в Java и может ли Java взаимодействовать с информацией и проходить через Dom?

Или, альтернативно, есть ли .hta эквивалент в современных браузерах, таких как Firefox?

Ответы [ 2 ]

2 голосов
/ 31 августа 2011

Если вам нужно, чтобы встроенный браузер взаимодействовал с кодом вашего приложения, вы можете попробовать SWT Браузерный элемент управления , который фактически поддерживается в отличие от JRex.Браузер использует либо WebKit, либо Gecko, либо встроенный IE, в зависимости от ситуации, либо позволяет вам выбрать, какой из них вам нужен, поэтому он должен запускать jQuery и знакомый Javascript.А поскольку SWT - это библиотека JNI, для начала у них, вероятно, уже есть руководство по развертыванию приложения, использующего JNI.

Вы можете передать HTML в элемент управления из строки ( пример ) или URL-адрес Java - который может указывать на локальные файлы или файлы ресурсов в вашем JAR-файле, который, как я полагаю, позволит вам разбить ваше приложение на разные файлы.Чтобы вызвать код Java, вам нужно представить его как функции Javascript. пример Чтобы манипулировать HTML из кода Java, вам нужно вызывать функции Javascript из Java. пример

Чтобы упростить выполнение двух предыдущих задач, вы можете обратиться к библиотеке JSON, чтобы упростить передачу сложных данных.

0 голосов
/ 31 августа 2011

Должно ли это быть реализовано в программе Java?Не могли бы вы позволить пользователю использовать браузер по умолчанию на своем компьютере (т.е. имеет ли значение, какой браузер)?

Если нет, используйте Java Desktop API .

 if (desktop.isSupported(Desktop.Action.BROWSE)) {
            txtBrowserURI.setEnabled(true);
            btnLaunchBrowser.setEnabled(true);
        }

Если вы используете Java 1.5, попробуйте http://javadesktop.org/articles/jdic/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...