Опубликован: 14.08.2008 | Уровень: специалист | Доступ: платный | ВУЗ: Компания IBM
Лекция 6:

Моделирование. Архитектура решения

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >
Включение интерфейса в UML-модель

Визуализируйте службу [мы ищем интерфейс PreferredAssessor, который в WSDL соответствует типу порта (PortType) PreferredAssessor].

  1. Вернитесь к перспективе Modeling (Моделирование).
  2. Откройте пакет itso.lgi.assessormgmt в java-проекте WebServiceProjectClient.
  3. Щелкните правой кнопкой мыши по файлу PreferredAssessor.java, выберите пункт меню Visualize (Визуализация) \to Explore in Browse diagram (Изучить в обзорной cхеме).

Мы должны увидеть картину, похожую на рис. 6.10.

Удаленный EJB-интерфейс Preferred Assessor

Рис. 6.10. Удаленный EJB-интерфейс Preferred Assessor
В: UML в WSDL

Подход В начинается с UML-интерфейса, по которому создается WSDL-файл ( рис. 6.11). Чтобы продемонстрировать работу данного подхода, мы используем простой пример службы, которая умножает два числа.

UML в WSDL

Рис. 6.11. UML в WSDL
Создание UML-интерфейса

Чтобы создать интерфейс, выполните следующие шаги:

  1. Создайте UML-проект.

    В Rational Software Architect выберите пункт меню File (Файл) > New (Новый) > Other (Другое) > UML Project (UML-проект). Присвойте проекту имя Sums и нажмите Next (Далее). Оставьте выбранные по умолчанию параметры (Blank Model, пустая модель), но измените заданную по умолчанию схему на Class Diagram (Схема классов). Нажмите Next (Далее). Не выбирайте никаких проектов и нажмите Finish (Готово).

  2. Создайте UML-интерфейс:
    • Перетащите с правой палитры элемент Interface (Интерфейс) на канву, нажмите на имя Interface1 и измените его на Sums.
    • Щелкните правой кнопкой мыши по элементу Sums и выберите пункт меню Add UML (Добавить UML) \to Operation (Операция). Переименуйте операцию в Multiply.
    • Откройте интерфейс Sums в Model Explorer и щелкните правой кнопкой мыши по элементу Multiply(). Выберите пункт меню Add UML (Добавить UML) \to Parameter (Параметр). Назовите параметр m1.
    • Повторите операцию, чтобы добавить параметр m2 и элемент Return result с именем result.
    • Укажите тип параметров и результата:
      • Выберите параметр в Model Explorer, откройте закладку Advanced (Дополнительно) в редакторе свойств и найдите свойство Type (Тип), которое будет пустым.
      • Щелкните мышью по второму столбцу свойства Type (Тип) и укажите тип Integer.
      • Повторите эту процедуру для параметров m2 и result.
Интерфейс Sums

Рис. 6.12. Интерфейс Sums
Создание Java-интерфейса

Создайте трансформацию UML в Java ( рис. 6.13), выполнив следующие шаги:

  1. В главном меню выберите пункт Modeling (Моделирование) \to Transform (Трансформация) \to Configure Transformations (Конфигурация трансформаций). Выберите пункт UML to Java (UML в Java) \to New (Новая). Назовите трансформацию SumsTransform.
  2. Около поля Source: нажмите ... , выберите пункт Sums Interface (Интерфейс Sums). В области Target (Цель) диалогового окна выберите Create New Target Container (Создать новый целевой контейнер).
  3. В диалоговом окне Java Project введите в поле Project name: SumsJava, нажмите Next (Далее), нажмите SumsJava на закладке Order and Export (Порядок и экспорт) и нажмите Finish (Готово).
  4. На панели Configure and Run Transformations (Конфигурирование и запуск трансформаций) убедитесь, что панели Target UML element (Целевой UML-элемент) указан элемент SumsJava, и нажмите Apply (Применить) ( рис. 6.13).
  5. Трансформацию можно запустить прямо из редактора конфигурации или из главного меню ( рис. 6.14).
Конфигурация трансформации UML в EJB

Рис. 6.13. Конфигурация трансформации UML в EJB
Запуск SumsTransform из главного меню

Рис. 6.14. Запуск SumsTransform из главного меню

При этом в заданном по умолчанию пакете проекта SumsJava создается файл Sums. java. Откройте схему по умолчанию проекта Sums и перетащите на нее файл Sums. java. Вы можете увидеть новый интерфейс Sums, стереотипированный к <<Java Interface>> ( рис. 6.15).

Java-интерфейс Sums

Рис. 6.15. Java-интерфейс Sums
Создание соответствий WSDL

