82 votes

Java web Service Client (Best way)

J'ai une troisième partie WSDL, j'ai besoin d'écrire du code en JAVA pour un client de service web pour appeler les opérations dans la troisième partie de WSDL. Maintenant, j'ai généré le stub client à l'aide de la WSDL2JAVA outil à partir de l'Axe et utilisé le XMLbeans pour la liaison de données.

  1. Quelle est la meilleure approche pour ce faire JAVA?
  2. J'ai lu sur SAAJ, on dirait que sera niveau plus granulaire de l'approche?
  3. Est-il un autre moyen que d'utiliser la WSDL2Java outil pour générer le code. Peut-être wsimport dans une autre option. Quels sont les avantages et les inconvénients?
  4. Quelqu'un peut-il envoyer les liens pour quelques bons tutoriels sur ces sujets?
  5. Quelles sont les options que nous avons besoin de l'utiliser lors de la génération du code à l'aide de la WSDL2Java?

J'ai utilisé quelques-unes des choses de base d'abord. Maintenant que j'ai ces options

C:\axis2-1.5.1\bin>wsdl2java -uri  mywsdlurl  -o client -p somepackage -d xmlbeans -s -t -ssi

Merci à l'avance!

161voto

Pascal Thivent Points 295221

Quelle est la meilleure approche pour ce faire JAVA?

Personnellement, je ne PAS utiliser l'Axe 2, de même pour le développement côté client seulement. Ici, c'est pourquoi je reste loin de lui:

  1. Je n'aime pas son architecture et de sa haine contre-productif modèle de déploiement.
  2. Je trouve que c'est une faible qualité de leur projet.
  3. Je n'aime pas ses performances (voir cette référence de JAX-WS RI).
  4. C'est toujours un cauchemar pour les dépendances de l'installation (j'utilise Maven et j'ai toujours se battre avec les gazillion de dépendances) (voir #2)
  5. Axe sucé le gros temps et Axis2 n'est pas mieux. Non, ce n'est pas une opinion personnelle, il y a un consensus.
  6. J'ai souffert une fois, plus jamais.

La seule raison pour laquelle l'Axe est toujours autour de l'OMI, parce qu'il est utilisé dans Eclipse depuis des âges. Dieu merci, cela a été corrigé dans Eclipse Helios et j'espère Axis2 va enfin mourir. Il y a juste beaucoup mieux piles.

J'ai lu sur SAAJ, on dirait que sera niveau plus granulaire de l'approche?

Pour faire quoi?

Est-il un autre moyen que d'utiliser la WSDL2Java outil pour générer le code. Peut-être wsimport dans une autre option. Quels sont les avantages et les inconvénients?

Oui! Préférez un JAX-WS pile comme CXF ou JAX-WS RI (vous pourriez aussi lire sur le Métro, le Métro = JAX-WS RI + WSIT), ils sont simplement plus élégant, plus simple, plus facile à utiliser. Dans votre cas, je voudrais juste utiliser JAX-WS RI qui est inclus dans la version 6 de Java et donc de wsimport.

Quelqu'un peut-il envoyer les liens pour quelques bons tutoriels sur ces sujets?

C'est un autre pro, il y a beaucoup de (bonne qualité) des tutoriels pour JAX-WS, voir par exemple:

Quelles sont les options que nous avons besoin de l'utiliser lors de la génération du code à l'aide de la WSDL2Java?

Pas d'options, utilisez wsimport :)

Voir aussi

Questions connexes

8voto

Steve Points 189

J'ai eu un bon succès à l'aide de Spring WS pour le client d'un service web app - voir http://static.springsource.org/spring-ws/sites/1.5/reference/html/client.html

Mon projet utilise une combinaison de:

  • XMLBeans (généré à partir d'un simple Maven travail à l'aide du xmlbeans-maven-plugin)

  • Spring WS - à l'aide de marshalSendAndReceive() réduit le code pour une ligne pour l'envoi et la réception de

  • certains Dozer - la cartographie du complexe XMLBeans à de simples haricots pour le client GUI

1voto

aravindaM Points 11

Vous pouvez trouver quelques ressources liées au développement de client de services web à l'aide d'Apache axis2 ici.

http://today.java.net/pub/a/today/2006/12/13/invoking-web-services-using-apache-axis2.html

Ci-dessous les postes donne de bonnes explications sur le développement de services web en utilisant Apache axis2.

http://www.ibm.com/developerworks/opensource/library/ws-webaxis1/

http://wso2.org/library/136

0voto

Mark O'Connor Points 33201

Quelques idées dans la réponse suivante:

http://stackoverflow.com/questions/2559074/steps-in-creating-a-web-service-using-axis2-the-client-code/2564323#2564323

Donne un exemple de Groovy client en invoquant la BAD classes générées à partir du WSDL.

Il y a beaucoup de cadres de la...

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X