ZK Framework
Учебник по ZK Framework — инфраструктуре для построения AJAX-приложений.
Курсивное начертание=Введение=
Что такое ZK Framework
[править]ZK - это набор библиотек для разработки Web-приложений, отличающихся динамичным пользовательским интерфейсом. Основой ZK Framework являются два основополагающих понятия, таких как событие и компонента. Наличие этих двух базовых элементов позволяет осуществлять разработку web-ориентированных приложений практически таким же образом, как и обыкновенных desktop-приложений. А именно, задачей разработчика является создание и размещение на страницах приложения определенных элементов (компонентов) и имплементация обработчиков событий, позволяющих реализовать требуемое поведение приложения.
ZK включает в себя функционирующую с использованием технологии AJAX среду выполнения приложения, набор реализации стандартных компонентов (таких, как, например, окно, выпадающий список и т.п.) и язык разметки пользовательского интерфейса, называемый ZUML (ZK User Interface Markup Language).
С помощью ZK вы можете быстро набросать каркас вашего приложения с помощью ZUML в виде определенных компонент, размещенных на страницах, и манипулировать ими с помощью обработчиков событий точно также, как многие годы делали это в обычных desktop-приложениях. Аналогии с desktop-приложениями не ограничиваются разработкой. Пользователи ваших приложений получат похожую интерактивность и дружественность пользовательского интерфейса.
В отличие от многих подобных библиотек, реализация технологии AJAX спрятана от разработчика. Отображение содержимого компонент и передача событий от клиента к серверу производятся автоматически самой средой выполнения приложения ZK Framework.
ZUML подобно XHTML позволяет разработчику создавать пользовательский интерфейс, не используя программирования, как такового. С помощью различных пространств имён XML (XML namespaces) ZUML позволяет интегрировать на одной странице разные наборы тэгов. Самый простой пример - это использование XUL-тэгов (описывающих cтандартные и не очень компоненты библиотеки ZK) и обычного HTML.
Для того, чтобы ускорить процесс разработки, в ZUML можно использовать специальные EL-выражения и куски кода на script языке. В настоящее время реализована поддержка script для языков Java, JavaScript, Ruby и Groovy. В отличие от JavaScript, встроенного в HTML и выполняемого браузером, ZK выполняет все встроенные элементы (EL-выражения или куски script-кода) на сервере. Таким образом, достигается некий баланс между интерактивностью получаемого приложения, и его безопасностью за счет перенесения большей части функциональности с клиента на сервер.
Для кого этот учебник
[править]Данный учебник предназанчен как для начинающих web-разработчиков, так и опытных разработчиков, но не использовавших ранее подход AJAX, или использовавших другой инструментарий для разработки web-ориентированных AJAX приложений. Для усвоения материала, приведенного в данном учебнике необходимы базовые знания HTML, XML и Java.
Некоторые примечания
[править]При подготовке примеров в данном учебнике были использованы следующие версии программных продуктов:
- ZK Framework 3.0 RC
- Apache Tomcat 5.5
Ссылки и источники
[править]Ссылки
[править]Источники
[править]При подготовке данного учебника использовались следующие материалы:
Руководство по установке
[править]ZK состоит из нескольких библиотек (JAR файлов). Существует два способа их установки. Первый - встраивание непосредственно в ваше Web-приложение. Другими словами, вам необходимо просто скопировать библиотеки в каталог WEB-INF/lib вашего приложения. Преимущество данного способа - отсутствие необходимости конфигурировать Web-сервер.
Второй способ - инсталляция на Web-сервер или сервер приложений, на котором будет выполняться ваше приложение. В этом случае библиотеки необходимо скопировать в каталог сервера, содержащий общие библиотеки (на сервере Tomcat, например, это каталог shared/lib). Преимущество данного способа - отсутствие необходимости копировать библиотеки в каждый из выполняемых на сервере и использующих ZK проектов.
Способ 1. Встраивание в Web-приложение
[править]Скопировав библиотеки ZK в ваше Web-приложение, вы получите возможность развертывать его на любом Web-сервере без каких-либо дополнительных настроек.
Для того, чтобы установить ZK непосредственно в Web-приложение:
- Распакуйте zk-bin-3.0.0-RC.zip или zk-bin-3.0.0-RC.tar.gz
- Скопируйте файлы dist/lib/*.jar, dist/zkforge/*.jar, и dist/lib/ext/*.jar в каталог /WEB-INF/lib вашего web-приложения. Библиотеки в каталогах dist/zkforge и dist/lib/ext являются опциональными и могут быть скопированы только в случае необходимости (за подробностями обратитесь к описанию назначения этих библиотек).
Способ 2. Установка на Web-сервер
[править]-- index.zul --- <window apply="org.zkoss.zk.ui.BindComposer" viewModel="mvc.Controller" > <button label="click me" > </window>
Controller.java -------
package mvc ;
class Controller
{
@Listener("onclick=button") public void showmessage() { MessageBox.show("hello world....") ; }
}
Основы AJAX и ZK Framework
[править]Компоненты и их жизненный цикл
[править]AAA