web.xml中用于站点基础页面的url-pattern

5

我有一个应用程序,位于URL“http://game.appspot.com/”。我需要从这个基本根目录调用一个servlet,这意味着调用servlet的相对路径应该是“/”,但当我执行以下操作时它不起作用:

<url-pattern>/</url-pattern>

在我的web.xml文件中,我不能像这样留空:
<url-pattern></url-pattern>

因为我在尝试将其部署到Google应用引擎时出现了错误。

我该怎么办?

谢谢!

1个回答

2

看起来有一种以欢迎文件servlet黑客的方式进行的较旧方法:

来自http://www.coderanch.com/t/359995/Servlets/java/Servlets-Mapping-root-path-exclusively

<servlet>
  <description></description>
  <display-name>test</display-name>
  <servlet-name>test</servlet-name>
  <servlet-class>Test</servlet-class>
</servlet>

<servlet-mapping>
  <servlet-name>test</servlet-name>
  <url-pattern>*.html</url-pattern>
</servlet-mapping>

<welcome-file-list>
  <welcome-file>index.html</welcome-file>
</welcome-file-list>

如果您使用 index.html,则需要在磁盘上拥有 index.html 文件,即使它是一个 0 字节的文件,也需要这样才能执行 servlet。我建议将 url-pattern 设置为其他文件扩展名,比如 *.xyz,然后在磁盘上关联一个 0 字节的 index.xyz 文件与您的 servlet(我还没有测试过,但应该可以工作)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接