JSF SelectOneMenu e Integer

Olá:
Estou enfrentando problemas ao tentar vincular um item do tipo Integer em um SelectOneMenu. O JSF diz que o valor não é válido.
Alguém já passou por esta dificuldade e saberia como resolver?
Grato.

Wrapper…

[code]
private int x;
public void setX(Integer x){
this.x = x;
}

public Integer getX(){
return x;
}

public static SelectItem[] getTest() {
SelectItem[] test1 = {
new SelectItem(new Integer(1), “Test01”),
new SelectItem(new Integer(2), “Test02”),
new SelectItem(new Integer(3), “Test03”)
};

        SelectItem[] test2 = {
            new SelectItem(new Integer(1), "Test01"),
            new SelectItem(new Integer(2), "Test02"),
            new SelectItem(new Integer(3), "Test03")
        };
        
        SelectItemGroup sg1 = new SelectItemGroup("g1", "g1", false, test1);
        SelectItemGroup sg2 = new SelectItemGroup("g2", "g2", false, test2);
        SelectItem[] test = {sg1,sg2};
        
        return test;
    }[/code]

Isso no (&(& do Tomcat… No OC4J vc pode usar os valores String numa boa q num dá pala não…

Obrigado por responder, Proteus, mas não entendi.
O getTest deve ser vinculado por um componente SelectItem na página?
O SelectItem do Tomahawk aceita Collection, Map, automaticamente.
Em uma situação real, eu não queria fazer um parser da minha classe que eu trago do banco de dados para uma classe SelectItem. Eu queria usá-la direto. Quando os valores são String eu não tenho problema. O problema ocorre quando há valor Integer.
Agradeço qualquer idéia.


Repetiu o post…
Erro 502… Afffff

o getTest, no caso pode retornar qqr coisa que o selectItens do selectOneMenu aceite…
DESDE QUE seja do mesmo tipo ou wrapper da propriedade do bean vinculada…

Tipo, se vc tem um campo do tipo int, o itemValue dos itens devem ser do tipo Integer.
se vc tem um campo do tipo String, o itemValue dos itens devem ser do tipo String…

No OC4J ele identifica q a propriedade é int e faz a conversão direitinho…
no Tomcat ele tenta fazer a conversão com Cast e dá pala…

Eu não sou experiente nessa coisa…
Tou pagando o preço de usa-lo em uma primeira aplicação comercial sem ter alguem a quem pedir ajuda…

Eu criei a classe seguinte [code]public class Form {
public static List select(ResultSet rs, String value, String label,
boolean addDefault) throws SQLException {
List sb = new LinkedList();
if (addDefault) {
sb.add(new SelectItem(new Integer(0), “[Escolha um item]”));
}

    while (rs.next()) {
        sb.add(new SelectItem(new Integer(rs.getInt(value)), rs.getString(label)));
    }


    return (sb);
}

}[/code]
que antes preencia os selectItens com Strings [e funcionava no OC4J] … agora preenchem com Inteiros…
E tive que tirar os meus Conversores/Validadores do meu selectOneMenu…

Agora se a sua aplicação não segue esse mesmo padrão da minha ali, agente tem q olhar…
Por que, se o selectItem contiver outros objetos, será necessário criar os Conversores/Validadores… mas, dai já num é problema com wrappers…
:),

Um abraço, cara…