Primefaces selectOneMenu f:选择项不更新

时间:2017-11-24 17:43:06

标签: jsf primefaces

我使用的是Primefaces 6.0,我的问题如下: 首先,这是Code Snippet

.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core"
>
<h:head><title>HelpMeStackoverflow</title></h:head>
<h:body>
<h:form id="form">
...
<p:outputLabel for="vorname1" value="Vorname 1"/>
<p:inputText id="vorname1" value="#{bean.p1vorname}"/>
<p:message for="vorname1"/>

<p:outputLabel for="zuname1" value="Zuname 1"/>
<p:inputText id="zuname1" value="#{bean.p1zuname}"/>
<p:message for="zuname1"/>

<p:outputLabel for="vorname2" value="Vorname 2"/>
<p:inputText id="vorname2" value="#{bean.p2vorname}"/>
<p:message for="vorname2"/>

<p:outputLabel for="zuname2" value="Zuname 2"/>
<p:inputText id="zuname2" value="#{bean.p2zuname}"/>
<p:message for="zuname2"/>

<p:selectOneMenu id="dropdownvalue"
                 value="#{bean.dropdownvalue}"
                 required="true"
                 requiredMessage="Bitte ausw&auml;hlen!">
    <f:selectItem itemLabel="Bitte ausw&auml;hlen" noSelectionOption="true"/>
    <f:selectItem
            itemLabel="#{bean.p1vorname} #{bean.p1zuname}"
            itemValue="1"
            itemDisabled="#{bean.p1zuname.isEmpty()}"/>
    <f:selectItem
            itemLabel="#{bean.p2vorname} #{bean.p2zuname}"
            itemValue="2"
            itemDisabled="#{bean.p2zuname.isEmpty()}"/>
</p:selectOneMenu>
<p:message for="dropdownvalue"/>
...
</h:body>
</html>

@ManagedBean(name = "bean")
@RequestScoped
public class MyController implements Serializable {

...
private String p1zuname;
private String p1vorname;
private String p2zuname;
private String p2vorname;
...

// autogenerated getters/setters

}

Empty Strings in Dropdown

Dropdown只包含空字符串。我调试了属性的集合* -Methods并且值在。这里的问题似乎是p:selectOneMenu或f:selectItem。

用于:

  • JPA 2.1
  • Mojarra 2.2.1
  • Tomcat 9.0.0.M21
  • Java 1.8下的所有内容

1 个答案:

答案 0 :(得分:0)

我在所有的p:inputTexts

中添加了一些ajax
<p:ajax event="blur" process="vorname1 zuname1 vorname2 zuname2"
                            update="dropdownvalue"/>

现在它可以正常工作。