Pessoal,
Alguém já utilizou o componente <s:inputSuggestAjax /> da biblioteca Sandbox, do MyFaces? Estou tentando utilizar mas não estou conseguindo, e o erro não me parece muito amigável. Tentei copiar exatamente o exemplo do site e mesmo assim não funciona. O erro que ocorre é este:
javax.el.ELException: /template/template.xhtml: Bean: mbean.ProdutoMBean$$EnhancerByCGLIB$$2fe4c296, property: getSuggestItems
at com.sun.facelets.compiler.AttributeInstruction.write(AttributeInstruction.java:53)
at com.sun.facelets.compiler.UIInstructions.encodeBegin(UIInstructions.java:39)
at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChild(RendererUtils.java:412)
at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChildren(RendererUtils.java:400)
at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChild(RendererUtils.java:417)
at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChildren(RendererUtils.java:400)
at org.apache.myfaces.shared_tomahawk.renderkit.RendererUtils.renderChild(RendererUtils.java:417)
at org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBase.renderChildren(HtmlGridRendererBase.java:229)
at org.apache.myfaces.shared_tomahawk.renderkit.html.HtmlGridRendererBase.encodeEnd(HtmlGridRendererBase.java:101)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:539)
at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:252)
at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249)
at com.sun.facelets.tag.jsf.ComponentSupport.encodeRecursive(ComponentSupport.java:249)
at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:573)
at org.ajax4jsf.framework.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:108)
at org.ajax4jsf.framework.ajax.AjaxViewHandler.renderView(AjaxViewHandler.java:233)
at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:140)
at br.com.advancedit.framework.util.servlet.AdvFacesServlet.service(Unknown Source)
at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:127)
at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:277)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15)
at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
at net.sourceforge.sannotations.web.SASecurityFilter.doFilterInternal(SASecurityFilter.java:62)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147)
at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17)
at br.com.benoit.catalogo.web.filter.AuthenticationFilter.doFilter(AuthenticationFilter.java:60)
at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:621)
at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370)
at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871)
at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:122)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:111)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:619)
No arquivo template.xhtml, tenho o seguinte:
<s:inputSuggestAjax suggestedItemsMethod="#{produtoM.getSuggestItems}" value="#{produtoM.selectedValue}" />
Enquanto que no bean tenho o seguinte:
[code]private String selectedValue;
public String getSelectedValue() { return selectedValue; }
public void setSelectedValue( String selectedValue ) { this.selectedValue = selectedValue; }
[...]
public List getSuggestItems(String prefix) {
List li = new ArrayList();
li.add(prefix+1);
li.add(prefix+2);
li.add(prefix+3);
return li;
}[/code]
Alguém saberia me ajudar? Obrigado desde já.