1. Вступ
1.1. Présentation
PDF цього документа — це |TYT|.
Приклади з цього документа доступні |TYT|.
Тут ми пропонуємо ознайомити вас, на прикладі
- фреймворк Java Server Faces 2 (JSF2),
- бібліотеку компонентів PrimeFaces для JSF2, призначену для настільних та мобільних додатків.
Цей документ призначений переважно для студентів та розробників, які цікавляться бібліотекою компонентів PrimeFaces [http://www.primefaces.org]. Цей фреймворк пропонує кілька десятків компонентів з підтримкою AJAX [http://www.primefaces.org/showcase/ui/home.jsf], що дозволяють створювати веб-додатки, зовнішній вигляд та поведінка яких аналогічні настільним додаткам. Primefaces базується на JSF2, тому спочатку необхідно ознайомитися з цим фреймворком. Крім того, Primefaces пропонує спеціальні компоненти для мобільних пристроїв. Ми також розглянемо їх.
Щоб проілюструвати наші міркування, ми створимо додаток для запису на прийом у різних середовищах:
- класичний веб-додаток із використанням технологій JSF2 / EJB3 / JPA на сервері Glassfish 3.1,
- той самий додаток з підтримкою AJAX, створений за допомогою технології PrimeFaces,
- і, нарешті, мобільну версію з використанням технології PrimeFaces Mobile.
Щоразу, коли версія буде побудована, ми перенесемо її в середовище JSF2 / Spring / JPA на сервері Tomcat 7. Отже, ми створимо шість Java-додатків EE.
У цьому документі викладено лише те, що необхідно для створення цих додатків. Тому не слід очікувати від нього вичерпності — її тут не знайдете. Це також не збірник найкращих практик. Досвідчені розробники можуть дійти висновку, що вони зробили б це інакше. Я лише сподіваюся, що цей документ також не є збірником поганих практик.
Для більш детального вивчення JSF2 та PrimeFaces можна скористатися наступними довідковими матеріалами:
- [ref1]: Посібник з Java EE5, [http://java.sun.com/javaee/5/docs/tutorial/doc/index.HTML] — довідник від Sun для ознайомлення з Java EE5. Прочитайте розділ II [Web Tier], щоб ознайомитися з веб-технологіями, зокрема з JSF. Приклади з посібника можна завантажити. Вони надаються у вигляді проектів NetBeans, які можна завантажити та запустити,
- [ref2]: «Core JavaServer Faces» Девіда Гірі та Кея С. Хорстмана, третє видання, видавництво Mc Graw-Hill,
- [ref3]: документація до PrimeFaces [http://primefaces.googlecode.com/files/primefaces_users_guide_3_2.pdf],
- [ref4]: документація до PrimeFaces Mobile: [http://primefaces.googlecode.com/files/primefaces_mobile_users_guide_0_9_2.pdf].
Іноді ми будемо посилатися на [ref2], щоб вказати читачеві, що за допомогою цієї книги він може глибше вивчити певну тему.
Цей документ написано таким чином, щоб його могли зрозуміти якомога більше людей. Для його розуміння необхідні такі попередні знання:
- знання мови Java,
- базові знання з розробки на Java EE.
На сайті [http://developpez.com] можна знайти всі необхідні ресурси для виконання цих вимог. Деякі з них можна знайти на сайті [http://tahe.developpez.com]:
- [ref5]: Вступ до веб-програмування на JAVA з використанням сервлетів та JSP-сторінок (2002): викладено основи веб-програмування на Java: сервлети та сторінки JSP,
- [ref6] : Основи веб-розробки за архітектурою MVC на Java на прикладах (2006): рекомендує розробку веб-додатків із трирівневою архітектурою, де веб-рівень реалізує шаблон проектування (Design Pattern) MVC (Модель, Вигляд, Контролер).
- [ref7]: Вступ до Java EE з використанням IDE NetBeans та сервера додатків GlassFish (2012). Цей документ дозволяє ознайомитися з JSF 1 та EJB3.
- [ref8]: Персистентність у Java 5 на практиці (2007). Цей документ дозволяє ознайомитися зі збереженням даних за допомогою JPA (Java Persistence API).
- [ref9]: Створення веб-сервісу Java EE за допомогою IDE NetBeans 6.5 та сервера Java EE GlassFish (2009). У цьому документі розглядається процес створення веб-сервісу. Приклад додатка, що розглядається в цьому документі, взято з [ref9].
1.2. Приклади з
Приклади з цього документа доступні за посиланнями URL та [https://stahe.github.io/jsf2-pf-pfm-juin-2012/jsf2-pf-pfm-juin-2012.zip] у вигляді проектів Maven як для NetBeans, так і для Eclipse:
![]() |
Щоб імпортувати проєкт у NetBeans:
![]() |
- у [1] відкрийте проект,
- у [2] вказуємо проект, який потрібно відкрити, у файловій системі,
- у [3] — проект відкривається.
У Eclipse,
![]() |
- у [1] імпортується проект,
- у [2] проект є існуючим проектом Maven,
![]() |
![]() |
- у [3]: його вказують у файловій системі,
- у [4]: Eclipse розпізнає його як проект Maven,
- у [5] — імпортований проєкт.
1.3. Використані інструменти
Далі ми використовуємо (травень 2012 року):
- IDE (Integrated Development Environment) NetBeans 7.1.2, доступний на URL [http://www.netbeans.org],
- Eclipse Indigo у налаштованій формі Tool Suite (STS),
- PrimeFaces у версії 3.2, доступній на URL [http://primefaces.org/],
- PrimeFaces Mobile у версії 0.9.2 доступний у URL [http://primefaces.org/],
- WampServer для SGBD, MySQL та [http://www.wampserver.com/].
1.3.1. Встановлення NetBeans IDE
Тут ми описуємо встановлення NetBeans 7.1.2, доступного за посиланням URL [http://netbeans.org/downloads/].
![]() |
З наведених вище версій можна вибрати версію Java EE із двома серверами: Glassfish 3.1.2 та Apache Tomcat 7.0.22. Перший дозволяє розробляти Java-додатки EE з використанням EJB3 (Enterprise Java Bean), а другий — Java-додатки EE без EJB. Тоді ми замінимо EJB на фреймворк Spring.
Після завантаження інсталятора NetBeans його потрібно запустити. Для цього необхідно мати JDK (Java Development Kit) та [http://www.oracle.com/technetwork/java/javase/overview/index.HTML]. Окрім NetBeans 7.1.2, ми встановимо:
- фреймворк JUnit для модульних тестів,
- сервер Glassfish 3.1.2,
- сервер Tomcat 7.0.22.
Після завершення встановлення запускаємо NetBeans:
![]() |
- у [1], NetBeans 7.1.2 з трьома вкладками:
- вкладка [Projects] відображає відкриті проекти NetBeans;
- вкладка [Files] відображає різні файли, що входять до складу відкритих проектів NetBeans;
- вкладка [Services] об’єднує певну кількість інструментів, що використовуються проектами NetBeans,
- у [2] активується вкладка [Services], а в [3] — гілка [Servers],
- у [4] запускаємо сервер Tomcat, щоб перевірити правильність його встановлення,
![]() |
- у [6], на вкладці [Apache Tomcat] [5] можна перевірити правильний запуск сервера,
- у [7] зупиняємо сервер Tomcat,
Аналогічним чином перевіряємо правильність встановлення сервера Glassfish 3.1.2:
![]() |
- у [8] запускаємо сервер Glassfish,
- у [9] перевіряємо, чи він запустився правильно,
![]() |
- у [10] — зупиняємо його.
Тепер у нас є робочий IDE. Ми можемо починати створювати проекти. Залежно від них нам доведеться детально розглянути різні характеристики IDE.
Тепер ми встановимо Eclipse IDE і зареєструємо в ньому два сервери — Tomcat 7 та Glassfish 3.1.2, які щойно завантажили. Для цього нам потрібно знати папки встановлення цих двох серверів. Цю інформацію можна знайти у властивостях цих двох серверів:
![]() |
- у [1] — папка інсталяції Tomcat 7,
![]() |
- та [2] — папка доменів сервера Glassfish. У записі Glassfish в Eclipse потрібно вказати лише таку інформацію: [D:\Programs\devjava\Glassfish\glassfish-3.1.2\glassfish].
1.3.2. Встановлення Eclipse
Хоча Eclipse не є IDE, що використовується в цьому документі, ми все ж опишемо його встановлення. Адже приклади з цього документа також надаються у вигляді проектів Maven для Eclipse. Eclipse не постачається з попередньо інтегрованим Maven. Для цього потрібно встановити плагін. Замість того, щоб встановлювати «чистий» Eclipse, ми встановимо SpringSource Tool Suite [http://www.springsource.com/developer/sts] — версію Eclipse, яка вже містить численні плагіни, пов’язані з фреймворком Spring, а також попередньо налаштовану конфігурацію Maven.
![]() |
- перейдіть на сайт SpringSource Tool Suite (STS) [1], щоб завантажити поточну версію STS [2A] [2B],
![]() |
![]() |
- завантажений файл є інсталятором, який створює структуру файлів [3A] [3B]. У [4] запускається виконуваний файл,
- у [5] — робоче вікно IDE після закриття вікна привітання. У [6] відображається вікно серверів додатків,
![]() |
- у [7] — вікно серверів. Один сервер вже зареєстровано. Це сервер VMware, який ми не використовуватимемо. У [8] викликаємо майстер додавання нового сервера,
![]() |
- у [9A] нам пропонуються різні сервери. Ми обираємо встановити сервер Tomcat 7 від Apache [9B],
![]() |
- в [10], ми вказуємо папку встановлення сервера Tomcat 7, встановленого разом із NetBeans. Якщо у вас немає сервера Tomcat, скористайтеся кнопкою [11],
- у [12], сервер Tomcat з’явиться у вікні [Servers],
![]() |
- у [13] ми запускаємо сервер,
- у [14] — він запущений,
- у [15] — його зупиняємо.
У вікні [Console], якщо все гаразд, ми отримуємо такі журнали Tomcat:
![]() |
- також у вікні [Servers] додаємо новий сервер [16],
- у [17] сервер Glassfish не пропонується,
- у цьому випадку використовується посилання [18],
![]() |
- у [19] вибираємо додати адаптер для сервера Glassfish,
- його завантажують, і, повернувшись у вікно [Servers], додають новий сервер,
- цього разу у вікні [21] пропонуються сервери Glassfish,
![]() |
- у вікні [22] вибираємо сервер Glassfish 3.1.2, завантажений разом із NetBeans,
- у [23] вказуємо папку встановлення Glassfish 3.1.2 (зверніть увагу на шлях, вказаний у [24]),
- якщо сервера Glassfish немає, скористайтеся кнопкою [25],
![]() |
- у [26] майстер запитує пароль адміністратора сервера Glassfish. Під час першого встановлення це зазвичай adminadmin,
- після завершення роботи майстра у вікні [Servers] з’являється сервер Glassfish [27],
![]() |
- у вікні [28] його запускають,
- у вікні [29] може виникнути проблема. Це залежить від інформації, вказаної під час інсталяції. Glassfish потребує JDK (Java Development Kit), а не JRE (Java Runtime Environment),
- щоб отримати доступ до властивостей сервера Glassfish, потрібно двічі клацнути на ньому у вікні [Servers],
- відкриється вікно [20], у якому слід перейти за посиланням [Runtime Environment],
![]() |
- у [31] замінимо JRE, що використовується за замовчуванням, на JDK. Для цього використовуємо посилання [32],
- у [33] — JRE, встановлені на комп’ютері,
- у [34] додається ще один,
![]() |
- на [35], вибираємо [Standard VM] (Virtual Machine),
- у [36] вибираємо JDK (>=1.6),
- у [37] — нову назву присвоюють JRE,
![]() |
- повернувшись до вибору JRE для Glassfish, ми обираємо новий JRE, оголошений як [38],
- після завершення роботи майстра налаштування ми перезапускаємо [Glassfish] [39],
- у [40] — він запускається,
![]() |
- у [41] — дерево сервера,
- в [42] здійснюється доступ до журналів Glassfish:
![]() |
- у [43] ми зупиняємо сервер Glassfish.
1.3.3. Встановлення [WampServer]
[WampServer] — це набір програмного забезпечення для розробки на PHP / MySQL / Apache на комп’ютері з ОС Windows. Ми будемо використовувати його виключно для SGBD та MySQL.
![]() |
- на сайті [WampServer] [1] виберіть відповідну версію [2],
- завантажений виконуваний файл є інсталятором. Під час інсталяції запитується різноманітна інформація. Вона не стосується MySQL. Тому її можна проігнорувати. Після завершення встановлення з’явиться вікно [3]. Запустіть [WampServer],
![]() |
- у [4], іконка [WampServer] встановлюється на панелі завдань у нижньому правому куті екрана [4],
- при натисканні на неї з’являється меню [5]. Воно дозволяє керувати сервером Apache та SGBD MySQL. Для управління ним використовується опція [PhpPmyAdmin],
- після чого з’являється вікно, показане нижче,

Ми не будемо детально зупинятися на використанні [PhpMyAdmin]. Ми просто покажемо, як використовувати його для створення бази даних для прикладу додатка в цьому посібнику.






























