我在 JSF2 中测试了新的 Flash 范围,但我发现它存在一个主要问题,或者我缺乏一些知识。
有一个页面:
<h:body>
Value in flash: #{flash.text}
<h:form>
<h:inputText value="#{flash.text}" />
<h:commandButton value="Test" /> <!-- Same behavior with faces redirect -->
</h:form>
</h:body>
我有一个场景:
- 输入一个值“foo”并单击测试
- 我得到'Flash中的价值:foo'
- 我用相同的地址打开新页面
- 我得到“闪存中的价值:”
- 我用相同的地址打开另一个新页面
- 我得到'Flash中的价值:foo '<-恕我直言,这是错误的!
重现性:在 Glassfish 3.1 和 JBoss AS 7 上 100% 测试
可能相同原因的不同问题:Removing JSF messages from flash
所以:
- 它是 JSF2 闪存所需的行为吗?
- 基于闪存的这个和其他注意到的问题,参考闪存实现是否应该被认为是有害的?