Interface XML pour les services réseau - XML Interface for Network Services

XINS
Développeur (s) Breedband BV en ligne
Première version ?
Version stable 3.1 (22 février 2013 ; il y a 7 ans ) [±] ( 22/02/2013 )
Version préliminaire 3.0 beta 2 (9 juin 2012 ; il y a 8 ans ) [±] ( 09/06/2012 )
Écrit en ?
Système opérateur Multiplateforme
Disponible en ?
Type services Web
Licence BSD
Site Internet xins.org

L'interface XML pour les services réseau ( XINS ) est une technologie open source pour la définition et la mise en œuvre d'applications Internet, qui applique une approche axée sur les spécifications.

Approche axée sur les spécifications

L'approche orientée spécifications est au cœur de XINS:

  • les premières spécifications doivent être rédigées;
  • puis la documentation et le code sont générés à partir de ces spécifications;
  • alors les tests et la mise en œuvre peuvent commencer.

A partir des spécifications, XINS est capable de générer:

  • Documentation HTML
  • formulaires de test
  • WSDL compatible SOAP
  • une application Web Java de base
  • code de test unitaire (en Java)
  • stubs (en Java)
  • code côté client (en Java)

Composants de la technologie XINS

Techniquement, XINS est composé des éléments suivants:

  • Un format de spécification basé sur XML pour les projets, les API , les fonctions, les types et les codes d'erreur
  • Un POX de style RPC protocole (appelé la Convention standard XINS appel ), compatible avec les navigateurs Web ( HTTP paramètres, XML out).
  • Un outil pour générer une documentation lisible par l'homme, à partir des spécifications.
  • Un outil pour générer WSDL , à partir des spécifications.
  • Une technologie de journalisation basée sur Log4J (appelée Logdoc), offrant un format de spécification, l'internationalisation des messages de journal, la génération de documentation HTML et la génération de code.
  • Une bibliothèque Java pour appeler des fonctions XINS, le XINS / Java Client Framework ; dans xins-client.jar.
  • Un conteneur côté serveur pour les implémentations d'API XINS basées sur Java, le XINS / Java Server Framework ; dans xins-server.jar. C'est comme un conteneur de servlet pour les API XINS.
  • Une bibliothèque Java avec des fonctionnalités communes, utilisée à la fois par XINS / Java Client Framework et XINS / Java Server Framework: la bibliothèque commune XINS / Java , dans xins-common.jar.

Un didacticiel d'introduction appelé XINS Primer prend le lecteur par la main avec des étapes faciles à suivre, avec des captures d'écran.

Depuis la version 1.3.0, le XINS / Java Server Framework prend en charge non seulement les appels de type POX, mais également SOAP et XML-RPC . Et il prend en charge la conversion à l'aide de XSLT . À partir de la version 2.0, il prend également en charge JSON et JSON-RPC .

XINS est open-source et est distribué sous la licence libérale BSD .

Caractéristiques

Tous les fichiers de spécification XINS sont du plain Old XML . Comparé à SOAP / WSDL / UDDI / etc. le format est extrêmement simple. Il existe des spécifications pour les projets, les listes d'environnement, les API, les fonctions, les types et les codes d'erreur.

Voici un exemple de définition de projet XINS.

<project name="MyProject" domain="com.mycompany">
  <api name="MyAPI">
    <impl/>
    <environments/>
  </api>
</project>

Voici un exemple de spécification d'une liste d'environnement:

<environments>
  <environment id="netarray" url="http://xins.users.mcs2.netarray.com/myproject/xins/"/>
</environments>

Un exemple de fichier de spécification d'API:

<api name="MyAPI">
  <description>My first XINS API</description>
  <function name="Hello"/>
</api>

Un exemple de définition de fonction:

<function name="Hello">
  <description>Greets the indicated person.</description>
  <input>
    <param name="name" required="true">
      <description>The name of the person to be greeted.</description>
    </param>
  </input>
  <output>
    <param name="greeting" required="true">
      <description>The constructed greeting.</description>
    </param>
  </output>
</function>

Protocole RPC

La convention d'appel standard XINS est un simple protocole RPC basé sur HTTP. L'entrée se compose de paramètres HTTP, tandis que la sortie est un document XML. Cette approche le rend compatible avec les navigateurs Web simples .

Exemple de demande:

http://somehost/someapi/?_convention=_xins-std&_function=SayHello&firstName=John&lastName=Doe

Exemple de réponse réussie:

<result>
   <param name="greeting">Hello John Doe!</param>
</result>

Concurrence

Il n'existe aucun produit connu offrant une approche intégrée du développement orienté spécifications, similaire à XINS. Cependant, il existe plusieurs frameworks et bibliothèques qui fournissent des fonctionnalités similaires à des parties individuelles de XINS, notamment:

Liens externes