2014-03-04 37 views
0

我对此非常感兴趣,我无法弄清楚为什么会出现此错误。JSP useBean - 在类型mybeans.FrageAntwortListeBean上找不到属性

我有一颗豆:

package mybeans; 

import java.io.Serializable; 

public class FrageAntwortListeBean implements Serializable { 
    private static final long serialVersionUID = 1L; 
    private String questions; 

    public FrageAntwortListeBean() { 
     this.questions = "" 
    } 

    public String toString() { 
     return questions; 
    } 

    public String getQuestions() { 
     return questions; 
    } 

    public void setQuestions(String questions) { 
     this.questions = questions; 
    } 
} 

所以现在我想用这个bean的JSP:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %> 
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 

<jsp:useBean id="meineFragen" class="mybeans.FrageAntwortListeBean" scope="session" /> 
<jsp:setProperty name="meineFragen" property="*" /> 
${meineFragen.questions} 

而现在它被烧成这个错误:javax.el.PropertyNotFoundException: Property 'questions' not found on type mybeans.FrageAntwortListeBean

我有绝对没有线索,为什么发生这种情况,因为我之前从未有过这个问题......我在做什么错了? 我简化了这个例子只是一个字符串属性,通常它看起来更复杂,但即使是那个简单的结构,我也会得到这个错误!我究竟做错了什么?

即使我使用scriptlet,eclipse当然会向我建议函数getQuestions(),但是在运行JSP时它会显示类似的错误。

<%= meineFragen.getQuestions() %> 

如果我通过页面指令导入它并使用下面的工作。但是,脚本是丑陋的!

<%! FrageAntwortListeBean x = new FrageAntwortListeBean(); %> 
<%= x.getQuestions() %> 

我感谢所有帮助! :) 使用Apache Tomcat 7,做了重新部署,清理它,编译新的一切。使用了新的安装。没有机会!

回答

1

所以我现在就解决了这个问题。 :) 的问题是,我使用了Eclipse内置的功能,那么产生新的serialVersionUIDs ... ,我missclicked了几次,现在已经两次serialVersionUID = 1L

将其更改为例如serialVersionUID = -7497282229152922152L;后,它是不抛出该错误了!

+0

我不知道这与这个错误有什么关系。 – Keerthivasan

+0

困惑我也是,我试着去理解。我认为Apache Tomcat正在寻找一个提供了serial uid的bean,并且因为我有2个Beans(QuestionBean和QuestionListbean)和相同的串行uid(1L),所以它就像是一个碰撞...但是,它解决了问题。现在坐在这里4小时就可以得到这个结果......你还有其他想法吗? :-) – creativeby

+1

哦,我的上帝,至少你现在解决了:)所以,SerialVersionUID应该与它有关... – Keerthivasan

相关问题