Jav*_*ter 1 java jsf autocomplete richfaces java-ee
我的xhmtl-Page的一部分:
<rich:autocomplete autocompleteMethod="#{autocompletMit.searchbyName()}" mode="cachedAjax"
fetchValue="#{controller.mitarbeiter.mitarbeiterName}" autocompleteList="#{autocompletMit.autocompleteList}" minChars="1" autofill="true" var="it" >
<h:outputText value="#{it.mitarbeiterName}" style="font-weight:bold"/>
</rich:autocomplete>
Run Code Online (Sandbox Code Playgroud)
我自动完成的Bean:
@ManagedBean(name = "autocompletMit")
@RequestScoped
public class AutoCompleteMitarbeiter implements Serializable {
@EJB
private Transaktionssteuerung transakt;
private List<String> autocompleteList = new ArrayList<String>();
String nameSearch;
public List<String> searchbyName(Object o) {
String test = (String) o;
List<Mitarbeiter> alleMitarbeiter = transakt.alleMitarbeiter();
for (Iterator<Mitarbeiter> it = alleMitarbeiter.iterator(); it.hasNext();) {
if (it.next().getMitarbeiterName().startsWith(test)) {
autocompleteList.add(it.next().getMitarbeiterName());
}
}
return autocompleteList;
}
//getter & setter
}
Run Code Online (Sandbox Code Playgroud)
我总是在我的.xhtml中获得"Unkown property searchbyName",autocompleteMethod="#{autocompletMit.searchbyName()}"因为他除了一个值...我必须在这里提交哪个值?!?
autocompleteMethod="#{autocompletMit.searchbyName()}"
Run Code Online (Sandbox Code Playgroud)
当你有一个带参数的方法时,这是不正确的.删除这些括号.该RichFaces的<rich:autocomplete>展示例子也完全不显示,你应该调用一个方法argumentless.
找不到方法:Controller.AutoCompleteMitarbeiter@7a88716.searchbyName(java.lang.String)
它告诉它预期一个searchbyName方法采取String争论.你的Object论点.这不匹配.相应修复:
public List<String> searchbyName(String query) {
Run Code Online (Sandbox Code Playgroud)