Створення EJB-клієнтів з використанням Eclipse Rich Client Platform і Rational Application Developer V6

Введення


За останній кілька років популярність платформи Eclipse в якості інтегрованого середовища для написання IDE-засобів (interactive development environment – середовище інтерактивної розробки) значно зросла. З появою версії Eclipse 3.0 ця технологія була розширена для підтримки розробки "багатих" клієнтів, надаючи Java-розробникам можливість писати код "багатих" клієнтів, використовуючи відкриту платформу з властивим їй зовнішнім виглядом і поведінкою.


Платформа для розробки додатків для "багатих" клієнтів відома під назвою Eclipse Rich Client Platform (RCP). Чому увагу знову перемикається на програми для "багатих" клієнтів? Після декількох років роботи з n-рівневої архітектурою стало очевидним, що розробити програми, надають кінцевому користувачеві багаті можливості при роботі в браузері, не просто. Засновані на браузері програми часто намагалися імітувати певну зручність використання шляхом комбінування JavaScript з HTML. Однак стало ясно, що додатки з більш багатими можливостями краще створювати, використовуючи більш розвинену клієнтську технологічну платформу. По суті, Eclipse RCP надає розробникам можливість створювати гнучкі клієнтські додатки (далі – клієнти), які можуть брати участь в n-рівневої архітектурі. Eclipse RCP дозволяє розробляти програми "багатих" клієнтів наступного покоління і є основною для таких платформ клієнтів, як технологія IBM Workplace Client.


IBM Rational Application Developer V6 (раніше, IBM WebSphere Studio Application Developer) побудована на платформі Eclipse 3.0. Це дає J2EE-розробникам можливість створювати додатки для "багатих" клієнтів, які взаємодіють з J2EE-додатками. У даній статті ми будемо використовувати функціональні можливості Eclipse 3.0 в Rational Application Developer (тут і далі званому Application Developer) для створення Eclipse RCP-клієнтів, які викликають EJB-компоненти, розгорнуті в тестовому середовищі WebSphere Application Server всередині Application Developer.


Для створення Eclipse RCP-додатки, що викликає корпоративний компонент, який виконується всередині WebSphere Application Server V6, дотримуйтесь наступних вказівок:



Для подальшої роботи з цією вправою вам знадобляться:



Установка J2EE-додатки


