【问题标题】:Modify the filter chain - Or select servlet to respond to request using filter修改过滤器链 - 或选择 servlet 使用过滤器响应请求
【发布时间】:2010-06-11 01:30:28
【问题描述】:

我正在尝试使用过滤器来映射请求。我尝试这样做有两个原因,首先是动态生成 URI 并将它们映射到适当的 servlet,其次是捕获未注册的 URI 并适当地处理它们。

所以我使用了一个包罗万象的过滤器来处理 URI 并确定响应。我想要某种方式来修改过滤器链,或者某种方式来设置响应来自过滤器内的请求的 servlet。我使用filterConfig.getServletContext().getRequestDispatcher().forward() 发送到jsp 没有成功,理想情况下虽然我想映射到一个servlet 但不知道如何。

我不在 servlet 中执行此操作的原因是我有一些在 web.xml 中固定的 URI,如果我使用包罗万象的 servlet,这些 URI 不会被映射。这可能吗,它是干净的还是会变得很乱?

【问题讨论】:

    标签: java filter


    【解决方案1】:

    我认为这不是正确的做法。

    如果你看看 Web MVC 框架做了什么,它们有一个前端控制器 servlet,它将 URL 映射到控制器,控制器本身可以接受 HTTP 请求并返回 HTTP 响应。我认为这是一个值得效仿的设计,而不是你的过滤理念。

    【讨论】:

    • 好的,所以我们说的是 servlet 链?有例子吗?
    • 当然 - Spring MVC。除了控制器不扩展 HttpServlet。
    猜你喜欢
    • 2010-11-27
    • 2012-07-28
    • 1970-01-01
    • 2012-02-29
    • 2017-05-26
    • 2012-02-17
    • 2016-11-19
    • 2013-04-12
    • 1970-01-01
    相关资源
    最近更新 更多