2011-09-15 16 views
6

Eclipse'de java birimi testine kemancıyı bağlamaya çalışıyorum, böylece web servisimiz çağrıldığında sabun isteğini görebiliyorum ... .NET koşumumuzda otomatik olarak çalışıyor ancak Java için uygulanması gereken bir ayar var mı? TeşekkürFiddler'ı Java ve Eclipse ile kullanma

+2

Kullanılacak HTTP proxy'si olarak Fiddler'ı yapılandırmanız gerekir. Nasıl? Bunu bilmiyorum, çünkü hangi müşteriyi kullandığınızı ve testlerin müşteriyi nasıl çağırdığını belirlemediniz. –

+0

Yerel olarak barındırılan bir Web Hizmetine bağlanıyoruz –

+0

err ... aptalca geldiğim için üzgünüm, ancak yerel olarak barındırılan Web Hizmetini kullandığınızı bilmek neden burada önemli olabilir? Hizmetin yerel olarak dağıtılıp dağıtılmadığına bakılmaksızın istemcinin proxy'yi kullanacak şekilde yapılandırılması gerektiğini varsayalım. [Fiddler müşteri bir şey yapmazsa localhost/127.0.0.1 trafiğini engelleyebilir] (http://www.fiddler2.com/fiddler/help/hookup.asp#Q-LocalTraffic). –

cevap

15

Bunu denedim, ancak ...

Kemancı localhost dinleyen, bir proxy sunucu olarak kendini kurar: 8888 Sen http.proxyHost ve http.proxyPort ile bir proxy sunucusu kullanmak için Java yapılandırabilirsiniz

(bakınız http://download.oracle.com/javase/6/docs/technotes/guides/net/proxies.html). Eğer Eclipse gidip aşağıdakilere "VM" argümanlar ayarlarsanız

Yani, rota Fiddler aracılığıyla tüm trafiği (tabii ki, zaten çalışıyor olması gerekir, hangi) olmalıdır:

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

Bu varsayar Uygulamanızın URLConnection kullanıyor. Apache HttpClient veya başka bir kütüphane kullanıyorsa, o kütüphanenin belgelerini kontrol etmeniz gerekebilir.

+1

Apache HttpClient hakkında konuştuğunuz için teşekkür ederiz. –

+0

JVM için proxy yapılandırması doğru bir yaklaşımdır, ayrıca HTTPS bağlantıları için kemanın sertifikalarının yüklenmesi gerekir. – lwpro2

+1

Çalışmıyorsa, bu şekilde değişkenleri kullanmak zorundaydım ya da işe yaramadı! -DproxyHost = localhost -DproxyPort = 8888 – Chexpir