2010-11-19 11 views
1

Reuters'in RSS web hizmetlerinde, belirli ülkelerdeki yükleme rss beslemeleri, hem Kullanıcı Arabirimi hem de Arka Plan'da RSS beslemesi üzerine java.net.ProtocolException: Too many redirects atar. (Özel olarak iki ülke durumunda: INDIA ve USA).Reuters rss web hizmetlerine çok fazla yönlendirme

Bu sorunu nasıl çözebilirim? Bu problemi başarılı bir şekilde çözen var mı?

Şimdiden teşekkürler.

+0

Başarısız olan biri için örnek bir RSS URL'si sağlayabilir misiniz? Bu hata genellikle “A-> B-> C-> A” şeklindeki döngüsel yönlendirmelerden kaynaklanır, ancak belirli ülkeler için bir ontik olduğu için, dahili limiti vurmak için yeterli yönlendirmeler almanız mümkündür. Yönlendirmelerin yolunu takip edebilir ve zincirin aşağısındaki bir URL'den başlayabilirsiniz ... – Basic

+2

HttpClient sınıflarını kullanmayı denediniz mi? Bu hata, belki de "HttpUrlConnection" dan geliyormuş gibi geliyor. – CommonsWare

+0

@CommonsWare RSS beslemelerinin xml'sini ayrıştırmak için bir fabrika yöntemi kullanıyorum, işte buradaki URL 'URL url = new URL (urlString); \t \t \t \t \t \t \t \t InputSource inputSource = Yeni InputSource (url.openStream()); 'Bu kodu ayrıca Belgesi' (org.w3c.Document) 'Ayrıştırma için kullanılan . Bu durumda hangi alternatifi önerirsiniz? – Prasham

cevap

0

(Soru yorumlarında cevap bir topluluk wiki cevaba Dönüştürülen Question with no answers, but issue solved in the comments (or extended in chat) bakınız.). Yazdı

@CommonsWare:

Eğer HttpClient sınıflarını kullanmayı denediniz mi? Bu hata, belki de HttpUrlConnection'dan geliyormuş gibi geliyor.

Bu, Android'de yerleşik olduğundan ve Google'ın HTTP istekleri için önerilen bir seçim olduğundan HttpClient'e geçmeyi düşünebilirsiniz. Ben, henüz belirli bir problemle karşılaşmadığım halde, bu yüzden sizin durumunuza yardımcı olup olmayacağını bilmemekle birlikte, yönlendirme işlemlerini nasıl gerçekleştirdiğine dair daha iyi bir kontrole sahip olmanın yolları olduğunu düşünüyorum.

OP yazdı:

Ben RSS xml beslemeleri ayrıştırmak için bir fabrika yöntemini kullanın burada Bu kod ayrıca (org.w3c.Document) Çözümlenmesi Belge için kullanılır onun kod URL url = new URL(urlString); InputSource inputSource = new InputSource(url.openStream()); olduğunu.

Teşekkürler, öneriniz, kodda biraz değişiklik yapılarak çalışır. Bu metodu merkezileştirilmiş metodumda uyguladım ve bir çekicilik gibi çalıştı.