2011-09-15 3 views
6

J'essaie de raccorder fiddler à un test d'unité Java dans Eclipse pour voir la demande de savon lorsque notre service web est appelé ... Il fonctionne automatiquement dans notre harnais .NET Y at-il un paramètre qui doit être appliqué pour Java? MerciUtilisation de fiddler avec Java et Eclipse

+2

Vous devez configurer Fiddler comme proxy HTTP à utiliser. Comment? Eh bien, je ne le sais pas, car vous n'avez pas spécifié quel client vous utilisez, et comment vos tests invoquent le client. –

+0

Nous nous connectons à un service Web hébergé localement –

+0

err ... désolé de paraître bête, mais pourquoi savoir que vous utilisez un service Web hébergé localement est important ici? Je suppose que le client doit être configuré pour utiliser le proxy, que le service soit déployé localement ou non. [Fiddler peut intercepter le trafic vers localhost/127.0.0.1 sauf si le client fait quelque chose d'intelligent] (http://www.fiddler2.com/fiddler/help/hookup.asp#Q-LocalTraffic). –

Répondre

15

Je ne l'ai pas essayé, mais ...

Fiddler se positionne comme un serveur proxy, l'écoute sur localhost: 8888

Vous pouvez configurer Java pour utiliser un serveur proxy avec le http.proxyHost et http.proxyPort (voir http://download.oracle.com/javase/6/docs/technotes/guides/net/proxies.html).

Donc, si vous allez dans Eclipse et définissez les arguments « VM » à ce qui suit, il devrait acheminer tout le trafic à travers Fiddler (qui, bien sûr, doit déjà être en cours d'exécution):

-Dhttp.proxyHost=localhost 
-Dhttp.proxyPort=8888 

Cela suppose que votre application utilise URLConnection. Si vous utilisez Apache HttpClient ou une autre bibliothèque, vous devrez peut-être vérifier la documentation de cette bibliothèque.

+1

Merci d'avoir mentionné Apache HttpClient. –

+0

la configuration de proxy pour JVM est la bonne approche, en outre, le certificat de fiddler doit être installé pour les connexions HTTPS. – lwpro2

+1

Au cas où cela ne fonctionnerait pas, j'ai dû utiliser les variables de cette façon ou cela n'a pas fonctionné! -DproxyHost = localhost -DproxyPort = 8888 – Chexpir