Ich habe 2 Datenbanktabellen, die miteinander verwandt sind;Wie verhindert man, dass f: selectItems leere Zeilen anzeigt?
Mitarbeiter und Kontakt
Ich möchte ein Dropdown-Menü für Mitarbeiter erstellen und anzuzeigen Mitarbeiter Vornamen und Nachnamen, die eine Spalte in der Contact-Tabelle sind.
<h:selectOneMenu id="employeeDropdown" value="#{employeeController.activeEmployee}">
<s:selectItems id="activeEmployeeList" value="#{employeeController.activeEmployees}" var="emp" itemValue = "#{emp}" label="#{emp.contact.firstName}" />
</h:selectOneMenu>
Die Kontakt Tabelle erlaubt die erste Namensspalte und Nachname Spalte leer zu sein, da es leer einige der angezeigte Wert auf den selectItems sind leere Strings erlaubt.
Wie kann ich verhindern, dass diese leeren Vornamen oder leeren Nachnamen angezeigt/gerendert werden?
Zu der Zeit, wenn Sie List oder List of SelectItem zu dieser Zeit erstellen, können Sie das leere Feld, das als Datensatz in der Liste hinzugefügt werden soll, überprüfen und ignorieren. –
Zwei Lösungen, 1. in dem Moment, in dem Sie sie aus db laden, verwenden Sie einen Flächenkonverter für dieses Dropdown, so dass Sie nur nicht leere Werte zurückgeben. –