Comment convertir WSDLs en classes Java en utilisant Eclipse?
j'ai un fichier WSDL (ou, plus précisément, son URL). J'ai besoin de le convertir en classe Java. Je dois également fournir des tests pour le service web qu'il décrit. Je suis nouveau sur les services web, alors quelqu'un pourrait-il me dire comment convertir Wsdls en Java?
J'utilise Eclipse JEE Kepler. Peut-être qu'il y a des plugins pour faire ça automatiquement?
5 réponses
dans Eclipse Kepler il est très facile de générer des classes de clients de service Web,vous pouvez y parvenir en suivant les étapes suivantes .
Rightcliquez sur n'importe quel projet->créer de nouveaux autres ->Services Web->service Web Client->puis coller l'url(ou l'emplacement) wsdl dans la définition de service->Suivant->Terminer
vous verrez que les classes générées sont dans votre dossier src.
NOTE :sans eclipse, vous pouvez également générer des classes de clients à partir du fichier wsdl en utilisant wsimport utilitaire de commande qui est livré avec le JDK.
consulter ce lien Créer un client de service Web à l'aide de wsdl
Vous devez faire en ligne de commande:
wsimport -keep -s (name of folder where you want to store generated code) urlToWsdl
par exemple:
wsimport -garder-s C://NewFolder https://www.blablabla.com
Je ne suggérerais pas D'utiliser L'outil Eclipse pour générer le Client WS parce que j'en ai eu une mauvaise expérience:
Je ne suis pas vraiment sûr si cela compte mais j'ai dû consommer un WS écrit .NET. Lorsque j'ai utilisé L'outil "New Web Service Client" D'Eclipse, il a généré les classes Java en utilisant l'Axe (la version 1.x) comme vous pouvez le vérifier est vieux (dernière version à partir de 2006). Il n'y a une nouvelle version bien qu'il y ait quelques changements majeurs mais Eclipse n'utilise pas il.
pourquoi l'ancienne version D'Axis a-t-elle de l'importance? Parce que lorsque vous utilisez OpenJDK vous pouvez rencontrer des problèmes comme algorithmes de cryptographie manquants dans OpenJDK qui sont présentés dans le JDK de L'Oracle et certaines bibliothèques comme celle-ci en dépendent.
alors j'ai juste utilisé le wsimport j'ai mis fin à mes maux de tête.
Options sont les suivantes:
- Wsimport à partir d'Oracle utilise JAXB
- Axe à partir de Apache
- CXF à partir de Apache
- Axis2 de Apache offre le choix entre ADB (par défaut), Apache XmlBeans, ou JiBX pour la liaison de données
Lire à travers les liens ci-dessus avant de prendre un appel
L'équipe Eclipse de L'Université ouverte a préparé le document suivant, qui inclut la création de classes par procuration avec des tests. Il pourrait être ce que vous cherchez.
http://www.eclipse.org/webtools/community/education/web/t320/Generating_a_client_from_WSDL.pdf
Tout est inclus dans le Projet Web Dynamique modèle.
dans le projet créer un Client Du Service Web. Cela commence un assistant qui vous fait pointer une url wsdl et crée le client avec des tests pour vous.
le guide de l'utilisateur (destiné à indigo cependant) pour cette tâche se trouve à http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.jst.ws.cxf.doc.user%2Ftasks%2Fcreate_client.html.