Перш за все ми повинні встановити IBM Application Client for WebSphere Application Server, який входить до WebSphere Application Server V6 (якщо у вас немає клієнта, то ви можете змінити вашу конфігурацію, вказавши на сервер JDK в тестовій середовищі Application Developer, або в реальному установці WebSphere Application Server), а потім розгорнути додаток в працюючому WebSphere Application Server:



  1. J2EE-клієнт встановлюється за допомогою Installation wizard interface (інтерфейс майстра установки). Після запуску LaunchPad вашої WebSphere, виберіть IBM Client for IBM WebSphere Application Server.
  2. У міру проходження вказівкам майстра ми встановимо клієнта в каталог C:WebSphere6NDAppClient. Що знаходиться в завантаженому zip-файлі пакетний файл Windows (BAT) використовує саме цей class path; якщо ви виберете інший каталог, доведеться змінити BAT-файл для посилання на цей новий каталог. На малюнку 3 зображений третій екран майстра, в якому ви вибираєте каталог.

    Малюнок 1. Майстер установки


  3. Ми також вибрали типову установку і ввели localhost для Hostname, як показано на малюнку 2.

    Малюнок 2. Майстер установки

    Потім ми будемо використовувати Application Developer для розгортання EAR в WebSphere Application Server. Це зроблено просто для зручності створення та тестування модуля з цього ж робочого простору. Ви можете також розгорнути додаток в автономному примірнику WebSphere Application Server, налаштувавши Eclipse для взаємодії з ним.


  4. Відкрийте Application Developer, використовуючи меню Start, І перейдіть у робочий простір, наприклад C:RCPEJBClientworkspace, (Рисунок 3).

    Малюнок 3. Workspace Launcher


  5. Закрийте сторінку Welcome за замовчуванням (Малюнок 4).

    Малюнок 4. Сторінка Welcome Rational SDP


  6. Перейдіть в J2EE Perspective, якщо вона не завантажилася за замовчуванням.
  7. Знайдіть вид Servers в нижньому фреймі і натисніть правою кнопкою миші на WebSphere Application Server v6.0 (Малюнок 5). При цьому Application Developer перевірить, чи виконується примірник WebSphere Application Server за замовчуванням.

    Малюнок 5. Закладка Servers


  8. Сервер знову повинен перейти в стан "Stopped". Клацніть правою кнопкою миші на сервері і виберіть Start (Малюнок 6). (Для роботи сервера можна також перейти до каталогу <Application Developer_INSTALL_ROOT> / runtimes / profiles / default / bin і виконати команду startserver server1).

    Малюнок 6. Запуск сервера


  9. Після запуску сервера ви можете запустити консоль адміністратора, натиснувши правою кнопкою миші на сервері і вибравши команду Run administrative console (Або відкрити браузер і перейти за адресою http://localhost:9060/admin), Як показано на малюнку 7.

    Малюнок 7. Запуск консолі адміністратора


  10. Увійдіть з будь-яким призначеним для користувача id (Малюнок 8).

    Малюнок 8. Запуск консолі адміністратора


  11. Розгорніть розділ Applications і виберіть Install New Application (Малюнок 9).

    Малюнок 9. Установка нової програми


  12. Перегляньте C:RCPEJBClient, Виберіть TemperatureEAR.ear і потім натисніть Next (Рисунок 10). Додаток TemeratureEAR представляє собою простий метод, що перетворює температуру з шкали по Цельсію в шкалу за Фаренгейтом (хоча, можливо, не дуже точно).

    Малюнок 10. Установка нової програми


  13. На сторінці Bindings (рисунок 11) залиште значення за замовчуванням і натисніть кнопку Next.

    Малюнок 11. Установка нової програми


  14. На наступній сторінці Step 1 процесу установки програми, виберіть Deploy enterprise beans (Розгорнути корпоративні компоненти), а потім Step 7 Summary (Рисунок 12).

    Малюнок 12. Установка нової програми


  15. У діалоговому вікні Step 7 натисніть кнопку Finish (Рисунок 13). Процес установки повинен зайняти хвилину чи дві (малюнок 14).

    Малюнок 13. Установка нової програми

    Малюнок 14. Повідомлення при установці нової програми


  16. Після завершення процесу встановлення, виберіть Save to Master Configuration (Рисунок 15).

    Малюнок 15. Save to Master Configuration


  17. У діалоговому вікні Save, натисніть кнопку Save (Рисунок 16).

    Малюнок 16. Save to Master Configuration


  18. Тепер ми запустимо програму. У меню Applications, Виберіть Enterprise Applications (Рисунок 17).

    Малюнок 17. Enterprise applications


  19. Виберіть TemperatureEAR і натисніть Start (Рисунок 18).

    Малюнок 18. Enterprise applications


  20. Відповідна піктограма у стовпці Status повинна показати, що додаток запустилося (рисунок 19).

    Малюнок 19. Enterprise applications


  21. Вийдіть з консолі адміністратора (рисунок 20).

    Малюнок 20. Вихід з консолі адміністратора


Створення RCP-клієнта


Тепер ми готові створити клієнтську програму RCP у вигляді простого модуля за допомогою майстра Plug-in. При створенні RCP програм ви зазвичай повинні створити кілька модулів з урахуванням можливості повторного використання. Наприклад, ви могли б переписати цей приклад і створити один модуль з вашими J2EE-залежностями, другий для компонента View, а третій для RCP Shell. Це дасть можливість повторно використовувати різні модулі, що підключаються, наприклад, код J2EE. Однак у цій вправі ми створимо тільки один модуль, в основному через обмеження розміру цієї статті.


Створення проекту plug-in



  1. Для створення проекту Plug-in в Application Developer виберіть пункт File => New => Other в J2EE Perspective (рисунок 21).

    Малюнок 21. Створення проекту plug-in


  2. У майстрі New Project перевірте, що зазначений прапорець Show All Wizards. Розгорніть Plug-in Development і виберіть Plug-in Project (Малюнок 22).

    Малюнок 22. Майстер New Project


  3. На цьому етапі може відобразитися запит на дозвіл модулів для їх розробки (малюнок 23). У цьому випадку натисніть кнопку OK.

    Малюнок 23. Підтвердження дозволу модулів


  4. У діалоговому вікні "Create a new plug-in project" (малюнок 24) дайте назву проекту: com.ibm.issw.temperature.form. Це звичайне угоду по найменуванню для додаткових модулів. Переконайтеся, що ви відзначили варіанти, показані на малюнку 24:

    • Ваш проект модуля буде також Java-проектом, оскільки ви будете додавати Java-код.
    • У Eclipse 3.0 у вас є можливість вибрати установку залежностей часу виконання з використанням файлу маніфесту, що ми й оберемо.
    Натисніть кнопку Next.

    Малюнок 24. Створення нового проекту модуля


  5. У наступному діалоговому вікні заповніть дані модуля так, як показано на малюнку 25, потім натисніть Next.

    Малюнок 25. Створення нового проекту модуля


  6. Для створення модуля ми будемо використовувати шаблон. Оскільки ми будемо створювати модуль з вікном перегляду, виберіть Plug-in with a view, Потім натисніть Next (Рисунок 26).

    Малюнок 26. Створення нового проекту модуля


  7. У наступному діалоговому вікні ми визначимо інформацію про клас View. Введіть точно таку ж інформацію, яка показана на малюнку 27, потім натисніть Next.

    Малюнок 27. Установка настройок перегляду


  8. Нарешті, в діалоговому вікні View Features (рисунок 28), зніміть позначки на всіх варіантах. (Ми будемо імпортувати свій власний клас перегляду.) Натисніть кнопку Finish.

    Малюнок 28. Установка настройок перегляду


  9. На запит про перемикання в перспективу Plug-in Development Perspective (рисунок 29) дайте відповідь Yes.

    Малюнок 29. Підтвердження перемикання перспективи


Імпорт J2EE JAR і JAR EJB-клієнта


Зараз ми імпортуємо два JAR в наш новий модуль:




  1. У Application Developer натисніть правою кнопкою миші на проекті модуля і виберіть пункт Import (Рисунок 30).

    Малюнок 30. Імпорт JAR


  2. Виберіть File System, Потім натисніть Next (рисунок 31).

    Малюнок 31. Імпорт JAR


  3. Є декілька місць, з яких можна отримати j2ee.jar. Оскільки RCP буде використовувати IBM Application Client for WebSphere Application Server під час виконання, краще всього використовувати цей JAR, який ви можете знайти в <WAS_CLIENT_INSTALL_ROOT>/lib, Як показано на малюнку 32. Переконайтеся, що вибраний тільки j2ee.jar. (Якщо ваш підключається використовує будь-які інші WebSphere API, наприклад розширення програмної моделі WebSphere, ви повинні імпортувати їх теж. Інакше, вам не потрібно імпортувати інші WebSphere JAR часу виконання; під час виконання згенерований код EJB-проксі і код контейнера клієнта завантажують класи з завантажувача класів (classloader) тонких клієнтів WebSphere.) Якщо у вас немає встановленого клієнтського програмного забезпечення, ви можете отримати j2ee.jar з каталогу <Application Developer_INSTALL_ROOT>/runtimes/base_v6/lib or <WAS_ROOT>/lib.

    Малюнок 32. Імпорт JAR


  4. Далі нам необхідно імпортувати JAR EJB-клієнта, який є спеціальним JAR-файлом з кодом, необхідним для виклику EJB з віддаленого місця. У нього входять інтерфейси EJB-клієнта і згенерований код RMI / IIOP. (Якби ви створювали ваше власне EJB-додаток, то могли б згенерувати клієнтський JAR в Application Developer, натиснувши правою кнопкою мишки на ваш EJB Project і вибравши Create EJB Client Jar) Для нашого прикладу JAR EJB-клієнта надається у файлі для завантаження. Імпортуйте JAR-файл за допомогою варіанту File System (як і раніше), перейдіть в каталог C:RCPEJBClient і виберіть TemperatureEJBClient.jar (Рисунок 33).

    Малюнок 33. Імпорт JAR


  5. Наш проект модуля повинен тепер мати два JAR-файлу, як показано на малюнку 34.

    Малюнок 34. Імпортовані JAR-файли


Висновок


У цій статті описується, як створити клієнтські EJB-додатки, використовуючи Eclipse Rich Client Platform (RCP). Платформа Eclipse містить багатий набір елементів управління (widget), вікон перегляду (view), робочих областей (framework) (таких як Eclipse Modeling Framework) та інших розширень, які можуть бути використані для створення потужних клієнтських додатків. Знання процесу інтегрування Eclipse RCP програм з WebSphere Application Server необхідно для створення інтегрованих клієнтських додатків.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*