2012-01-10 45 views
3

我在weblogic 10.3.3中有一個作爲war文件部署的web應用程序。現在我想讓這個應用程序成爲可聚集的。爲此,我使用Weblogic的HttpClusterServlet作爲負載平衡器。按照documentation我可以把這個servlet配置到web.xml中如何在web.xml外動態配置WebLogicCluster屬性

<servlet> 
    <servlet-name>HttpClusterServlet</servlet-name> 
    <servlet-class>weblogic.servlet.proxy.HttpClusterServlet</servlet-class> 

    <init-param> 
     <param-name>WebLogicCluster</param-name> 
     <param-value>server-1:7122|server-1:7123</param-value> 
    </init-param> 
    </servlet> 

的問題是,這個配置是很難在構建時的有線和不能在運行時進行重新配置。例如,我希望能夠動態添加5臺服務器。我有幾個想法來解決這個問題:

  1. 用自己的servlet實現擴展weblogic.servlet.proxy.HttpClusterServlet。這是不可能的,這個班是最後的。
  2. 使用servlet過濾器重新配置servlet。自從Java Servlet API 2.1開始,通過ServletContext().getServlet(String)無法再訪問該servlet,但沒有直接替換。
  3. 反思可能是一種選擇,但我想不出一個可靠的方法來訪問配置

我試圖重新初始化這個-PARAMS的所有外部失敗爲止。我願意接受任何解決方案。

回答