WikiDer > XML-интерфейс для сетевых служб

XML Interface for Network Services
XINS
Разработчики)Интернет Breedband B.V.
изначальный выпуск?
Стабильный выпуск3.1 (22 февраля 2013 г.; 7 лет назад (2013-02-22)) [±]
Предварительный выпуск3.0 beta 2 (9 июня 2012 г.; 8 лет назад (2012-06-09)) [±]
Написано в?
Операционная системаКроссплатформенность
Доступно в?
ТипВеб-сервисы
ЛицензияBSD
Интернет сайтxins.org

XML-интерфейс для сетевых служб (XINS) является Открытый исходный код технология для определения и реализации интернет-приложений, обеспечивающая ориентированный на спецификации подход.

Спецификационно-ориентированный подход

В основе XINS лежит подход, ориентированный на спецификации:

  • необходимо написать первые спецификации;
  • затем документация и код генерируются из этих спецификаций;
  • тогда можно начинать и тестирование, и реализацию.

Исходя из спецификаций, XINS может генерировать:

  • HTML документация
  • тестовые формы
  • МЫЛО-соответствующий WSDL
  • основной Ява веб приложение
  • код модульного теста (на Java)
  • заглушки (на Java)
  • клиентский код (на Java)

Компоненты технологии XINS

Технически XINS состоит из следующего:

  • An XMLформат спецификации для проектов, API, функции, типы и коды ошибок
  • А POX-стиль RPC протокол (называемый Стандартное соглашение о вызовах XINS), совместимый с веб-браузерами (HTTP параметры в, XML из).
  • Инструмент для создания удобочитаемой документации на основе спецификаций.
  • Инструмент для создания WSDL, из спецификаций.
  • А Log4Jоснованная на технологии ведения журнала (называемая Logdoc), предлагающая формат спецификации, интернационализацию сообщений журнала, генерацию документации HTML и генерацию кода.
  • А Ява библиотека для вызова функций XINS, клиентская платформа XINS / Java; в xins-client.jar.
  • Серверный контейнер для реализаций XINS API на основе Java, XINS / Java Server Framework; в xins-server.jar. Это похоже на контейнер сервлета для API XINS.
  • Библиотека Java с некоторыми общими функциями, используемая как XINS / Java Client Framework, так и XINS / Java Server Framework: Общая библиотека XINS / Javaв xins-common.jar.

Вводное руководство под названием XINS Primer берет читателя за руку, показывая простые действия и снимки экрана.

Начиная с версии 1.3.0, XINS / Java Server Framework поддерживает не только вызовы в стиле POX, но и МЫЛО и XML-RPC. И он поддерживает преобразование с использованием XSLT. Начиная с версии 2.0, он также поддерживает JSON и JSON-RPC.

XINS имеет открытый исходный код и распространяется под либеральной Лицензия BSD.

Характеристики

Все файлы спецификаций XINS Обычный старый XML. В сравнении с МЫЛО/WSDL/UDDI/так далее. формат предельно прост. Есть спецификации для проектов, списки сред, API, функции, типы и коды ошибок.

Ниже приведен пример определения проекта XINS.

<проект имя ="Мой проект" домен ="com.mycompany">   имя =«MyAPI»>    <impl/>    <environments/>  </api></project>

Вот пример спецификации списка окружения:

<environments>  <окружающая среда id ="netarray" url ="http://xins.users.mcs2.netarray.com/myproject/xins/"/></environments>

Пример файла спецификации API:

 имя =«MyAPI»>  <description>Мой первый XINS API</description>  <функция имя ="Привет"/></api>

Пример определения функции:

<функция имя ="Привет">  <description>Приветствует указанного человека.</description>  <input>    <параметр имя ="имя" требуется ="истинный">      <description>Имя человека, которого нужно приветствовать.</description>    </param>  </input>  <output>    <параметр имя ="приветствие" требуется ="истинный">      <description>Сконструированное приветствие.</description>    </param>  </output></function>

Протокол RPC

В Стандартное соглашение о вызовах XINS - это простой протокол RPC на основе HTTP. Входные данные состоят из параметров HTTP, а выходные данные - XML-документ. Такой подход делает его совместимым с простым Веб-браузеры.

Пример запроса:

http: // somehost / someapi /? _convention = _xins-std & _function = SayHello & firstName = John & lastName = Doe[постоянная мертвая ссылка]

Пример успешного ответа:

<result>   <параметр имя ="приветствие">Привет, Джон Доу!</param></result>

Конкуренция

Нет известных продуктов, которые обеспечивают интегрированный подход к разработке, ориентированной на спецификации, аналогичный XINS. Однако существует несколько фреймворков и библиотек, которые обеспечивают функциональность, аналогичную отдельным частям XINS, в том числе:

внешняя ссылка