2010-08-25 5 views
3

Quelle est la meilleure solution (le cas échéant) pour appeler un service Web vb.net avec Java/JSP? Si quelqu'un pouvait me montrer des exemples/références, je l'apprécierais beaucoup.Appel d'un service Web VB.NET avec Java

Merci!

+1

Première étape: Obtenez le fichier WSDL. –

Répondre

2

Pour que Java se connecte au service Web .NET, vous devez d'abord générer un fichier WSDL. Cela peut être fait en ajoutant ?WSDL au service Web .asmx (.NET), par exemple. Pour que Java comprenne cela, vous aurez besoin d'un client de service Web: En Java 6, JAX-WS est la dernière spécification.

Le client suivant qui est conforme à la JAX-WS est:

Ces outils vous permettent de créer un proxy java de la définition WSDL.En Java 6 (dans le répertoire JDK_HOME/bin) il y a des outils (maintenant standard) pour convertir une définition WSDL en proxy java. Le wsimport (windows) permet une telle opération. Une fois que vous avez un proxy java, vous pouvez essentiellement appeler toutes les méthodes de service Web exposées créées pour appeler votre service Web.

1

Cela dépend totalement du type de service Web dont vous parlez (RESTful vs. SOAP, etc.). En théorie, l'intérêt d'avoir un service web est de fournir ce type d'interopérabilité, donc cela devrait certainement être possible. Cependant, sans plus de détails, il est difficile de vous orienter dans la bonne direction. Vraiment, cette question n'a rien à voir avec VB.net, puisque le client ne devrait pas avoir besoin d'être exposé aux détails de l'implémentation du service.

EDIT: Comme c'est un service SOAP, vous devriez être capable de créer un client basé sur le WSDL du service. Il existe une variété d'outils pour aider à cela. Voici un tutoriel sur generating Java code from a WSDL en utilisant l'utilitaire WSDL2Java.

Java, vous devez frameworks jeter un oeil à:

+0

Désolé de ne pas spécifier, je parle de SOAP ... – littleK

+0

Vous voudrez utiliser le fichier WSDL pour générer un client. Voir la mise à jour – dbyrne

0

Si par "service Web VB.NET", vous voulez dire un service Web ASP.NET (. extension de fichier asmx), vous devriez pouvoir utiliser Java avec un client Soap.

Chaque service Web ASP.NET expose son contrat public pour ce service via un fichier WSDL (Web Service Definition Language) auquel vous pouvez accéder en ajoutant simplement ?WSDL après l'adresse .asmx de l'adresse du service Web. Le principal avantage des services Web basés sur des protocoles courants tels que SOAP est qu'ils permettent aux logiciels de communiquer entre les limites de la machine et de la plate-forme. Le fichier WSDL est le contrat existant entre les applications logicielles pour s'assurer qu'elles communiquent dans la même langue.

Une bonne bibliothèque cliente lira ce fichier WSDL et s'occupera de la communication avec le service Web via des messages XML SOAP. Si vous le vouliez vraiment, vous pourriez même créer manuellement vos messages XML SOAP et communiquer via un simple client HTTP. Cependant, il serait préférable d'utiliser une bibliothèque qui existe déjà pour gérer votre plomberie SOAP. Cela permet à votre application de consommer les fonctionnalités du service Web tout en s'assurant que vous respectez le contrat de service Web.