Чтобы создать соответствие, выполните следующие шаги:

  1. Создайте Web-проект:
    • Выберите пункт меню File (Файл) \to New (Новый) \to Project (Проект) \to Dynamic Web Project (Динамический Web-проект). Назовите проект SumsWebProject, нажмите Next (Далее), снимите все опции, нажмите Next (Далее), затем Finish (Готово).
    • Щелкните правой кнопкой мыши по пункту JavaSource в проекте SumsWebProject, выберите пункт меню New (Новый) \to Package (Пакет) и назовите пакет mathematics.
    • Щелкните мышью при нажатой клавише Ctrl по файлу Sums.java в папке SumsJava и перетащите его в папку JavaSource. Нажмите OK, чтобы элементы были перестроены.
  2. Создайте Web-службу Java:
    • Выберите файл Sums.java в пакете mathematics. Выберите пункт New (Новый) \to Other (Другое) \to Web service (Web-служба) \to Next (Далее) \to Java Bean Web service (Web-служба Java Bean) (примите остальные параметры как есть). Нажмите Next (Далее).
    • В поле Bean (Компонент) должен быть указан компонент mathematics.Sums ( рис. 6.16). Нажмите Next (Далее). Если это не так, нажмите Browse files (Обзор файлов) и выберите проект Sums.java в папке SumsWebProject. Нажмите Next (Далее).
      Java-интерфейс Sums

      Рис. 6.16. Java-интерфейс Sums
    • На следующей панели укажите проект службы SumsWebProject и EA-проект SumsWebProjectEAR. Нажмите Next (Далее). Оставьте без изменений опции интерфейса конечной точки и опции Web-службы ( рис. 6.17). Нажмите Next (Далее), затем Finish (Готово).
      Опции Web-службы

      Рис. 6.17. Опции Web-службы
  3. Просмотрите получившийся WSDL-файл, который можно найти через Project Explorer в перспективе Web. Выберите пункт Dynamic Web Projects (Динамические Web-проекты) \to SumsWebProject \to WebContent (Web-содержимое) \to wsdl \to mathematics \to sums.wsdl. ( рис. 6.18).
    Web-служба Sums

    увеличить изображение
    Рис. 6.18. Web-служба Sums

Теперь, когда у нас есть WSDL-определение операции, мы можем сгенерировать EJB, используя процедуру А.

D: EJB в UML и WSDL

Для демонстрации мы импортируем один из .ear-файлов, приведенных в табл. 6.2, и генерируем WSDL-определение интерфейса.

  1. Импортируйте файл .\SG24-6636\WAS\Flow2\Flow2_AssessorManagementService_SOURCE.ear в новый EAR-проект:
    • Выберите папку ITSOLGI Web services, щелкните правой кнопкой мыши по пункту Import (Импорт) и выберите пункт меню EAR file (EAR-файл), после чего нажмите Next (Далее).
    • Выберите файл Flow2_AssessorManagementService_SOURCE.ear, укажите сущес- твующий проект ITSOLGI Web services (созданный в примере А в разделе "Гене- рация каркаса EJB для Web-службы"), отключите опцию Import Project (Импортировать проект). Выберите опцию Overwrite existing resources without warning (Перезаписывать имеющиеся ресурсы без предупреждения), нажмите Next (Далее), затем снова Next (Далее), включите опцию Allow nested projects overwrites (Разрешать перезапись вложенных проектов).
    • Убедитесь, что выбраны оба файла AssessorManagementServiceEJB.jar и AssessorManagementServiceEJBRouter. jar. Нажмите Finish (Готово).
  2. Изучите в WSDL-файле службу AssessorManagement Service:
    • выберите в Model Explorer пункт Web services (Web-службы) \to Services (Службы) \to AssessorManagementService ;
    • откройте файл WSDL:AssessorManagementServiceEJB/ejbModule/METAINF/wsdl/AssessorManagement.wsdl ( рис. 6.19и рис. 6.20).
    AssessorManagement.wsdl – часть 1

    увеличить изображение
    Рис. 6.19. AssessorManagement.wsdl – часть 1
    AssessorManagement.wsdl – часть 2

    увеличить изображение
    Рис. 6.20. AssessorManagement.wsdl – часть 2
  3. Чтобы использовать EJB-интерфейсы в UML, перетащите удаленный интерфейс EJB на любую UML-схему, с которой вы работаете. В следующем разделе иллюстрируется включение интерфейсов для ExternalClaimsAsessor, созданных по WSDL-определениям, в UML-схему компонентов и UML-схему последовательностей.
< Лекция 5 || Лекция 6: 123456 || Лекция 7 >
Илья Макаренко
Илья Макаренко

Добрый день.

Вопрос №1

Какова стоимость получения диплома о мини-МБА по данному курсу? Или ориентироваться на указанную на сайте?

Вопрос №2

Возможно ли начать обучение без потери результатов, не отправив документы на зачисление, а отправку выполнить позже?

Александр Медов
Александр Медов

Здравствуйте, какова полная сумма предоставленной услуги с печатью документа и отправкой по почте?

Игорь Васильев
Игорь Васильев
Россия, СПб
Андрей Рязанов
Андрей Рязанов
Россия, Москва, Московский Энергетический Институт (Технический Университет), 2004