Quiero hacer un menú desplegable de seleccionar un menú para que pueda seleccionar un estado en mi pregunta. ¿Es posible hacer que f: selectItem sea más flexible teniendo en cuenta lo que sucede si el orden de las enumeraciones cambia, y si la lista era grande? ¿Y podría hacerlo mejor? ¿Y es posible "seleccionar" automáticamente el elemento que tiene la pregunta?Cómo usar los valores enum en f: selectItem (s)
Enum clase
public enum Status {
SUBMITTED,
REJECTED,
APPROVED
}
entidad Pregunta
@Enumerated(EnumType.STRING)
private Status status;
JSF
<div class="field">
<h:outputLabel for="questionStatus" value="Status" />
<h:selectOneMenu id="questionStatus" value="#{bean.question.status}" >
<f:selectItem itemLabel="Submitted" itemValue="0" />
<f:selectItem itemLabel="Rejected" itemValue="1" />
<f:selectItem itemLabel="Approved" itemValue="2" />
</h:selectOneMenu>
<hr />
</div>
Una cosa, BalusC, es posible "seleccionar"/ver el estado que una pregunta tiene por defecto (por ejemplo, cuando está editando una pregunta, entonces ya ha establecido el estado de la pregunta a algo) – LuckyLuke
En el ejemplo anterior , JSF lo hará por defecto cuando '# {bean.question.status}' tenga un valor enum válido. No necesita hacer nada para asegurarse de que la 'pregunta' tenga la propiedad de estado correcta previamente cumplimentada. – BalusC
Oh, okey. ¡Lo tengo! :) – LuckyLuke