JAX WS avec com.sun.net.HttpServer et .net
-
09-10-2019 - |
Question
J'ai un problème très frustrant. J'ai un service web créé avec JAX WS annotations et astuce Endpoint.publish (...). Bien sûr, il utilise com.sun.net.HttpServer. Lorsque je tente d'ajouter une référence de service dans Visual Studio, il ne bougera pas. Le serveur dit:
unsupportent-type de contenu: accepté uniquement text / xml
Mais .net demande avec application / soap + type de contenu XML.
Comment puis-je changer le type de contenu dans JAX ws? Ou, comment puis-je changer le type de contenu d'ajouter une référence thingy studio visuel.
Merci. Il est très frustrant!
La solution
Après googler je l'ai trouvé ...
Salut,
J'ai résolu le problème.
'application / soap + xml' est le contenu type utilisé pour les messages SOAP 1.2 tandis que text / xml est utilisé pour SOAP 1.1. D'où l'envoi client SOAP 1.2 demandes et services SOAP ne attend 1.1.
Metro utilise SOAP 1.1 par défaut. Comment activer liaison SOAP 1.2 est expliquée ici: - http://forums.java.net/jive/thread.jspa?messageID= 322894 - https://metro.dev.java.net/1.4/docs/soap12. html
Référence. Espérons que cela aide:)
EDIT: essayez les annotations ci-dessous ...
@WebService
@BindingType(javax.xml.ws.soap.SOAPBinding.SOAP12HTTP_BINDING)
ou
Endpoint endpoint = Endpoint.create("http://java.sun.com/xml/ns/jaxws/2003/05/soap/bindings/HTTP/", impl);
endpoint.publish("http://localhost:9080/PatientDiscovery");