使用有条件地渲染
我正在使用jstl进行小型测试。 并且它不起作用它应该如何工作
这是小代码:
${id} //printing 4 0}"> //is not rendered //is not rendered
我不知道出了什么问题。 在显示器中我只看到4,没有别的。
JSTL标记和JSF UI组件不会像编码所期望的那样同步运行。 长话短说: JSF2 Facelets中的JSTL ……有意义吗? 仔细阅读。
在您的特定情况下,JSTL
标记条件似乎取决于JSF
标记的结果。 在
运行时,在视图构建期间,
尚未运行,因为它在预渲染视图事件期间运行。 因此#{mBlog.blog.id}
始终为null
或任何其他默认值。
您需要使用JSF组件的rendered
属性。 它还可以使您的代码更清晰。
但是,在调用操作时,您可能会遇到另一个潜在的未来问题。 确保将bean放在视图范围中,而不是放在请求范围中。