【发布时间】:2010-09-19 01:14:39
【问题描述】:
我正在尝试使用 SpringMVC 编写一个 Web 应用程序。通常我只是将一些虚构的文件扩展名映射到 Spring 的前端控制器并愉快地生活,但这次我将使用类似 REST 的 URL,没有文件扩展名。
将上下文路径下的所有内容映射到前端控制器(我们称之为“app”)意味着我也应该处理静态文件,这是我不想做的事情(为什么要重新发明另一个weel?),因此与 tomcat 的默认 servlet(我们称之为“tomcat”)进行某种组合似乎是可行的方法。
我得到了工作做类似的事情
<servlet-mapping>
<servlet-name>app</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>tomcat</servlet-name>
<url-pattern>*.ext</url-pattern>
</servlet-mapping>
并为我的静态内容的每个文件扩展名重复后者。我只是想知道为什么以下设置(对我来说与上面的设置相同)不起作用。
<!-- failed attempt #1 -->
<servlet-mapping>
<servlet-name>app</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>tomcat</servlet-name>
<url-pattern>*.ext</url-pattern>
</servlet-mapping>
<!-- failed attempt #2 -->
<servlet-mapping>
<servlet-name>app</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>tomcat</servlet-name>
<url-pattern>/some-static-content-folder/*</url-pattern>
</servlet-mapping>
谁能解释一下?
【问题讨论】:
标签: java jakarta-ee servlets spring-mvc web.xml