Servlets 如何发布到对话范围bean或从servlet访问此bean

Servlets 如何发布到对话范围bean或从servlet访问此bean,servlets,ejb,conversation-scope,Servlets,Ejb,Conversation Scope,在这个场景中,我有一个客户端网站,需要将数据发布到服务器网站。在post过程中,服务器打开一个登录页面对客户端进行身份验证,并在成功进行身份验证后将数据存储在数据库中 我正在使用javaee6、jsf和ejb 问题: 1.我正在一个servlet上发布,但无法获得会话范围bean,因此我可以在登录屏幕上显示发布的数据,同时将其存储在会话范围bean中。成功登录后,从bean获取数据并存储在数据库中 二,。我可以直接发布到带有会话范围支持bean的页面吗 三,。我的一个朋友提到了jaas,但没有时

在这个场景中,我有一个客户端网站,需要将数据发布到服务器网站。在post过程中,服务器打开一个登录页面对客户端进行身份验证,并在成功进行身份验证后将数据存储在数据库中

我正在使用javaee6、jsf和ejb

问题: 1.我正在一个servlet上发布,但无法获得会话范围bean,因此我可以在登录屏幕上显示发布的数据,同时将其存储在会话范围bean中。成功登录后,从bean获取数据并存储在数据库中

二,。我可以直接发布到带有会话范围支持bean的页面吗

三,。我的一个朋友提到了jaas,但没有时间好好解释。我能用这个技术吗

谢谢,
czetsuya

我提出的解决方案是读取托管bean的post-construct方法中发布的参数:

@PostConstruct
public void init() {
    if (FacesContext.getCurrentInstance() != null) {
        ExternalContext context = FacesContext.getCurrentInstance().getExternalContext();
        Map<String, String> requestParameters = context.getRequestParameterMap();
        if (requestParameters != null) {
            beginConversation();
        }
    }
}

这不是如何从servlet访问对话范围的解决方案……这是您个人问题的解决方案。您不应该将其视为一个答案,因为您不是从servlet访问会话范围的bean。这是一个旧的解决方案: