2008-09-03 25 views
12

Je suis à la recherche d'un outil pour générer un stub JavaScript à partir d'un WSDL.Génération de stubs JavaScript à partir de WSDL

Bien que je préfère généralement utiliser les services REST avec JSON ou XML, certains outils que j'intègre actuellement fonctionnent uniquement avec SOAP. J'ai déjà créé une première version du client en JavaScript mais j'analyse manuellement l'enveloppe SOAP et je doute que mon code puisse survivre à une mise à jour de service par exemple, vu la complexité de la spécification de l'enveloppe SOAP.

Donc, y at-il un outil pour générer automatiquement des stubs entièrement compatibles SOAP pour JavaScript à partir du WSDL afin que je puisse être plus confiant sur l'avenir de mon code client.

Plus: Le service Web que j'essaie d'utiliser est codé RPC, pas de littéral de document.

Répondre

7

Je devais le faire moi-même dans le passé et je l'ai trouvé CodeProject article. Je l'ai changé un peu, mais cela m'a donné une bonne base pour mettre en œuvre tout ce dont j'avais besoin. L'une des principales caractéristiques qu'il a déjà est de générer le client SOAP basé sur le WSDL. Il a également construit dans la mise en cache du WSDL pour plusieurs appels.

Cet article propose également une implémentation personnalisée de XmlHttpRequest pour les appels Ajax. C'est la partie que je n'ai pas utilisée. Pendant ce temps, je pensais utiliser la bibliothèque javascript Prototype et j'ai modifié le code dans cet article pour utiliser ses fonctions Ajax à la place. Je me sentais plus à l'aise en utilisant Prototype pour les appels ajax, car il était largement utilisé et avait été testé sur tous les navigateurs.

+2

Notez que le projet mentionné a maintenant été déplacé vers http://javascriptsoapclient.codeplex.com. L'ancienne URL ne contient que des versions jusqu'en 2005-2006, mais le nouveau site est maintenu. – mikemaccana

1

Ce serait probablement une surcharge, mais NetBeans a cette fonctionnalité.

+2

Je ne trouve pas cette fonctionnalité dans Netbeans, un conseil? –

+0

Je voudrais savoir aussi. – jocull

9

Apache CXF dispose d'outils qui génèrent des clients JavaScript qui parlent du savon.

En fait, n'importe quel service CXF peut avoir un client javascript généré automatiquement en accédant à l'URL avec? Js ajouté. (Tout comme? wsld produit le wsdl) Il existe aussi des outils de ligne de commande, mais les trucs générés dynamiquement sont plutôt sympas.

+2

J'ai essayé ces outils, mais wdsl2js ne peut pas fonctionner avec les services Web codés RPC. –

+0

Mais merci pour la suggestion, je devrais ajouter. Il vaut la peine d'essayer pour ceux qui ont des services Web littéraux de documents. Voter –

+0

merci, bonne suggestion. –