我有一个 Java Web 应用程序,它使用安全约束来锁定对资源的访问。当 Ajax 请求需要身份验证时,我试图操纵 HTTP 401 响应,因此我创建了一个过滤器,用于观察响应中的 HTTP 状态并在需要时进行相应的修改。
问题是,似乎如果需要身份验证,过滤器直到 401 被发送到浏览器之后才会被调用。似乎安全约束在请求处理链中的过滤器之前。我的过滤器的 url 模式比任何安全约束都更通用。平台是 WebSphere。
我看不到 Servlet 2.5 规范中指定了安全约束和过滤器的优先级。我错过了什么吗?