Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.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 2 如何在支持bean中检索Primefaces自动完成pogo选定项_Jsf 2_Primefaces - Fatal编程技术网

Jsf 2 如何在支持bean中检索Primefaces自动完成pogo选定项

Jsf 2 如何在支持bean中检索Primefaces自动完成pogo选定项,jsf-2,primefaces,Jsf 2,Primefaces,我在试着学习表情。我现在正在使用自动完成控件(使用Pojo)。显示器工作正常。我一直在努力检索所选对象并访问其任何属性。每当我试图访问bean中所选对象的属性时,就会得到一个nullPointerException。有人能帮我做这个吗?我的代码基于Primefaces简单pojo示例,位于:(http://www.primefaces.org/showcase-labs/ui/autoCompletePojo.jsf). 我的网页看起来是这样的: <h:form id="form">

我在试着学习表情。我现在正在使用自动完成控件(使用Pojo)。显示器工作正常。我一直在努力检索所选对象并访问其任何属性。每当我试图访问bean中所选对象的属性时,就会得到一个nullPointerException。有人能帮我做这个吗?我的代码基于Primefaces简单pojo示例,位于:(http://www.primefaces.org/showcase-labs/ui/autoCompletePojo.jsf). 我的网页看起来是这样的:

<h:form id="form">
<p:growl id="msg" showDetail="false"/>
<p:panel header="Test Form" toggleable="true">
        <h:outputLabel value="Player(s): " for="basicPojo" />
        <p:autoComplete value="#{autoCompleteBean.selectedPlayers}" 
                    id="basicPojo" completeMethod="#{autoCompleteBean.completePlayer}"
                    var="p" itemLabel="#{p.name}" itemValue="#{p}" converter="player" forceSelection="true" multiple="true">
            <p:ajax event="itemUnselect" listener="#{autoCompleteBean.handleUnselect}" />
            <f:facet name="itemtip">
                <h:panelGrid  columns="2" cellpadding="5">
                    <h:outputText value="eScholarId: " />
                    <h:outputText id="id-output" value="#{p.name}" />

                    <h:outputText value="Name: " />
                    <h:outputText id="name-output" value="#{p.number}" />

                    <h:outputText value="Email: " />
                    <h:outputText id="email-output" value="#{p.position}"/>
                </h:panelGrid>
            </f:facet>
        </p:autoComplete>

        <p:commandButton value="Submit" update="msg" action="#{autoCompleteBean.doMessage}"></p:commandButton>

</p:panel>

我像往常一样在faces.config文件中添加了转换器。

似乎将集合绑定到了autocomplete的值

<p:autoComplete value="#{autoCompleteBean.selectedPlayers}"/>

但是您应该将单个实例绑定到value属性

private Player selectedPlayer;

// getter and setter

<p:autoComplete value="#{autoCompleteBean.selectedPlayer}"/>
私人播放器选择播放器;
//接二连三

在“提交”按钮调用的方法中,您可以通过
此按钮访问该方法。selectedPlayer

似乎将集合绑定到自动完成的值

<p:autoComplete value="#{autoCompleteBean.selectedPlayers}"/>

但是您应该将单个实例绑定到value属性

private Player selectedPlayer;

// getter and setter

<p:autoComplete value="#{autoCompleteBean.selectedPlayer}"/>
私人播放器选择播放器;
//接二连三
在“提交”按钮调用的方法中,您只需通过
this.selectedPlayer
访问它