Jsf 使用id="#{…};原因java.lang.IllegalArgumentException:不允许使用空id属性
我需要解决在JSF中为某些组件生成动态ID的问题 看看这个例子:Jsf 使用id="#{…};原因java.lang.IllegalArgumentException:不允许使用空id属性,jsf,el,Jsf,El,我需要解决在JSF中为某些组件生成动态ID的问题 看看这个例子: <h:outputText id="#{bean.id}" value="#{bean.value}" /> 当我查看生成的HTML输出时,组件的ID是空的。这是如何造成的,我如何解决 你说得对。我在datatable中使用它 如果#{bean}表示在var属性中声明的当前迭代对象,则可能发生这种情况,如下所示: <h:dataTable value="#{someBean.beans}" var="bean"
<h:outputText id="#{bean.id}" value="#{bean.value}" />
当我查看生成的HTML输出时,组件的ID是空的。这是如何造成的,我如何解决
你说得对。我在datatable中使用它 如果
#{bean}
表示在var
属性中声明的当前迭代对象,则可能发生这种情况,如下所示:
<h:dataTable value="#{someBean.beans}" var="bean">
<h:column>
<h:outputText id="#{bean.id}" value="#{bean.value}" />
<h:dataTable value="#{someBean.beans}" var="bean">
<h:column>
<span id="#{bean.id}">#{bean.value}</span>
#{bean.value}
<h:dataTable value="#{someBean.beans}" var="bean">
<h:column>
<h:outputText id="id" value="#{bean.value}" />
- (您可以用“动态ID”替换“JSTL”)
和
。或者把它做成复合组件。你的建议救了我的命!谢谢:)
<h:dataTable value="#{someBean.beans}" var="bean">
<h:column>
<span id="#{bean.id}">#{bean.value}</span>
<h:dataTable value="#{someBean.beans}" var="bean">
<h:column>
<h:outputText id="id" value="#{bean.value}" />