HttpConversationContext

HttpConversationContext

我正在使用java ee 6并试图找出是否有可能从servlet或过滤器开始对话。到目前为止,我有以下代码:

一个方法:

private static HttpConversationContext getHttpConversationContext() {
    return Container.instance().deploymentManager().instance().select(HttpConversationContext.class).get();
}


然后我有:

final HttpConversationContext httpConversationContext = getHttpConversationContext();
httpConversationContext.associate((HttpServletRequest) request);
httpConversationContext.getCurrentConversation().begin(conversationId);


但这似乎不起作用。另外,当我尝试检查对话是否以以下代码开始时:

Conversation conversation = httpConversationContext.getConversation(conversationId);


对话始终为null,因为先前的代码无效。

有任何线索以正确的方式做到这一点吗?

请注意,尽管在标签中使用了jboss7,但我不介意是否发布了与另一台服务器相关的解决方案。野蝇。

非常感谢。

最佳答案

如果要以Java EE方式进行操作,则应将Conversation作用域会话Bean注入到Servlet中。

10-05 19:44