java - 修改Servlet参数

标签 java tomcat gwt

我有一个在 Tomcat 6.0 服务器上运行的 GWT Servlet。该服务器充当另一个服务的代理。此最终服务可能在我网络中的不同 IP 和/或端口中运行。

如何在不手动修改 web.xml 文件的情况下配置我的 GWT Servlet 以连接到我的任何服务?

我正在初始化我的 servlet:

  <!-- Servlets -->
  <servlet>
    <servlet-name>MyServlet</servlet-name>
    <servlet-class>com.proxy.MyServletServiceImpl</servlet-class>
    <init-param>
        <param-name>serverAddress</param-name>
        <param-value>192.168.1.10</param-value>
    </init-param>
    <init-param>
        <param-name>serverPort</param-name>
        <param-value>55005</param-value>
    </init-param>
  </servlet>

从我正在做的 MyServletSerciveImpl.java 文件中

private void loadConfig() {
    ServletConfig config = this.getServletConfig();
    serverAddress = config.getInitParameter("serverAddress");
    serverPort = Integer.valueOf(config.getInitParameter("serverPort"));
}

我的理想情况是此配置是默认配置,但应用一些配置文件(属性文件、xml、ini、cfg ......)我可以覆盖默认的 web.xml 值。

知道怎么做吗?

谢谢。

最佳答案

对于真正的动态配置,您可以将配置对象公开为 jmx bean,并让您的 servlet 使用该 bean。

中间解决方案是将配置放在不同的文件中,如 xml 或属性,或放在数据库表中,并在后台线程中定期从中读取。

关于java - 修改Servlet参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2285156/

相关文章:

java - Spring security Remember-me 无法正常工作,数据库表无法正常工作

java - 响应/浏览器中的重复 header 间歇性失败

java - 封装 "modules"的最佳 GWT CodeSplitting 设计

java - GET 显示插入文本框的值

java - 复选框 GWT 的可点击标签

java - 有没有办法检查概览按钮?

java - 比较字符串中各个字母的循环

java - 我无法在同一个文件上写入两次(java)

java - Tomcat 在自定义 CORS 过滤器上抛出奇怪的错误

spring - 仅在 IE8 中怎么可能出现 404 响应?