有人可以解释<dispatcher>ERROR</dispatcher>
的含义吗?我找不到任何关于它的例子。我想用Filter处理错误的请求(例如当有人写错字时),并从中转发到某个jsp文件。我写了以下代码:
<filter>
<filter-name>badRequestFilter</filter-name>
<filter-class>filter.BadRequestFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>badRequestFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
我知道我可以在<error-page>
中使用web.xml
,但我决定尝试一下(练习)。但是没有调用此过滤器并且没有捕获拼写错误。可能是什么原因?也许我误解了何时调用这种类型的过滤器。
谢谢你的关注。
答案 0 :(得分:2)
<dispatcher>ERROR</dispatcher>
设置过滤器仅应用于请求dispatched到错误页面。
但是如果您没有在web.xml中指定错误页面,则不会调用此过滤器。 (至少这是Tomcat中的行为)。