Gerar form de Select ou Radio a partir de um campo Enum

1 resposta
ultranine

Olá Pessoal,

Já busquei no fórum, mas não consigo encontrar um caso similar ao meu.

Tenho a seguinte classe:

@Entity
public class OsmTag {

	public enum Type {
		COMPULSORY, DESIRABLE;
	}

	@Id
	@GeneratedValue
	private Long id;

	@ManyToOne
	@Cascade(CascadeType.SAVE_UPDATE)
	private OsmSet osmSet;

	private Type type;
	private String k;
	private String v;
        
        // getters e setters
}

E o seguinte form na view:

<form action="<c:url value="/tag/${osmTag.id}"/>" method="POST">
	Type:
	<select>
		<option value="COMPULSORY" ><c:if test="${osmTag.type}==COMPULSORY">selected</c:if>>Compulsory</option>
		<option value="DESIRABLE" ><c:if test="${osmTag.type}==DESIRABLE">selected</c:if>>Desirable</option>
	&lt;/select&gt;<br/>
	Key: &lt;input id="key" type="text" name="tag.k" value="${osmTag.k}" /&gt;<br/>
	Value: &lt;input id="value" type="text" name="tag.v" value="${osmTag.v}"/&gt;<br/>
	&lt;button type="submit"&gt;Send&lt;/button&gt;
&lt;/form&gt;

Eu coloquei o c:if para marcar o option correspondente ao valor do Enum, mas não está resultado nada dos ifs.

Obviamente, quero que o item marcado no drop-box seja igual ao tipo que está no objeto, mas não entendi muito bem como fazer isso.

Existe uma maneira mais simples (e que funcione) para fazer isso?

Vitor

1 Resposta

ultranine

Já resolvi de outra maneira, obrigado.

Criado 14 de junho de 2010
Ultima resposta 19 de jun. de 2010
Respostas 1
Participantes 1