Je voudrais définir 5 classes avec une annotation @WebService et utiliser wsgen pour créer un seul wsdl pour chacune d'entre elles. Chaque classe serait son propre port. J'ai lu la documentation de wsgen et cela ne semble pas possible. Mais, quand je regarde la spécification wsdl, il semble être possible. http://www.w3.org/TR/wsdl#_ports Est-ce que quelqu'un sait comment faire cela avec wsgen?En utilisant JAX-WS, comment ai-je plusieurs ports dans un wsdl?
4
A
Répondre
2
Je ne suis pas familier avec wsgen, cependant ... autant que je sache, vous ne pouvez avoir qu'une seule classe face à un webservice. Cependant, vous pouvez définir plusieurs opérations, chaque opération étant une méthode distincte dans votre classe. Peut-être que vous pouvez faire quelque chose comme ceci:
- Définissez vos 5 classes comme normal
- Définir une classe « fronting » avec une méthode distincte qui appelle dans chacune de vos 5 classes d'origine.
- Exécuter votre classe fronting »par
wsgen
pour créer un WSDL avec 5 opérations distinctes (une pour chaque classe)
Comme une note de côté, il est généralement préférable de définir webservices haut vers le bas plutôt que de bas en haut . Créez d'abord le WSDL, puis utilisez quelque chose comme wsdl2java
pour créer le squelette java.