9

我想实现以下目标:

/webapp-context/Page-1               -> Handled by my custom "ContentServlet"
/webapp-context/Another-Page         -> Handled by my custom "ContentServlet"
/webapp-context/Page-with-long-title -> Handled by my custom "ContentServlet"

/webapp-context/_cms/<something>.zul -> Handled by ZK framework

我最近的尝试看起来像这样(web.xml 提取):

  <servlet-mapping>
    <servlet-name>zkLoader</servlet-name>
    <url-pattern>*.zul</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
    <servlet-name>myContentServlet</servlet-name>
    <url-pattern>/*</url-pattern>
  </servlet-mapping>

不幸的是,现在我的内容 servlet 处理所有请求(我认为更具体的模式优先?)。

如果我将我的内容 servlet 映射到模式“/webapp-context/content/*”,则不存在冲突,但这不是我想要的。

谢谢你的时间。

4

1 回答 1

11

我刚刚通过这个问题找到了解决方案:Difference between / and /* in servlet mapping url pattern

使用 '/' 而不是 '/*' 对我有用。

<servlet-mapping>
  <servlet-name>myContentServlet</servlet-name>
  <url-pattern>/</url-pattern>
</servlet-mapping>
于 2012-12-03T22:52:41.690 回答