访问Restful服务时是否可以启动接缝对话

时间:2016-10-26 10:23:08

标签: java rest jboss-seam

我正在使用java7和seam jboss。

我在pages.xml中设置了一个必需会话和无会话,以​​防止书签访问受保护的页面。但是现在的问题是,访问时的Restful服务总是重定向到no-conversation-view-id,因为访问Rest时我们不会开始对话。

Restful组件是否可以开始对话? 我不想用@Begin注释每个Rest方法。

谢谢,

1 个答案:

答案 0 :(得分:0)

上下文定义命名空间,一组上下文变量。这些工作与servlet规范中的session或request属性非常相似。您可以将您喜欢的任何值绑定到上下文变量,但通常我们将Seam组件实例绑定到上下文变量。

因此,在上下文中,组件实例由上下文变量名称标识(这通常但不总是与组件名称相同)。您可以通过Contexts类以编程方式访问特定范围内的命名组件实例,该类提供对Context接口的多个线程绑定实例的访问:

用户user =(用户)Contexts.getSessionContext()。get(" user"); 您还可以设置或更改与名称关联的值:

Contexts.getSessionContext()。set(" user",user); 但是,通常我们通过注入从上下文中获取组件,并通过outjection将组件实例放入上下文中。

4.1.9。上下文搜索优先级

有时,如上所述,组件实例是从特定的已知范围获得的。其他时候,按优先级顺序搜索所有有状态范围。订单如下:

事件背景 页面上下文 会话语境 会话上下文 业务流程上下文 应用背景 您可以通过调用Contexts.lookupInStatefulContexts()来执行优先搜索。每当您从JSF页面按名称访问组件时,都会进行优先级搜索。 Surc:谷歌