【问题标题】:After changing the path to '/', why does apache tomcat call the servlet's doGet method on start/restart?将路径更改为'/'后,为什么apache tomcat在启动/重启时会调用servlet的doGet方法?
【发布时间】:2021-12-15 00:04:50
【问题描述】:

我正在将 apache tomcat 的上下文路径配置为 root ('/'),​​但是在这样做之后,我注意到每当我在 eclipse 中启动或重新启动服务器时,都会调用 root 的 servlet 的 doGet 方法。

这就是我所做的。

  1. 在我的 Web 项目设置中,我将上下文路径更改为“/”。
  2. 我从我的 tomcat 服务器中删除了 Web 应用程序,并在其上重新部署了它。
  3. 我配置了一个 url 映射到“/”的 servlet,这样我就可以访问 localhost:8080/ 并且我的 servlet 会被调用。

我添加了一个“System.out.println("Hello World");”在该 servlet 的 doGet 方法中,所以我注意到当我在 elcipse 中启动/重新启动 tomcat 服务器时,会调用 servlet 的 doGet 方法。

为什么会发生这种情况,这是正常行为吗?我想servlet的doGet方法只有在对该servlet发出GET请求时才会被调用,所以我不明白为什么在eclipse中启动/重启tomcat服务器时会调用它。

【问题讨论】:

    标签: java eclipse tomcat


    【解决方案1】:

    Tomcat 不做任何事情。但是 Eclipse 的 WTP 插件会在所有配置的连接器上发送一个对 / 的真实请求,以检查服务器是否正在运行。如果 Tomcat 应答 Eclipse 中服务器的状态从 starting 变为 started/debugging

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-01
      • 2012-03-29
      • 1970-01-01
      • 2016-01-19
      相关资源
      最近更新 更多