Função não é chamada

Java

03/10/2010

Caro amigos da devmedia.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: br.com.sistemaagropecuariawar.managedBean.TipoUnidadeMedidasManagedBean@43940bfe.tipoUnidadeMedidasFromRow()
javax.faces.el.MethodNotFoundException: javax.el.MethodNotFoundException: /admin/TipoUnidadeMedidasPages.xhtml @76,66 action="#{TipoUnidadeMedidasManagedBean.tipoUnidadeMedidasFromRow}": Method not found: br.com.sistemaagropecuariawar.managedBean.TipoUnidadeMedidasManagedBean@43940bfe.tipoUnidadeMedidasFromRow()
        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?

Andrei Hirata

Andrei Hirata

Curtidas 0

Respostas

Davi Costa

Davi Costa

03/10/2010

Andrei, não sei a versão do JSF que vc está usando,
pq se for a versão 2.0 e vc não tiver declarado um nome para seu bean,
o default é  nome da classe com a primeira letra caixa baixa.. verifica isso e depois passa o feedback ..
No caso ficaria:
<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>
Att Davi
GOSTEI 0
Andrei Hirata

Andrei Hirata

03/10/2010

Olá o nome do Bean está correto.Foi usado a anotação @ManagedBean com a primeira letra maiscula.O problema é chamar o método, pois outros metodos eu consigo chamar.Só este que dá problema
GOSTEI 0
Davi Costa

Davi Costa

03/10/2010

Hum,
ok Andrei, rapaz já passei por isso...
testa tirando o  oncomplete="confirmationDlg.show()" e dpois,
testa alterando o nome do método, já que os outros métodos ele chama.
Att Davi
GOSTEI 0
Dyego Carmo

Dyego Carmo

03/10/2010

Bom...

o get e set só pode ser utilkizado para PROPRIEDADES... em um action... voce vai ter que colocar o nome completo , ou seja ... " getTipoUnidadeMedidasFromRow" e não "tipoUnidadeMedidasFromRow"


ValeuZ!
GOSTEI 0
Andrei Hirata

Andrei Hirata

03/10/2010

Ola pessoal.Agradeço a ajuda.Gostaria de informar que conseguir arrumar o problema.E incrivel que apareça...O erro estava com o Netbeans para MAC. Depois que peguei meu projeto e executei no netbeans do Windows, o sistema funcionou legal.Rsrssrsrs.E não é só isto não, quando vc usa o recurso CREATE ENTITY TO DATABASE , no netbeans para mac, utilizando banco de dados Mysql, tem bugs de SEM CHAVE PRIMÁRIA. No windows funciona legal


GOSTEI 0
Davi Costa

Davi Costa

03/10/2010

Blza Andrei show de bola essas informações que vc passou para gente,
até achei estranho pq usava get sem ser com atributo e nunca tive problemas, já ia perguntar as versões dos seus jars. Que bom que deu certo.
Att Davi
GOSTEI 0
Dyego Carmo

Dyego Carmo

03/10/2010

É bom saber :)
Poderia fechar o chamado ?


Valeu !

GOSTEI 0
Andrei Hirata

Andrei Hirata

03/10/2010

Olá Diegão.BZ?COmo que fecha o chamado?xddd
GOSTEI 0
Dyego Carmo

Dyego Carmo

03/10/2010

Opa !

Não aparece um botao Alterar do lado do status do chamado ?

GOSTEI 0
Andrei Hirata

Andrei Hirata

03/10/2010

Nao aparece nenhum botao.Será que a Daniela , Welliton que trabalham na devmedia podem finalizar?assim falo com  eles
GOSTEI 0
Dyego Carmo

Dyego Carmo

03/10/2010

Com certeza eles podem :)

Valeu !

GOSTEI 0
POSTAR