[RichFaces] Champ de texte autocomplété
Bonjour à tous;
je veux faire dans mon formulaire un champ autocomplete mais j'arrive pas:
voici mon formulaire:
Code:
1 2 3 4 5 6 7 8
| <h:form>
<h:inputText id="affectation" value="#{AutoCompleteClientBean.selectedClient}"/>
<rich:suggestionbox for="affectation" var="result" suggestionAction="#{AutoCompleteClientBean.listeDesign}" >
<h:column>
<h:outputText value="#{result.selectedClient.trim()}" />
</h:column>
</rich:suggestionbox>
</h:form> |
le code de ma Class Bean
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
public class AutoCompleteClientBean extends AbstractPageBean {
private static final long serialVersionUID = 1L;
private String selectedClient;
private List<String> listeDesign = new ArrayList<String>();
public AutoCompleteClientBean()
{
listeDesign.add("Ahmed");
listeDesign.add("Sidi");
listeDesign.add("Moussa");
listeDesign.add("Abdallahi");
}
/* public List<String> listAutoComplete(String query) {
List<String> results = new ArrayList<String>();
for (int i = 0; i < 10; i++) {
results.add(query + i);
}
return results;
} */
public String getSelectedClient() {
return selectedClient;
}
public void setSelectedClient(String selectedClient) {
this.selectedClient = selectedClient;
}
public List<String> getListeDesign() {
return listeDesign;
}
public void setListeDesign(List<String> listeDesign) {
this.listeDesign = listeDesign;
}
} |
A l'exécution voici l'erreur afficher:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| 09:40:15,032 ERROR BaseXMLFilter:227 - Exception in the filter chain
javax.servlet.ServletException: /materiels/automobiles/gestionautomobiles.jspx @70,120 suggestionAction="#{AutoCompleteClientBean.listeDesign}": Cannot convert [Ahmed, Sidi, Moussa, Abdallahi] of type class java.util.ArrayList to class javax.el.MethodExpression
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:321)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at winservices.dirmat.sidmat.web.filtre.ContextFilter.doFilter(ContextFilter.java:99)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at com.planetj.servlet.filter.compression.CompressingFilter.doFilter(CompressingFilter.java:271)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:462)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:395)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:250)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: javax.el.ELException: /materiels/automobiles/gestionautomobiles.jspx @70,120 suggestionAction="#{AutoCompleteClientBean.listeDesign}": Cannot convert [Ahmed, Sidi, Moussa, Abdallahi] of type class java.util.ArrayList to class javax.el.MethodExpression
at com.sun.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:74)
at org.richfaces.component.UISuggestionBox.setupValue(UISuggestionBox.java:492)
at org.richfaces.component.UISuggestionBox.broadcast(UISuggestionBox.java:424)
at javax.faces.component.UIData.broadcast(UIData.java:912)
at org.richfaces.component.UISuggestionBox.broadcast(UISuggestionBox.java:421)
at org.ajax4jsf.component.AjaxViewRoot.processEvents(AjaxViewRoot.java:329)
at org.ajax4jsf.component.AjaxViewRoot.broadcastAjaxEvents(AjaxViewRoot.java:348)
at org.ajax4jsf.application.AjaxViewHandler.processAjaxEvents(AjaxViewHandler.java:216)
at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:169)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:117)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:97)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:135)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:309)
... 31 more |
Je suis vraiment bloqué, Si quelqu'un pourrait m'aider
Merci d'avance
J'utilise Richfaces 3.3.3.Final