Method not found

1 resposta
A

Caro amigos .Estou com o seguinte problema

Tenho uma página com o código

<p:commandLink id="excluirRegistro"
                             action="#{TipoUnidadeMedidasManagedBean.tipoUnidadeMedidasFromRow}"
                             oncomplete="confirmationDlg.show()">
                <h:graphicImage value="../recursos/images/btn/btnExcluir.png"
                                style="border:0"
                                width="24" height="24"/>
              </p:commandLink>

A classe chamada possui esta função

public TipoUnidadeMedidas getTipoUnidadeMedidasFromRow()
          throws Exception {
    tipoUnidadeMedidas = (TipoUnidadeMedidas) model.getRowData();
    return tipoUnidadeMedidas;
  }

O erro é

SEVERE: javax.el.MethodNotFoundException: /admin/TipoUnidadeMedidasPages.xhtml @76,66 action="#{TipoUnidadeMedidasManagedBean.tipoUnidadeMedidasFromRow}": Method not found: [email removido]()

javax.faces.el.MethodNotFoundException: javax.el.MethodNotFoundException: /admin/TipoUnidadeMedidasPages.xhtml @76,66 action="#{TipoUnidadeMedidasManagedBean.tipoUnidadeMedidasFromRow}": Method not found: [email removido]()

at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:92)

at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)

at javax.faces.component.UICommand.broadcast(UICommand.java:315)

at javax.faces.component.UIData.broadcast(UIData.java:912)

at org.primefaces.component.datatable.DataTable.broadcast(DataTable.java:758)

at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:775)

at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1267)

at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)

at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)

at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)

at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1523)

at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:279)

at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:188)

at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:641)

at com.sun.enterprise.web.WebPipeline.invoke(WebPipeline.java:97)

at com.sun.enterprise.web.PESessionLockingStandardPipeline.invoke(PESessionLockingStandardPipeline.java:85)

at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:185)

at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:325)

at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:226)

at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:165)

at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:791)

at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:693)

at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:954)

at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:170)

at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:135)

at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:102)

at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:88)

at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:76)

at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:53)

at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:57)

at com.sun.grizzly.ContextTask.run(ContextTask.java:69)

at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:330)

at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:309)

at java.lang.Thread.run(Thread.java:637)

Minha dúvida é…porque ocorre este erro?

1 Resposta

davidbuzatto

Faz muuito tempo que não uso JSF, então estou enferrujado, mas uma action não espera uma String como retorno?
Apesar do erro falar que o método não foi encontrado e que o framework está tentando acessar o método sem o get (o que ele deveria estar complemetando automaticamente), acho que isso está acontecendo por causa do tipo da Action, além de me lembrar tbm que métodos para action devem seguir o nome completo e não o padrão para binding (sem o get).

[]´s

Criado 3 de outubro de 2010
Ultima resposta 3 de out. de 2010
Respostas 1
Participantes 2