Bonjour,
j'ai une application c++ builder 6/windows appelant un web service développé en java/jboss sur un serveur linux.
Cette application répond toujours parfaitement si le web service répond en moins de 30 secondes.
Si l'appel prend plus de 30 secondes, ca foire sur presque tous les PCs (aussi bien xp pro que win server 2003)... SAUF sur un de nos pc tournant sous win xp pro, où ca tourne sans problème de manière consistente, sans jamais planter, même si l'appel prend 2 minutes.
Donc en clair le souci n'est pas dans le code ni client ni serveur (c'est le même exe qui appelle le même wsdl).
J'ai essayé à partir d'autres clients dans le même subnet qui plantent aussi (ce n'est pas lié aux firewalls / routages / etc non plus).
Apparemment, un sniffer réseau (etherreal) montre que c'est le client qui initie la coupure la connexion après 30 secondes sur les pc's où ca ne marche pas.
Le texte de l'exception renvoyée est
--------------------
XML document must have a top level element.
Line: 0
-------------------
Piste 1: Y aurait-il un paramètre dans la base de registre qui fait que l'application sur un pc bien précis fonctionne correctement, et lequel??????????
Piste 2: un mount fixe (linux) est effectué du serveur où est hébergé ce web service vers le poste client où ca marche (le serveur y dépose des fichiers de temps à autre). Serait-ce cela qui fait que je n'ai pas d'erreur après 30secondes??????
Piste 3: le pc qui fonctionne n'est pas en domaine mais en workgroup, l'utilisateur logué est "Administrator" (par opposition aux autres pc's où ca plante qui sont tous en domaine avec un user qui est administrateur du pc mais pas domain admin). Serait-ce cela qui aide?????
Piste 4: tout fonctionnait parfaitement sur plusieurs pc's (les requêtes de plus de 30 secondes marchaient) jusqu'à un shutdown propre de tout le parc informatique. Est-il possible qu'une mise à jour automatique windows aie mis en place un timeout qui se serait activé au redémarrage?
PS (afin d'éliminer une réponse potentielle): la note http://qc.borland.com/wc/qcmain.aspx?d=49636 ne concerne pas bcb 6 et n'est pas d'application ici vu que le code fonctionne sans timeout sur un pc.
PS2: je travaille sous bcb et non sous delphi. Je ne sais pas modifier le vcl.
Merci pour votre aide.
Partager