WikiDer > XML-интерфейс для сетевых служб
Эта статья поднимает множество проблем. Пожалуйста помоги Улучши это или обсудите эти вопросы на страница обсуждения. (Узнайте, как и когда удалить эти сообщения-шаблоны) (Узнайте, как и когда удалить этот шаблон сообщения)
|
Разработчики) | Интернет Breedband B.V. |
---|---|
изначальный выпуск | ? |
Стабильный выпуск | 3.1 (22 февраля 2013 г.[±] | )
Предварительный выпуск | 3.0 beta 2 (9 июня 2012 г.[±] | )
Написано в | ? |
Операционная система | Кроссплатформенность |
Доступно в | ? |
Тип | Веб-сервисы |
Лицензия | 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, в том числе:
- JWSDP: Сборник различных XML и МЫЛО технологии для Язык программирования Java.
- Ось Apache: Яваоснованная на платформе реализация SOAP.
- Codehaus XFire: То же.
- Hessian Web Service Протокол: Двоичная альтернатива стандартному соглашению о вызовах XINS.