Bonjour à Tous,
Voici un problème de production concret qui j'espère vous inspirera car j'en perds un peu mon latin.
CONTEXTE :
Un client web service que nous avons genéré à partir d'un WSDL avec l'outil de Axis 1.4 nommé WSDL2Java, ceci nous a donné un bon stub client composé de 4 classes (une interface, une implementation, un locator, et le soapstub).
De l'autre coté un serveur que nous avons également généré a partir du meme WSDL sous Axis 1.4 avec le meme outil (et l'option server adoc). Cela nous donne les meme 4 classes que precedemment mais avec un skeleton en plus.
La communication s'etablit parfaitement et l'echange de donnee est bon. Ca marche nickel.
PROBLEME :
Alors me direz vous pourquoi poster ici ? Disons maintenant que le serveur en question est un serveur de dev et que le vrai serveur devant repondre à notre requete de notre client Axis (censé être 100% W3C compliant), ce serveur n'accepte pas notre requete HTTP contenant le message soap d'axis. IOEcxeption ou le serveur ne peut pas generer de response soap.
Si nous placons un tunnel pour ecouter cette requete Axis, nous obtenons ceci :
Hors pour corser un peu, si on envoi la requete suivante a ce serveur à l'aide du client de XMLSpy, on obtient une reponse tout a fait positive. Image :
Le probleme est je pense au niveau d'Axis, Meme si lée serveur de test genere par Axis accepte cela il est tres surprenant de trouver d'abord un GET en HTTP 1.1 genere par Java (user agent) puis un Post en HTTP 1.0.
Le GET provoque la rejection par le serveur.
QUESTION :
Comment modifier la requète génere par Axis y'a t-il des options a connaitre pour changer le type de protocole de transmission d'Axis 1.4.
Merci beaucoup d'avance de toute l'aide que vous pourriez m'apporter ? Toute piste sera la bienvenu, le problème est corriace.
WDIONYSOS
Partager