【问题标题】:javax.el.MethodNotFoundException on <ice:commandButton actionListener><ice:commandButton actionListener> 上的 javax.el.MethodNotFoundException
【发布时间】:2014-11-22 14:38:34
【问题描述】:

我正在使用 JSF/JavaEE5 构建的完整工作系统中使用 JSF 框架 icefaces(以防万一)。因此,我首先添加了一个 JSP 页面和一个 Java bean。据我所知,每次在 Jsp 端声明绑定(或 actionListener)时,都需要在 bean 中声明变量、动作和 getter/setter。所以我做了,如下:

JSP:

 <ice:commandButton actionListener="#{tasks$fixTemplates.btnSearchProcessAction}"
                    style="height: 18px; left: 5px; top: 8px; position: absolute; 
                    width: 18px;" value="submit"/>id="btnSearch" 
                    image="/resources/commons/imgs/dot/view.png">

Java 豆:

  public void btnSearchProcessAction(ActionEvent ae) throws Exception { 

 //Some code over here

  }

页面的渲染没有太多麻烦,但是当我尝试通过按下按钮执行操作时,它会引发异常,如下所示:

javax.faces.el.MethodNotFoundException: javax.el.MethodNotFoundException: Method not found: com.rcsolutions.base.tasks.fixTemplates@1ec7c9.btnSearchProcessAction(javax.faces.event.ActionEvent)

起初我以为它被抛出是因为我忘记在 faces-config 文件中添加托管 bean,但它已经存在并且还没有工作。我不确定它为什么这么说,因为我已经看到一堆遵循相同模式的代码。似乎是什么问题?我在编码之前是否跳过了任何设置?欢迎任何帮助。

【问题讨论】:

  • 您的方法中声明的ActionEvent 的完全限定名称是什么?

标签: jsp jsf icefaces commandbutton methodnotfound


【解决方案1】:

找出发生了什么有点棘手,最后结果证明我依赖于 IDE 提示(不是那么好),所以我没有注意到,并且 ActionEvent 的导入不正确。 我有这个:

import java.awt.event.ActionEvent;

我真正需要的是:

import javax.faces.event.ActionEvent;

【讨论】:

    猜你喜欢
    • 2020-11-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-16
    • 2011-12-31
    • 2011-02-10
    • 1970-01-01
    • 2013-02-14
    • 2014-01-17
    相关资源
    最近更新 更多