使用键盘上的后退按钮时jsf actionListener(param)和propertyListener之间的差异

使用键盘上的后退按钮时jsf actionListener(param)和propertyListener之间的差异,jsf,jsf-2,back-button,Jsf,Jsf 2,Back Button,我遇到了一个我已经修复的问题,但我不明白为什么修复程序可以工作,而原始代码不能工作。用代码解释它是最简单的: 我的entityBackingBean entityBB中有以下方法: public void standardLetterInit(Letter entity) { setEntity(entity); } public void standardLetterInit() { //without setEntity //rest of method } 以及

我遇到了一个我已经修复的问题,但我不明白为什么修复程序可以工作,而原始代码不能工作。用代码解释它是最简单的:

我的entityBackingBean entityBB中有以下方法:

public void standardLetterInit(Letter entity) {
    setEntity(entity);
}
public void standardLetterInit() {
    //without setEntity
    //rest of method
}
以及我的xhtml页面中的以下内容:

<h:commandLink actionListener="#{entityBB.standardLetterInit(varEntity)}"/>
编辑:


我刚刚注意到以下几点:如果我向standardLetterInit方法添加任何参数,即使是布尔值。。那么实体就不会改变。我现在更糊涂了。

我敢打赌浏览器缓存和巧合的结合。这个答案可能有帮助:我确实可以解除缓存,但这并不能解释为什么propertyActionListener可以工作,如果我在actionListener的方法调用中不使用任何参数,并且actionListener根本不工作的话。在我看来,如果是缓存的话,这两种方法都不起作用。但我可能错了。。!您有什么类型的托管bean?可视范围?它确实是可视范围。是的,这是巧合的部分。下次,请删除浏览器缓存以确保安全。
public void standardLetterInit() {
    //without setEntity
    //rest of method
}