我有一个请求范围的bean,我使用Richfaces @KeepAlive(ajaxOnly=true)
来保持bean在ajax请求之间保持活动状态。在我的页面上,我有一些a4j:commandButton
,并且支持bean没问题,在按钮点击之间保持活动状态。
问题是我需要使用a4j:htmlCommandLink
。当我点击链接时,它会在后端创建另一个bean,但我需要相同的bean,而不是新的bean。
在这里,我从代码中获得了一些信息:
@KeepAlive(ajaxOnly=true)
public class testBean
{
public void testMethod(ActionEvent ae) {
...
}
...
}
<a4j:htmlCommandLink value="Print" target="_blank"
actionListener="#{testBean.testMethod}" />
当我使用(点击)htmlCommandLink
?
答案 0 :(得分:0)
来自a4j:htmlCommandLink
:
<a4j:htmlCommandLink>
作为标准<h:commandLink>
请记住,此组件不使用ajax调用,因此该行为将作为对服务器的公共请求/响应。在您的bean中,将KeepAlive注释的行为更改为ajaxOnly=false
以避免这些问题。