Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 可编辑数据表中的SelectOne菜单在选择后显示ItemValue而不是itemLable_Jsf_Primefaces_Jsf 2 - Fatal编程技术网

Jsf 可编辑数据表中的SelectOne菜单在选择后显示ItemValue而不是itemLable

Jsf 可编辑数据表中的SelectOne菜单在选择后显示ItemValue而不是itemLable,jsf,primefaces,jsf-2,Jsf,Primefaces,Jsf 2,我有一个可编辑的数据表,其中一列是SelectOneMenu,它的用户名是itemlable,id是itemValue 我的Jsf页面如下 <h:form styleClass="form-horizontal" id="assignIssueId"> <p:dataTable id="dataTableId" var="issue" value="#{assignIssueController.issueList}" e

我有一个可编辑的数据表,其中一列是SelectOneMenu,它的用户名是itemlable,id是itemValue 我的Jsf页面如下

<h:form styleClass="form-horizontal" id="assignIssueId">
            <p:dataTable id="dataTableId" var="issue"
                value="#{assignIssueController.issueList}" editable="true"
                editMode="cell" widgetVar="cellCars">
                <f:facet name="header">
                     Cell Editing with Click and RightClick
                 </f:facet>
                <p:ajax event="cellEdit"
                    listener="#{assignIssueController.onCellEdit}" />
                <p:column headerText="Issue Number">
                    <h:outputText value="#{issue[0]}" />
                </p:column>
                <p:column headerText="Issue Describtion">
                    <h:outputText value="#{issue[1]}" />
                </p:column>
                <p:column headerText="Issue Type">
                    <h:outputText value="#{issue[2]}" />
                </p:column>
                <p:column headerText="Assign To">
                    <p:cellEditor>
                        <f:facet name="output">
                            <h:outputText value="#{issue[3]}" />
                        </f:facet>
                        <f:facet name="input">
                            <h:selectOneMenu value="#{assignIssueController.userId}"
                                style="width:100%">
                                <f:selectItems value="#{assignIssueController.userlist}"
                                    var="ul" itemLabel="#{ul.firstName}" itemValue="#{ul.id}" />
                            </h:selectOneMenu>
                        </f:facet>
                    </p:cellEditor>
                </p:column>
                <p:column headerText="Issue Type">
                    <h:outputText value="#{issue[4]}" />
                </p:column>
            </p:dataTable>
        </h:form>

使用单击和右键单击进行单元格编辑

这里的问题是我可以编辑SelectOne菜单,但在从drop dowm中选择值后,它会显示我新选择的用户的id,而不是dataTable中的名称看起来像是一个转换错误。。
用户对象的“id”属性是否可能与您将所选值指定给的“userID”类型不同,或者“id”不是基元类型或字符串,因此您需要自定义转换器?

问题[3]要显示什么?它的列表,其中一个可以根据要分配的问题选择用户。您应该将ul设置为itemValue,然后当您选择一个用户时,您触发一个事件,在该事件中,您将所选用户设置为问题[3],两者都是int类型。ok,奇怪。。。但由于您已经准备好在项目中使用primefaces,您可以尝试使用。。。