(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Службы OSLC DXL для Rational DOORS

Источник: ibm

Служб DXL OSLC позволяют запускать сценарии DXL IBM® Rational DOORS с помощью протоколов HTTP и HTTPS.
 
Прим.: Пример содержит действия по установке файла DXL в качестве службы с помощью утилиты Службы DXL OSLC. Эта утилита доступна в Rational DOORS версии 9.6.1.3 и выше. Для установки файла DXL без помощи этой утилиты обратитесь к документации по предыдущему выпуску.

Rational использует технологию на основе Open Services for Lifecycle Collaboration (OSLC) для повышения эффективности интеграции с инструментами Rational и других компаний. Поиск служб OSLC является расширяемым. Таким образом, разработчики Rational и разработчики других фирм могут добавлять службы, которых на данный момент нет в реализованном стандарте или которые не могут быть включены в текущую или будущую версии по причине их специализированности.

В Rational DOORS реализация спецификации OSLC Requirements Management (RM) версии 2 содержит API, который можно использовать для запуска сценариев DXL Rational DOORS с помощью протоколов HTTP и HTTPS. Этот API расширяет возможности интеграций обеспечивая безопасный доступ к данным Rational DOORS и управление ими. Он основан на концепции библиотеки сценариев DXL. Администраторы могут добавлять, изменять и удалять сценарии DXL с помощью пользовательского интерфейса Службы DXL OSLC.

Ниже приведено описание процесса применения службы DXL OSLC:
  1. Найдите сценарий DXL OSLC.
  2. Вызовите сценарий, чтобы упаковать обязательные параметры, в вызове OSLC. Если вы отправляете запрос GET на получение URI службы DXL, то ответ содержит справочную информацию о сценарии, которую предоставил автор. Если передается запрос PUT с необязательными параметрами на получение URI службы DXL, то вызывается служба.
  3. Сценарий выполняется на сервере взаимодействия.
  4. Результаты возвращаются.

Сценарии управляются и настраиваются администратором Rational DOORS, который определяет, какие сценарии DXL будут доступны через интерфейс служб. Администратор может запретить вызов определенных функций, которые могут представлять риск для безопасности, например "runDXL". Отдельные DXL, например виджеты пользовательского интерфейса, не поддерживаются.

Поскольку обнаружение служб защищено протоколом OAuth, для работы со службой DXL OSLC необходимо пройти идентификацию, указав имя пользователя и пароль.

Стандартные действия для применения службы DXL OSLC:
  1. Создайте сценарий DXL.
  2. Установите сценарий DXL как службу.
  3. Найдите службу в каталоге служб.
  4. Вызовите службу.
  5. Получите из ответа возвращаемое значение.

Пример

  1. Создайте файл DXL с именем helloWorld.inc, содержащий следующий исходный код:void getHelloString(string language) { string hello = null if ("French" == language) { hello = "Bonjour le monde" } else if ("Finnish" == language) { hello = "Hei maailma" } else if ("Latin" == language) { hello = "Ave mundi" } else { hello = "Hello world" } setDxlServiceResult hello print hello "\n" }
  2. Скопируйте файл helloWorld.inc в каталог /addins/services. Расположение каталога по умолчанию: C:\Program Files\IBM\Rational\DOORS\9.версия\lib\dxl\addins\services.
  3. Откройте клиент Rational DOORS и войдите в систему от имени администратора.
  4. Для установки DXL выберите Файл > OSLC > Службы DXL .
  5. В окне Службы DXL OSLC нажмите кнопку Добавить.
  6. В окне Добавить службу DXL OSLC введите следующие значения:
    • Имя: helloWorld
    • Описание: Hello world in several languages
    • DXL: #include <addins/services/helloWorld.inc>
    • Имя функции: getHelloString
    Создается служба с именем helloWorld.OSLCDXLService os = null string err = null string dxlCode = "#include <addins/services/helloWorld.inc>\n" err = addOrUpdateOSLCDXLService("helloWorld", "Hello world in several languages", dxlCode, "getHelloString") if (!null err) { print err } else { print "Installed Service\n" }
  7. Вызовите службу. URI аналогичен следующему примеру: http://servername:portnumber/dwa/rm/dxl/helloWorld
  8. В заголовках accept и content-type укажите следующую запись: application/rdf+xml
  9. Содержимое запроса должно выглядеть следующим образом:<?xml version="1.0" encoding="UTF-8"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:doors="http://jazz.net/doors/xmlns/prod/jazz/doors/2.0/"> <doors:Arguments> <doors:arguments>English</doors:arguments> </doors:Arguments> </rdf:RDF>
  10. Для передачи аргументов службе применяется элемент <doors:arguments>. Введите строку, описывающую обязательные аргументы, в тексте элемента. Служба DXL преобразует строку в аргументы, необходимые для работы служб DXL. В предыдущем примере показан один параметр English, который передается функции getHelloString. Если функция DXL ожидает два параметра, то запрос выглядит следующим образом: <doors:Arguments> <doors:arguments>English,French</doors:arguments> </doors:Arguments>Принимающая служба DXL разбивает разделенный запятыми список в отдельные строки: English и French.
  11. Нестроковые аргументы необходимо преобразовать в соответствующие типы с помощью DXL. Например, если аргумент является целым числом, то с помощью операции intOf можно преобразовать строку, извлеченную из разделенного запятыми списка в целое число. Затем значение можно передать методу.
    Содержимое ответа:<?xml version="1.0" encoding="UTF-8"?> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:doors="http://jazz.net/doors/xmlns/prod/jazz/doors/2.0/"> <doors:DxlServiceResult rdf:about="http://my-desktop:8080/dwa/rm/dxl/helloWorld> <doors:result>Hello world</doors:result> </doors:DxlServiceResult> </rdf:RDF>

Служба не выполняет маршализацию. Укажите аргументы в одной строке. Сценарий DXL анализирует и извлекает значения из строки перед их преобразованием в требуемые отдельные параметры.

Примеры файлов включены в установку Rational DOORS. Пример файла hierarchy.dxl показывает, как можно использовать службу OSLC DXL для получения информации о иерархии модулей.


 Распечатать »
 Правила публикации »
  Обсудить материал в конференции IBM Rational/Telelogic - системный инжиниринг, управление требованиями, изменениями, жизненным циклом ИС, умное управление проектами »
Написать редактору 
 Рекомендовать » Дата публикации: 13.07.2016 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
IBM Domino Utility Server Processor Value Unit (PVU) License + SW Subscription & Support 12 Months
IBM RATIONAL Rose Enterprise Floating User License + Sw Subscription & Support 12 Months
Rational ClearCase Multisite Floating User License
Rational ClearQuest Floating User License
IBM Rational Method Composer Authorized User License
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Компьютерные книги. Рецензии и отзывы
Adobe Photoshop: алхимия дизайна
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Разработка программ базы данных (44)
Написание прикладных компьютерных программ (базы данных) на заказ. Разработка корпоративных...
 
Парная нелинейная регрессия по параметрам (1)
Модуль «Парная нелинейная регрессия по параметрам». Вход: двумерный массив чисел; одномерный...
 
Вакансия: Java-программист уровня middle-senior на удаленку (1)
Всем добрый день! Я рекрутер компании GameShells, которая занимается разработкой мобильных...
 
Написание программ на заказ для компьютеров и контроллеров (2)
Программист (удаленный работник) оказывает (принимает заявки на разработку и написание программ...
 
Помощь по MS Access (332)
Доброе время суток. Случайно оказался на этом сайте, искал статьи по OLAP. Вижу, что...
 
 
 



    
rambler's top100 Rambler's Top100