我需要在其中创建一个带有微调器或输入文本的selectManyMenu,以便能够获得以下结果:
在我的代码之后:
<p:selectManyMenu id="opt-list" value="#{myBean.selectedOptionList}"
converter="optConverter" filter="true"
filterMatchMode="contains" showCheckbox="true"
var="selectedOpt">
<f:selectItems value="#{myBean.optionList}" var="opt" itemLabel="#{opt.name}" itemValue="#{opt}" />
<p:column>
<h:outputText value="#{selectedOpt.name}" />
</p:column>
<p:column>
<p:spinner value="#{selectedOpt.nb}" size="1" />
</p:column>
</p:selectManyMenu>
这个想法是用户应该能够选择一个选项并指定一个数字。 但在执行期间,我收到以下警告/错误:
WARNING [javax.enterprise.resource.webcontainer.jsf.lifecycle] .....\.....\my-page.xhtml @65,84 value="#{selectedOpt.nb}": JBWEB006016: Target Unreachable, identifier ''selectedOpt'' resolved to null: javax.el.PropertyNotFoundException: ....\......\my-page.xhtml @65,84 value="#{selectedOpt.nb}": JBWEB006016: Target Unreachable, identifier ''selectedOpt'' resolved to null
答案 0 :(得分:0)
您可以解决您的&#34;标签&#34;将<f:selectItem>
的itemValue替换为#{selectedOpt}
而非#{opt}
<p:selectManyMenu id="opt-list" value="#{myBean.selectedOptionList}"
converter="optConverter" filter="true"
filterMatchMode="contains" showCheckbox="true"
var="selectedOpt">
<f:selectItems value="#{myBean.optionList}" var="opt" itemLabel="#{opt.name}" itemValue="#{selectedOpt}" />
<p:column>
<h:outputText value="#{selectedOpt.name}" />
</p:column>
<p:column>
<p:spinner value="#{selectedOpt.nb}" size="1" />
</p:column>
请记住,这不会解决您的微调器问题。请参阅:http://forum.primefaces.org/viewtopic.php?f=3&t=16964