gpt4 book ai didi

struts2: ActionContext.getContext();返回空值

转载 作者:行者123 更新时间:2023-12-02 10:52:34 31 4
gpt4 key购买 nike

最近我将 struts2 版本从 2.0.11 更新到了当前的 2.2.3。不幸的是,我现在遇到了一些奇怪的问题,到目前为止我还无法解决。

当我尝试获取 ActionContext 时:

ActionContext context = ActionContext.getContext();  
System.out.println("context: " + context);

上下文现在为空!这里奇怪的是,根据 API 的说法,它不能为 null -> getContext API desc

这似乎不是一个常见问题,因为我没有通过谷歌找到类似的案例。由于我刚刚更新struts2版本后出现问题,我尝试交换不同的库,但没有更进一步。因此我希望你们能帮助我!

我不知道如何尝试解决这个问题。

问候奥茨

.

编辑1:

你好,umeshawasthi!是的,它在以前的版本中运行了很长一段时间。不幸的是,日志文件没有告诉我太多信息。只是当我尝试访问 ActionContext.getContext(); 时发生 NullpointerException;对象。

这是我使用它的一个代码示例

public CharServiceImpl(){  
ActionContext context = ActionContext.getContext();
//currently it crashes here since the context variable is null
Map<String,Object> appCon = context.getApplication();
if (appCon != null){
charIdsToUpdate = (ArrayList<Integer>) appCon.get("charIdsToUpdate");
}
}

@史蒂文·贝尼特斯:我正在使用FilterDispatcher(但是,我不得不承认我什至不知道还有不同的......)

顺便说一句:我在过去几天尝试通过“使用堆栈交换登录”功能登录。我只获得了 3 个“运行点”,但没有登录公式?!现在我用了我的 Gmail 帐户,这不是我真正想做的,但我不想让你等待我的 react 。

最佳答案

尝试使用 ServletActionContext 创建 ActionContext

class Abc implements ServletRequestAware
{
HttpServletRequest request;
public CharServiceImpl()
{
ActionContext actionContext = ServletActionContext.getActionContext();
}

public void setServletRequest(HttpServletRequest request)
{
this.request = request;
}

public HttpServletRequest getServletRequest()
{
return this.request;
}
}

关于struts2: ActionContext.getContext();返回空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7300739/

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