虽然正在运行方法,但是找不到找到方法的错误

时间:2017-09-30 20:36:28

标签: java

我有以下bean:

package com.company.test;

public class EventFileBean 
{
   public EventFileBean()
   {
       System.out.println("testing... inside EventFileBean");
   }
}

它已在 xml 文件中注册:

<managed-bean>
    <managed-bean-name>eventFileBean</managed-bean-name>
    <managed-bean-class>com.company.test.EventFileBean</managed-bean-class>
    <managed-bean-scope>view</managed-bean-scope>
</managed-bean>

我打电话给:

<p:commandButton value="#{msg.yes}" ajax="false" 
                 action="#{eventFileBean.eventFileBean}" 
                 styleClass="stdButton greenButton" oncomplete="confirmation.hide()"/>

它崩溃时出现错误" javax.el.MethodNotFoundException: /workshop/editWorkshop.xhtml @86,221 action="#{eventFileBean.eventFileBean}",但它打印出消息"testing... inside EventFileBean",因此它必须找到该方法。

有谁可以告诉我什么是错的或者需要设置什么?

1 个答案:

答案 0 :(得分:0)

您的方法// array like object var obj = { 0: 'a', 1: 'b', 2: 'c' }; console.log(Object.keys(obj)); // console: ['0', '1', '2'] 是一种特殊方法,因为它与您的类具有相同的名称:它是类的构造函数,因此无法通过该名称识别。

此外,我不确定大小写是否有所不同:您的方法以大写字母开头,而在您的xml中,您在搜索开头的小写字母方法。由于Java区分大小写,因此不一样。

将方法重命名为类名以外的其他名称。也许只是使用小写字母作为第一个字母已经有效,否则尝试一个完全不同的名称。