Boa tarde,
Estou com problema tenho select onemenu que chama outro select. Ate ai tudo bem, mas qdo mando salvar ele da erro Validation Error: Value is not valid.
Segue o bean e a tela abaixo:
public List getSelectSistema() {
selectSistema.clear();
LinkedHashSet hash = new LinkedHashSet();
nomeSistema = “”;
try {
if (sistema != null) {
nomeSistema = sistema.getNomeSistema();
}
List dados = new SistemaDao().listarSistema();
for (Sistema sis : dados) {
String sistema = sis.getNomeSistema();
hash.add(sistema);
}
for (String sis : hash) {
SelectItem s = new SelectItem();
s.setValue(sis);
s.setLabel(sis);
this.selectSistema.add(s);
}
//popularResponsavel();
} catch (Exception e) {
e.printStackTrace();
}
return selectSistema;
}
public void popularResponsavel() {
selectSistemaResponsavel.clear();
try {
if (nomeSistema != "" && nomeSistema != null) {
List<Sistema> dados = new SistemaDao()
.listarResponsavelPorSistema(nomeSistema);
for (Sistema sis : dados) {
SelectItem s = new SelectItem();
s.setValue(sis.getIdSistema());
s.setLabel(sis.getResponsavel());
selectSistemaResponsavel.add(s);
}
} else {
nomeSistema = selectSistema.get(0).getLabel();
List<Sistema> dados = new SistemaDao()
.listarResponsavelPorSistema(nomeSistema);
for (Sistema sis : dados) {
SelectItem s = new SelectItem();
s.setValue(sis.getIdSistema());
s.setLabel(sis.getResponsavel());
selectSistemaResponsavel.add(s);
}
}
ordenar(selectSistemaResponsavel);
} catch (Exception e) {
e.printStackTrace();
}
}
public List<SelectItem> getSelectSistemaResponsavel() {
if (selectSistemaResponsavel.isEmpty()) {
popularResponsavel();
}
return selectSistemaResponsavel;
}
TELA
<h:outputText value=“Nome: " style=“FONT-SIZE: small;”/>
<h:selectOneMenu id=“sistemanome”
value=”#{controller.nomeSistema}"
style=“FONT-SIZE: xx-small;” >
<f:selectItems value="#{controller.selectSistema}" />
<a4j:support event=“onchange” ajaxSingle=“true”
action="#{controller.popularResponsavel}"
reRender=“sistemagestor” />
</h:selectOneMenu>
<h:outputText value=“Responsável: " style=“FONT-SIZE: small;”/>
<h:selectOneMenu id=“sistemagestor”
value=”#{controller.sistema.idSistema}">
<f:selectItems
value="#{controller.selectSistemaResponsavel}" />
</h:selectOneMenu>