sessionscoped bean的会话清理后,可变值不会重置
-
26-09-2019 - |
题
<h:form>
<h:commandButton value="Buy" styleClass="button-buy" actionListener="#{basketCount.incrementBasketCount}" immediate="true">
</h:commandButton>
</h:form>
JSF2部分:
<li class="basket">
#{basketCount.basketCount}
</li>
面孔:
<managed-bean>
<managed-bean-name>basketCount</managed-bean-name>
<managed-bean-class>main.BasketCount</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
简单的bean进行操作聆听:
package main;
import java.io.Serializable;
public class BasketCount implements Serializable {
private static final long serialVersionUID = -4576074045587545642L;
int inBasketCount = 0;
public void incrementBasketCount(javax.faces.event.ActionEvent event) {
inBasketCount++;
}
public int getBasketCount() {
return inBasketCount;
}
}
用例:
1. 单击“购买”按钮
2. 篮子的内容已增加
3. 在FF中单击Shift-Ctrl-Del(清洁cookie和Cache)并刷新
4. 篮子的柜台保持不变
据我了解,会话范围指定的是该计数器(步骤 2)仅在会话范围内增加,并且在cookie之后,应重置缓存清理?
问题,没有。
解决方案
通过提供持续的饼干来解决
不隶属于 StackOverflow