1

我正在尝试设置一个 servlet,以便任何请求/foo/*都将转到我的Fooservlet,除了 形式的请求/foo/bar/*,它会转到那个Bar。但是,我想/foo/bar转到Fooservlet,而不是那个Bar。有没有办法只使用 web.xml 中的 url-patterns 来做到这一点?

我的映射:

<servlet-mapping>
    <servlet-name>Bar</servlet-name>
    <url-pattern>/foo/bar/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>Foo</servlet-name>
    <url-pattern>/foo/*</url-pattern>
</servlet-mapping>

我已经尝试删除星号并尝试了其他一些模式,但我能看到的唯一方法是对 进行特定映射/foo/bar,尽管似乎应该有更好的方法。

4

1 回答 1

0

如果您使用的是 servlet 规范 v2.5 或更高版本,那么您可以为同一个servlet 映射提供多个url-pattern元素,例如:

<servlet-mapping>
  <servlet-name>Foo</servlet-name>
  <url-pattern>/foo/*</url-pattern>
  <url-pattern>/foo/bar</url-pattern>
</servlet-mapping>
于 2015-03-17T19:36:06.750 回答