Jsf facelets ui:片段忽略渲染属性
我对这段代码有一种非常奇怪的行为:Jsf facelets ui:片段忽略渲染属性,jsf,jsf-2,primefaces,facelets,Jsf,Jsf 2,Primefaces,Facelets,我对这段代码有一种非常奇怪的行为: <ui:fragment rendered="#{price.guestIdTrue}"> <b>PRICE_GUEST_ID_TRUE : #{price.guestIdTrue}</b> <h:outputText>#{Global.guestTypeMap[price.guestId]} #{price.guestIndex}</h:outputText> </u
<ui:fragment rendered="#{price.guestIdTrue}">
<b>PRICE_GUEST_ID_TRUE : #{price.guestIdTrue}</b>
<h:outputText>#{Global.guestTypeMap[price.guestId]} #{price.guestIndex}</h:outputText>
</ui:fragment>
PRICE_GUEST_ID_TRUE:#{PRICE.guestIdTrue}
#{Global.guestTypeMap[price.guestId]} #{price.guestIndex}
即使渲染条件为false,也会
价格\客人\身份证\正确:错误1
1是#{price.guestIndex}
ui名称空间定义正确,可以在其他Facelet上使用
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui"
xmlns:t="http://myfaces.apache.org/tomahawk">
你知道会发生什么吗
提前感谢。您似乎在一个迭代标记/组件中使用了
,其中{price}
实际上是当前迭代的变量,例如JSTL
标记,或JSF
或
组件,同时使用早期版本的Mojarra。在这些情况下,#{price}
在EL范围内评估时不可用
您需要使用
,或者将Mojarra版本升级到最新版本。嗨,Balus。我刚换了衣服,不客气。这种有问题的组合对我来说是新的。这听起来像是战斧中的一个(部分)保存状态的错误。你用的是什么版本?当前为1.1.11,另一个为1.1.10。请注意,
不会呈现任何HTML标记,如果您不使用任何特定于HTML的属性,例如id
,styleClass
等,如果这是改用
的唯一原因。
应该可以与
配合使用。我正在将myfaces 2.1.4与tomahawk20-1.1.11.jar一起使用,我想我将放弃tomahawk。我检查了这个问题,在myfaces中有一些与(myfaces-3239和myfaces-3146)相关的问题,这些问题在2.1.2中得到了解决,但是tomahawk 1.1.11有一些共享代码,当时的最新版本是2.1.1,所以1.1.11有这个bug,但它将在下一个版本中解决。