410013796724260
• Webmoney
R335386147728
Z369087728698
Урок 8. Динамическое подключение модуляOSGi-фреймворк выполняет динамическое подключение бандлов, т.е. в режиме run-time после старта фреймворка. В предыдущих уроках бандлы, описанные в конфигурации, JaBricks инсталлировал во фреймворк и по определенной команде от панели инструментов, либо от главного меню стартовал. В данном уроке рассмотрим возможность старта бандла без включения его в конфигурацию JaBricks. Для демонстрации динамического подключения бандла в приложение JaBricks используем модуль monitor-jframe, интерфейс главной страницы которого представлен на следующем скриншоте. Прежде чем переходить к описанию данного модуля рассмотрим его функциональные возможности. Модуль monitor-jframe :
На заметку ![]()
Примечание : Описание интерфейсаИнтерфейс фрейма monitor-jframe включает панель инструментов для управления бандлами, таблицу для отображения списка бандлов и их состояний, консольную панель для отображения сообщений OSGi-фреймворка. Для динамического подключения к приложению модуля необходимо нажать левую кнопку панели инструментов и в диалоговом окне выбрать бандл, который будет сразу же инсталлирован во фреймворк и добавлен в таблицу. При инсталляции бандла в консоли будут представлены соответствующие сообщения. После этого бандл можно выделить в таблице и стартовать/остановить. Соответствующие сообщения фреймворка также будут отображены в консоли. Последняя кнопка, расположенная в левой части панели инструментов, позволяет деинсталлировать бандл. Представленные в уроках 4 и 5 бандлы (temp-jdialog.1.0.0.jar, temp-jdialoga.1.0.0.jar), открывающие при старте интерфейсные окна, можно использовать для динамического подключения к приложению. КонфигурацияКонфигурация приложения включает набор бандлов в поддиректории «configuration/bundles», которые регистрируются в файле «configuration/bundles.ini». В конфигурацию к базовому набору платформы дополнительно включены модули динамического изменения языка (form-locale) и «О программе» (form-about). Листинг configuration/bundles.inibundles=org.apache.felix.eventadmin-1.4.8.jar@start, \ org.apache.felix.log-1.0.1.jar@start, \ util-resources-1.0.0.jar@start, \ util-logger-1.0.0.jar@start, \ base-jframe-1.0.0.jar, \ base-jpanel-1.0.0.jar, \ base-jdialog-1.0.0.jar, \ gui-menu-1.0.0.jar, \ gui-toolbar-1.0.0.jar, \ gui-widgets-1.0.0.jar, \ form-about-1.0.0.jar, \ form-locale-1.0.0.jar, \ monitor-jframe-1.0.0.jar@main Листинг configuration/toolbar.xmlОписание панели инструментов предполагает расположение кнопок управления «внешними» бандлами слева. Обработка событий, связанных с нажатием кнопок, выполняется фреймом monitor-jframe. Справа в панели инструментов располагаются кнопки управления, две из которых имеют в описании связи с бандлами. <?xml version="1.0" encoding="UTF-8"?> <root name="root" rollover="true" borderpainted="true"> <toolbar> <item name="toolbar.install" type="button" image="configuration/resources/images/add.png" /> <item name="separator" width="2"/> <item name="toolbar.start" type="button" image="configuration/resources/images/start.png" /> <item name="toolbar.stop" type="button" image="configuration/resources/images/stop.png" /> <item name="toolbar.uninstall" type="button" image="configuration/resources/images/cross.png" /> </toolbar> <toolbar> <item name="toolbar.settings" type="button" image="configuration/resources/images/gear.png" groupId="org.jabricks.locale" artifactId="form-locale" version="1.0.0" /> <item name="toolbar.about" type="button" image="configuration/resources/images/question.png" groupId="org.jabricks.about" artifactId="form-about" version="1.0.0" /> <item name="toolbar.exit" type="button" image="configuration/resources/images/exit.png" /> </toolbar> </root> Связанные страницыСписок уроковПредыдующий, 7-й урок Следующий, 9-й урок Скачивание файловПосле выполнения предыдущих уроков Вы должны свободно ориентироваться в конфигурации приложения JaBricks. Для выполнения данного задания Вам необходимо только скачать необходимые бандлы, ресурсные файлы, файл описания панели инструментов и файл описания инсталлируемых бандлов. Перечисленные файлы собраны и упакованы в один архивный файл configuration.lesson08.zip (437 Кб). Скачайте и «разверните» архив configuration.lesson08.zip, перенесите файлы в структуру приложения, представленную на странице описания Платформы JaBricks. |