如何配置java rome fetcher以用于代理和身份验证

时间:2011-10-28 20:32:01

标签: java rss rome

我试图使用java rome-fetcher获取rss feed以进行处理。当我有直接上网时,一切正常。

但是,我需要能够在代理服务器后面运行我的应用程序。

我一直无法弄清楚如何用罗马收割机完成这项工作。

我知道jvm

System.setProperty("http.proxyHost", proxy); System.setProperty("http.proxyPort", proxyPort);

黑客,但这不是一个我不想解释的原因。

使用HttpClient,你通常会做这样的事情。

DefaultHttpClient client = new DefaultHttpClient(); HttpHost proxyTarget = new HttpHost("proxy.server.com", 4444); client.getParams().setParameter(ConnRoutePNames.DEFAULT_PROXY, proxyTarget);

是否有人如何将代理设置和身份验证凭据分配给rome-fetcher?

3 个答案:

答案 0 :(得分:0)

设置http.proxyHosthttp.proxyPort是目前暂时使用 http proxy 的唯一选择。

答案 1 :(得分:0)

因为System.setProperty(...)是rome-fetcher的唯一代理选项,所以我最终下载了rome-fetcher源的副本并对底层http客户端进行了修改,因此它可以处理不同的代理配置。

答案 2 :(得分:0)

Fetcher在罗马1.6版中已被弃用,将在2.0版中删除:

https://github.com/rometools/rome/issues/276

给出的原因之一是用户无法完全控制底层HTTP连接 - 例如无法指定代理。建议直接使用Apache HttpClient。