1

I tried create <h:selectOneMenu with custom objects.

<h:selectOneMenu value="#{OperatorsReportBean.languagesList}" style="width:100%"
                                     converter="#{langListConverter}">
                        <f:selectItems value="#{OperatorsReportBean.languages}" var="langList"
                                       itemLabel="#{langList.languageName}" itemValue="#{langList}"/>
                    </h:selectOneMenu>

I get errors:

Conversion Error setting value 'reports.entety.LanguagesList@7ea21f4f' for 'null Converter'. Conversion Error setting value 'reports.entety.LanguagesList@7ea21f4f' for 'null Converter'.

and after googling faund advice and create converter:

@ManagedBean(name = "langListConverter")
public class LangListConverter implements Converter {
    private OracleDBReportOperatorsDao reportsDAO = new OracleDBReportOperatorsDao();

    @Override
    public LanguagesList getAsObject(FacesContext facesContext, UIComponent uiComponent, String s) {
        return reportsDAO.getLanguages(s);
    }

    @Override
    public String getAsString(FacesContext facesContext, UIComponent uiComponent, Object o) {
        return ((LanguagesList) o).getLanguageName();
    }
}

But now i get another error:

j_idt21:j_idt46: Validation Error: Value is not validj_idt21:j_idt46: Validation Error: Value is not valid

It is my code:

languagesList = new LanguagesList();
public LanguagesList getLanguagesList() {
        return languagesList;
    }
languages = reportBll.getLanguages();
public List<LanguagesList> getLanguages() {
        return languages;
    }
BalusC
  • 1,082,665
  • 372
  • 3,610
  • 3,555
user5620472
  • 2,722
  • 8
  • 44
  • 97
  • what a wierd variable name languagesList is for variable tied to selectOOneMenu. For a second i thought you were going to save a collection in . Why is your converter annotated with `@ManagedBean(name = "langListConverter") and not '@FacesConverter("langListConverter")? – Mahendran Ayyarsamy Kandiar Dec 04 '15 at 22:22

0 Answers0