2012-05-16 3 views
0

I'm возникли некоторые проблемы с использованием suggestionbox, я буду вставлять код, чтобы показать мою проблему: (RichFaces: 3.3.3) Xhtmlбогат: suggestionbox свойство не найдено

<h:inputText id="input" value="#{CreateUser.cityName}" size="40"/>     
<rich:suggestionbox width="290" suggestionAction="#{CreateUser.suggest}" var="city" for="input"> 
    <h:column> 
     <h:outputText value="#{city.name}"/> 
    </h:column> 
    <h:column> 
     <h:outputText value="#{city.state.name}" /> 
    </h:column> 
    <h:column> 
     <h:graphicImage value="#{city.state.country.flagImage}" /> 
    </h:column> 
</rich:suggestionbox>  

Bean Это мой метод подсказки.

public ArrayList<CityType> suggest(Object input) { 
    String userInput = (String) input; 
    ArrayList<CityType> ret = new ArrayList<CityType>(); 

    for (CityType state : cityTypes) { 
     if ((state.getName().toLowerCase()).startsWith(userInput.toLowerCase())) { 
     ret.add(state); 
     } 
    } 
    return ret; 
} 

I'm получаю это:

/account/createUser.xhtml: Property 'suggest' not found on type com.project.web.CreateUser_$$_javassist_seam_9 

Thxs за ваше время !!!

+0

, кажется, проблема с настройкой ... вы реализовали шов ... ??? – Mango

ответ

0

С RichFaces 3 documentation, ваша функция должна возвращать List, не ArrayList, изменить свой код на этот:

public List<CityType> suggest(Object input) { 
    String userInput = (String) input; 
    List<CityType> ret = new ArrayList<CityType>(); 

    for (CityType state : cityTypes) { 
     if ((state.getName().toLowerCase()).startsWith(userInput.toLowerCase())) { 
      ret.add(state); 
     } 
    } 
    return ret; 
} 
Смежные вопросы