如何使用primefaces的ajax刷新jstl测试?

例如:当我点击按钮A 。 我得到以下文字: you have choosed A

但是当我更改按钮时,我会得到相同的文本,尽管#{bean.str}的值会发生变化

这是我的代码:

 

我正在寻找一种方法来刷新JSTL 测试时单击按钮。

JSTL在JSF视图构建时运行,而不是在JSF视图渲染时。 但是,提交的值在此特定示例中仅视图构建时间之后设置为bean属性。 视图构建时间在JSF RESTORE_VIEW阶段运行,但bean属性在JSF UPDATE_MODEL_VALUES阶段设置。

您需要在渲染时间内评估条件。 使用为此提供的JSF组件的rendered属性。

    

此外,您应该在PrimeFaces组件中使用 ,而不是 。 此外,您应该确保在 (以及等效地, )中引用为tabView的组件涵盖上述三个组件。 这是一个完整的启动示例:

            

也可以看看:

  • JSF2 Facelets中的JSTL有意义吗?

您可以将所有条件放在面板中,然后在按钮单击上重新渲染

在3 outputText上使用“rendered”属性