2011-11-25 18 views
5

Ben Java ile çok yeni. Ben basit bir ortamda, çağıran REST API için çalışma cezası aşağıdaki kodu kullanıyorum ama vekil çevre ile kullanıldığında Onun NullPointerException atma. Bunun sonucu için proxy ayarını belirlememiz gereken bir sonuç buldum. Bunu http://www.javaworld.com/javaworld/javatips/jw-javatip42.html makaleye göre proxy ayarlamak ama bu + base64Encode (şifre) oluşturarak yazım hatası çalışmıyor. Proxy Sunucu, bağlantı noktası, kullanıcı adı ve parola ayarlamak için lütfen bana yardım edin.Vekil ile Java URLConnection sınıf

cevap

18

yc.getInputStream()null döndüğünden, NullPointerException durumunuzdan şüpheleniyorum. Ondan bayt okumak için bir okuyucu oluşturmaya başlamadan önce, boş olmayan bir değer döndürdüğünü kontrol etmeniz gerekir.

Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("my.proxy.example.com", 3128)); 
URLConnection yc = url.openConnection(proxy); 

Bu en azından Proxy'yi sorguya ve sorun için potansiyel kaynakları ekarte etmek izin verebilir (vardır:

vekil sorunu için olduğu gibi, örneğin, bağlantı bir Proxy nesneyi geçirebilir birkaç, olduğu gibi).

This thread

proxy kullanıcı adı alma ve şifre dize düzgün çalışmak için bazı yararlı ipuçları olabilir. Bağladığınız makale biraz güncel değil.

+0

sayesinde onun şimdi güzel çalışıyor. –

+0

Kullanıcı adı ve şifre nedir? –

+0

@Gian, yukarıdaki kod proxy yapılandırmasını jvm kapsamı system.setProperty gibi ayarlayacak mı? –