java - 创建一个过滤器来捕获所有 URL

标签 java struts websphere

我正在 try catch 向 WAS 请求的所有 URL。我正在 WAS 6.0 上运行一个 Web 应用程序,并且我在 web.xml 中定义了一个这样的过滤器

<filter>
      <filter-name>StatusValidationFilter</filter-name>
      <filter-class>com.test.StatusValidationFilter</filter-class>

</filter>

<filter-mapping>
        <filter-name>StatusValidationFilter</filter-name>
        <url-pattern>/*</url-pattern>
        <dispatcher>REQUEST</dispatcher>
        <dispatcher>FORWARD</dispatcher>
        <dispatcher>ERROR</dispatcher>
</filter-mapping>

但是当我收到 404 错误时,过滤器不会被调用,就像 WAS 只是中断应用程序执行一样,所以问题是,过滤器配置正确吗?

如果我尝试 .do url 有效,但如果我尝试生成 404 错误的 url,则不会调用过滤器。

最佳答案

过滤器看起来没问题。但在过滤器内处理错误是一种不好的做法。

您应该使用 <error-page> tag .

这样,在重定向期间过滤器链仍然被维护。

关于java - 创建一个过滤器来捕获所有 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9823584/

相关文章:

java用户输入菜单无法选择选项

java - 如何从 Java 运行 Maven?

java - MouseListener:判断是否 mousePressed .getSource() == MouseReleased .getSource()

java - 如何使用基于 Java 的配置来配置 Spring Batch StepScope?

java - 如何在java web中切换语言

java - <嵌套:hidden> field missing id

java - Websphere Application Server 上的应用程序启动时未调用 MDB 的 ejbCreate() 方法

java - 使用 EJB 异步方法的正确方法

java - Struts 2 这个配置是多余的吗?

java - 在 WebSphere 8.5 中覆盖 EJB 绑定(bind)名称