2011-12-02 3 views
1

Je suis en train de développer une application qui consomme des données du service Web WCF, mais les données doivent être récupérées à partir de différents serveurs d'applications fournis par différents fournisseurs.SOAP Web Services develoment support

La question est de savoir quel langage de programmation supporte le développement d'un Web Services à partir d'un WSDL qui existe déjà?

Par exemple, dans .NET, vous pouvez utiliser "wsdl.exe/serverInterface" pour générer une interface serveur. Voir Implementing Service Interface

En Java, voir: Top Down Java Bean Web Service

Mais je ne veux pas que les fournisseurs soient attachés à une tecnologie explicite.

+0

En fait, wsdl.exe est une technologie héritée. Vous devez utiliser svcutil.exe ou "Ajouter une référence de service". –

Répondre

1

... Je ne veux pas que les fournisseurs soient attachés à une technologie explicite.

Vous prenez à propos des services Web. L'idée avec les services Web est qu'elle permet des interactions entre des machines hétérogènes (et des technologies).

Pour que l'interaction se produise, il n'est pas nécessaire que la machine utilise le même langage ou la même technologie de programmation. Ce qui est important, c'est le protocole utilisé. Dans votre cas SOAP.

Le protocole définit l'interface de communication ou contrat. Pour les services Web, l'interface est décrite par le langage de description des services Web (votre WSDL). WSDL est dans un format (plus ou moins) lisible par l'homme, mais plus important encore, dans un format pouvant être traité par une machine. L'idée est que vous utilisez le WSDL pour générer le code/les classes qui respectent le contrat; Du côté serveur, ils s'appellent Skeletons, et du côté client, Stubs.

Beaucoup de langages de programmation ont des moyens ou des outils pour générer des stubs/skeletons à partir de WSDL mais là encore, ce n'est pas la partie importante. L'important est de respecter le contrat.

Le WSDL vous permet simplement d'automatiser la création d'un code standard. Il n'est pas obligatoire d'utiliser le WSDL pour créer le serveur/client afin que toute technologie puisse être utilisée (avec ou sans le WSDL).

Tant que vous faites cela, vous ne vous attachez pas à une technologie explicite. Ainsi, dans le "Service Web WCF" que vous mentionnez, vous pouvez supprimer le mot "WCF".

Le seul soin que vous devez prendre est avec l'interface entre les systèmes. Vous devez vous assurer que le Web Services Interoperability car nous ne vivons pas dans un monde idéal et certains détails de la pile de technologie "pourraient fuir" dans le contrat si vous ne faites pas attention.