【问题标题】:Maintain sessionscope between pages redirect?维护页面重定向之间的会话范围?
【发布时间】:2012-08-21 20:54:20
【问题描述】:

如何在重定向之间维护SessionScoped 对象? 我有一个访问Stateless bean 的主页。

我还有一个按钮,它正在执行重定向 (FacesContext.getCurrentInstance().getExternalContext().redirect("/to/my/sevlet");) 到特定路径,并通过此调用 webservlet。 webservlet 本身会创建一些基于条件的响应,但目前这并不重要。

问题是:当我被重定向到 servlet 时,我丢失了在无状态 bean 初始访问期间设置的会话范围 bean 属性..

如何在页面切换/重定向之间维护会话范围?

@Stateless
class myStateless {
    @Inject
    MySessionBean sessionBean;

    private doSomething() {
        sessionBean.setSessionProperty(true);
    }
}


@SessionScoped
class MySessionBean {

    Boolean sessionProperty = false;
}


@WebServlet
class MyWebServlet {
    doGet(..) {
        out.println("session property status is" + String.valueOf(sessionBean.isSessionProperty()); //always false
    }
}

【问题讨论】:

  • Servlet 如何获得对该会话范围 bean 的引用? Servlet 是否在同一个应用程序中?

标签: java jsf jakarta-ee servlets


【解决方案1】:

我发现设置很好。我刚刚对无会话范围的 var 进行了引用调用。

【讨论】:

    猜你喜欢
    • 2012-08-01
    • 1970-01-01
    • 2017-08-18
    • 1970-01-01
    • 2021-09-14
    • 1970-01-01
    • 1970-01-01
    • 2013-03-28
    • 2011-12-07
    相关资源
    最近更新 更多