salve Galera,
estou com um problema com jsf, já dei uma boa pesquisada mas não encontrei uma solução.
o cenário é o seguinte:
tenho um formulário com um checkbox.
ao submeter o formulário gostaria que o valor do checkbox (uma String qualquer), seja armazenada em um atributo de um bean.
uma coisa que parece simples está dando erro de conversão.
li que precisa de uma Classe converter mas não consegui uma que funcionasse.
fiz um teste com SelectBooleancheckbox e consegui guardar o valor de true ou false.
gostaria disso com SelectManycheckbox.
alguma dica?
meu código que dá erro é mais ou menos assim:
<h:selectManyCheckbox id="status" value="#{nomeBean.valorVariavelString}" >
<f:selectItem itemValue="valor1" />
</h:selectManyCheckbox>
Fala Rafa,
Então cara você têm que definir a String no faces-config.xml. Veja o exemplo abaixo:
<managed-bean>
<managed-bean-name>nomeBean</managed-bean-name>
<managed-bean-class>pacote.NomeBean</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>valorVariavelString</property-name>
<value>#{valorVariavelString}</value>
</managed-property>
</managed-bean>
Vê se isso resolve.
Bravox
#3
O selectManyCheckbox recebe como valor um array de primitivo , array de objetos ou um List vc não pode usar uma String.
Ex:
no seu mb
private List<String> strings;
// gets e sets
na sua página
<h:selectManyCheckbox value="#{mb.strings}">
<f:selectItem itemLabel="String 1" itemValue="String 1"/>
<f:selectItem itemLabel="String 2" itemValue="String 2"/>
<f:selectItem itemLabel="String 3" itemValue="String 3"/>
</h:selectManyCheckbox>
Opa…achei que fosse um selectOneMenu. 
Neste caso String não ia rolar mesmo.
Bravo!!! ou melhor Bravox!!
muito obrigado pela força galera!!!