2009-09-30 5 views
5

Ich habe ein Problem beim Ausführen von Komponententests in Eclipse hinter einem Proxy, da die von den Komponententests verwendeten Klassen einige Webdienste aufrufen, die hinter einem Proxy liegen. In Tomcat kann ich natürlich einen zu verwendenden Proxy angeben, aber wenn ich Komponententests direkt von Eclipse aus starte, scheint die Proxy-Konfiguration von Eclipse ignoriert zu werden. Wie kann ich meine Komponententests oder Eclipse so konfigurieren, dass in diesem Fall ein Proxy verwendet wird?Fehlgeschlagene Web Service Unit-Tests hinter einem Proxy in Eclipse

Antwort

11

Ich fand die Lösung: anscheinend kann man den Proxy in Run/Debug-Einstellungen in Eclipse konfigurieren. Um dies zu tun:

  1. Rechtsklick auf die Unit-Test-Klasse
  2. Debug-as - Debug-Konfigurationen
  3. gehen Sie auf die Registerkarte "Argumente"
  4. Proxy-Konfiguration in den "VM Argumente":

    • -Dhttp.proxyHost=proxy.host.com
    • -Dhttp.proxyPort=8080
    • -Dhttp.nonProxyHosts=[list of hosts separated with pipe character]

Wenn Sie sich hinter einem Passwort geschützt Proxy sind, müssen Sie hinzufügen:

  • -Dhttp.proxyUser=someUserName
  • -Dhttp.proxyPassword=somePassword
+0

Vielleicht offensichtlich Veteran Java-Entwickler, aber Sie Sie müssen einen Strich (-) vor jedes Argument setzen, wenn Sie es zum Abschnitt "VM-Argumente" in Eclipse hinzufügen (oder zumindest habe ich es getan). Beispiel: -Dhttp.proxyHost = abcd.com -Dhttp.proxyPort = 8888. – Peter

+0

Bearbeitete Antwort entsprechend, danke für das Hinzeigen (die Bindestriche waren in meiner ursprünglichen Antwort, aber wurden anscheinend bei der Verbesserung der Formatierung herausgeschnitten). – simon

+2

Sie sollten auch beachten, dass die Proxy-Konfiguration für HTTPS eine etwas andere Eigenschaft verwendet, z. -Dhttps.proxyHost = proxy.host.com. Ich habe mich gefragt, warum das zuerst nicht für mich funktionierte und es war, weil mein Code HTTPS verwendet. – talawahtech

Verwandte Themen