班级' com.abank.pojo.MenuItem'没有财产' Menutext'

时间:2017-05-20 19:11:07

标签: jsf el

我正在尝试在JSF中创建一个简单的“hello world”示例。我有一个页面(xhtml),一个bean类,它包含POJO类列表和POJO类。
当我启动项目它给出以下错误消息。

javax.servlet.ServletException: /PageTemplates/commonHeader.xhtml @12,48 
value="#{current.Menutext}": The class 'com.abank.pojo.MenuItem' does not 
have the property 'Menutext'.

这是我的tempalte XHTML页面。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
    xmlns:h="http://java.sun.com/jsf/html"
    xmlns:f="http://java.sun.com/jsf/core"
    xmlns:ui="http://java.sun.com/jsf/facelets">
    <body>
        <ui:composition>
<ul class="nav nav-pills">
<ui:repeat value="#{menuBean.menuItems}" var="current">
<li><h:outputText value="#{current.Menutext}"/></li>
</ui:repeat>
</ul>
        </ui:composition>
    </body>
</html>

包含MenuItem类列表的我的Bean类(POJO类)。

@Named
@ApplicationScoped
public class MenuBean implements Serializable {



    private List<MenuItem> menuItems;

 public List<MenuItem> getMenuItems(){

     return menuItems;
 }
 @PostConstruct
    public void init() {

     menuItems=new ArrayList<MenuItem>();
     MenuItem tempItem=null;


         tempItem=new MenuItem();
         tempItem.setMenuid(1) ;
         tempItem.setMenutext("Hesaplar");
         menuItems.add(tempItem);
         tempItem=new MenuItem();
         tempItem.setMenuid(2);
         tempItem.setMenutext("Para Transferleri");
         menuItems.add(tempItem);
         tempItem=new MenuItem();
         tempItem.setMenuid(3);
         tempItem.setMenutext("Kredi Kartları");
         menuItems.add(tempItem);
         tempItem=new MenuItem();
         tempItem.setMenuid(4);
         tempItem.setMenutext("Ödemeler");
         menuItems.add(tempItem);

 }

} 

最后一个是POJO课程。

@ApplicationScoped
public class MenuItem {
     /**
     * 
     */
    private static final long serialVersionUID = -4642390001647219288L;

    private Integer menuid;
    private String menutext;

    public Integer getMenuid() {
        return menuid;
    }
    public void setMenuid(Integer menuid) {
        this.menuid = menuid;
    }
    public String getMenutext() {
        return menutext;
    }
    public void setMenutext(String menutext) {
        this.menutext = menutext;
    }




}

正如您所看到的,POJO类中有公共getMenutext getter方法,但编译器说没有?

感谢。

嗨再次,我发现了问题。我的错误在于命名。属性名称必须以小写字母开头。

javax.el.PropertyNotFoundException: Property 'Name' not found on type

0 个答案:

没有答案