2012-04-25 20 views
0

UrlRewriteFilter取決於HttpClient的-3.1,而Couchbase client依賴的HttpClient-4.0。UrlRewriteFilter和CouchbaseClient取決於不同版本的HttpClient

我想出了兩種選擇:

  1. 使用兩種不同版本的HttpClient一起

  2. 與其他解決方案

更換UrlRewriteFilter我發現,使用的HttpClient 3.1和4.0一起是好的(reference),但它是最好的方式?

至於第二個選擇,我使用代理,重定向,以及與UrlRewriteFilter轉發。如果我使用Spring MVC,重定向和轉發將是可能的。但我不知道如何在不使用Apache Web服務器或haproxy的情況下代理某些URI。

歡迎對此問題提出任何建議或更正。

回答

1

HttpClient 3.1和4.0可以共存,沒有問題。我認爲目前最好的解決方案就是做到這一點。例如,形成UrlRewriteFilter總是很有誘惑力。但最終,這種解決方案只是耗時。

無論你在做什麼,都不要使用Apache來代理som URL,你只會發瘋,你永遠無法在開發中使用Jetty,並且必須維護不在代碼庫中的重寫,這是最糟糕的解決方案。