gpt4 book ai didi

java - ServletActionContext getAction 方法返回 null

转载 作者:行者123 更新时间:2023-11-30 06:49:39 25 4
gpt4 key购买 nike

我正在使用 servlet 过滤器,尝试获取与当前请求关联的操作。

我的过滤器的相关部分:

private ServletContext context;

public void init(FilterConfig config) throws ServletException {
this.context = config.getServletContext();
}

protected void doFilter(HttpServletRequest request, HttpServletResponse response,
FilterChain chain) throws IOException, ServletException {

ServletActionContext actionContext = new ServletActionContext(context, request, response);

Action action = actionContext.getAction();
// action == null

}

我的问题是 action 最终为空。两个上下文变量都填充了一个值,但由于某种原因它无法找到该操作。有任何想法吗?谢谢!

最佳答案

当控制权通过 ActionServlet 时,ServletActionContext 被初始化,所有必需的变量都被正确填充。

过滤器在ActionServlet之前执行,并且在过滤器方法中创建对象不会设置Action

这是主要原因,因为 ServletActionContext 的某些 getter 方法返回 null 值,因为它没有经过 ActionServlet,因此所有属性都没有初始化。

关于java - ServletActionContext getAction 方法返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43072965/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com