11
votes

Générez WSDL à partir de Java Class \ Source

J'ai un colis avec des classes "logiques" (comme CheckAuthentiCationDatalogic.java, getvocabularieslogic.java). Et une autre classe - apiserice.java est utilisée pour générer WSDL. Apiserice.java est plein de méthodes telles que ceci:

/**
   * Check authentication data.
   * @param contractNumber - number of contract.
   * @param msisdn - msisdn.
   * @param superPassword - super password.
   * @return result of authentication.
   */
  @WebMethod
  @WebResult(name = "result")
  public CheckAuthenticationDataResult checkAuthenticationData(@WebParam(name = "contractNumber")
                                                               final String contractNumber,
                                                               @WebParam(name = "msisdn")
                                                               final String msisdn,
                                                               @WebParam(name = "superPassword")
                                                               final String superPassword) {
    return runLogic(new CheckAuthenticationDataLogic(contractNumber, msisdn, superPassword));
  }


0 commentaires

3 Réponses :


0
votes

Le métro ( http://metro.java.net/ ) La pile de services Web fournit un outil (Wsgen) pour générer WSDL à partir de Java annoté.


3 commentaires

Vous n'avez pas besoin de métro (Metro = Jax-WS RI + WSIT / TANGO), vous n'avez besoin que de JAX-WS RI, incluse dans Java 6. Donc, si vous utilisez Java 6, vous n'avez réellement besoin de rien.


@Pascal thivent: Vous avez absolument raison. Cependant, je pense que le métro est généralement plus à jour que le JAX-WS RI fourni par JSE.


Eh bien, la version de la mise à jour JDK 6 a JAX-WS 2.1.6 RI, qui est assez décente. Mais en effet, Metro 1.5 comprend Jax-WS 2.1.7 (qui est considéré comme une version mineure, voir weblogs.java.net/blog/2009/04/21/jax-ws-ri-217metro-15-Relea sed ). Cependant, si vous souhaitez utiliser JAX-WS RI 2.1.7, vous pouvez le télécharger à partir de JAX-WS. dev.java.net , vous n'avez toujours pas besoin de métro. Mais honnêtement, je ne me dérangerais pas à jouer avec le mécanisme d'annuaire approuvé.



18
votes

le Wsgen outil génère Jax- Les artefacts portables WS utilisés dans les services Web JAX-WS. Notez que vous n'avez pas à générer WSDL au moment du développement, car Jaxws Runtime générera automatiquement un WSDL pour vous lorsque vous déployez votre service.

Vous voudrez peut-être vérifier le jax-ws ri Documentation < / a> et surtout le échantillons (payer un spécial attention à l'échantillon de JJAVA ).


3 commentaires

J'ai une erreur "exception dans le fil" principale "java.lang.noclassduffoundEfferror" et elle se produit car cette classe n'est pas placée dans la catégorie de classe, mais dans la bibliothèque distante (les bibliothèques sont placées dans un autre dossier). Comment puis-je inclure ces bibliothèques à ma classe de classe?


Wsgen -WSDL: XSOAP1.2 -extension -D TestGen -CP / Accueil / VIDOCQ / Espace de travail / WS-CRP / Build / Sortie / Classes Eclipse Com.Crp.logic.CheckAuthenticationDatalogie


Quelle erreur obtenez-vous lors de l'exécution wsgen avec -cp ? Veuillez mettre à jour votre question avec des détails sur la configuration de votre projet (où sont situées des sources) et la trace.



3
votes

Axis2 est une autre alternative, en particulier la commande Java2WSDL / Plugin


0 commentaires