2013-09-11 4 views
0

SEAM, среда JSF 2, у меня есть список строк, которые я бы хотел добавить из поиска (а затем после этого вывести некоторую бизнес-логику).h: selectOneListbox -> Значение ошибки при конверсии '' для 'null Converter'

* Я знаю, что вам обычно требуется конвертер для списков, у которых есть пользовательские объекты, но мои объекты - это строки, и у них уже должен быть метод compareTo(). И да, я знаю, что мне не хватает «значения» в h: outputLabel, но мне нет необходимости в выбранном bookName, но ratehr весь список для меня важен.

... 
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; 
} 
... 

ответ

3

Ваш inputHiddenList<String> имеет как значение, а не String. Для этого нужен конвертер.

+0

Я добавил конвертер, такой как [ссылка] (http://stackoverflow.com/questions/14594927/how-to-pass-a-list-of-string-as-hidden-input-from-a- jsf-page-to-a-request-scoped). И уверен, что ошибка исчезла, но bookName никогда не попадает в список. – Ace

+0

Хорошо оглядываясь назад, я думаю, что проблема сейчас в JavaScript. Спасибо за помощь! – Ace

Смежные вопросы