h:selectOneListbox - > 'null Converter'的转换错误设置值''

时间:2013-09-11 21:25:02

标签: jsf seam

SEAM,JSF 2环境,我有一个字符串列表,我想从查找中添加(然后有一些业务逻辑)。

*我知道你通常需要一个包含自定义对象的列表框的转换器,但我的对象是字符串,并且应该已经有了compareTo()方法。是的,我知道我在h:outputLabel中缺少'value',但是我不需要选择的bookName,但是对我来说整个列表是很重要的。

...
function selectBook(bookId, bookName) {
    var idInput = [];
    var idInput = jQuery("#bookForm\\:bookNames");
    idInput.push(bookName);
    }
...

...
<h:panelGroup id="booksField">
     <h:outputLabel for="booksListBox" value="Books:"/>
        <h:selectOneListbox id="booksListBox" >
           <s:selectItems var="_var" value="#{bean.searchCriteria.bookNames}" noSelectionLabel=""/>
        </h:selectOneListbox>
        <h:inputHidden id="bookNames" value="#{bean.searchCriteria.bookNames}" converter="StringListConverter"/>
    </h:panelGroup>
...

我的Java代码......

...
private List<String> bookNames;

public List<String> getBookNames() {
    return bookNames;
}

public void setBookNames(List<String> bookNames) {
    this.bookNames = bookNames;
}
...

1 个答案:

答案 0 :(得分:3)

您的inputHidden的值为List<String>,而不是字符串。你需要一个转换器来做到这一点。