JSTL在JavaBean中找不到属性

我有一个非常类似于此堆栈溢出问题JSP在bean中找不到属性的)问题。还有这个问题javax.el.PropertyNotFoundException:在类型com.example.Bean上找不到属性’foo’。但是,就我而言,我认为我已经完成了所有工作,但仍然出现错误。

    private double otheramount;

private int no;

private String name;

public double getOtherAmount()

{

return otheramount;

}

public void setOtherAmount(double newotheramount)

{

otheramount = newotheramount;

}

public int getNo()

{

return no;

}

public void setNo(int newno)

{

no = newno;

}

public String getName()

{

return name;

}

public void setName(String newname)

{

name = newname;

}

while(rs.next())

{

MyBean mybean = new MyBean();

mybean.setNo(rs.getInt("No"));

mybean.setName(rs.getString("Full_Names"));

mybean.setOtherAmount(rs.getDouble("OtherAmount"));

allresults.add(mybean);

}

try

{

ArrayList allresults = mydao.search();

request.setAttribute("allresults",allresults);

RequestDispatcher dispatch =request.getRequestDispatcher("Pages/mypage.jsp");

dispatch.forward(request, response);

}

catch(Exception ex)

{

}

<c:forEach var="results" items="${requestScope.allresults}">

<tr>

<td><c:out value="${results.no}"></c:out></td>

<td><c:out value="${results.name}"></c:out></td>

<td><c:out value="${results.otheramount}"></c:out></td>

</tr>

</c:forEach>

问题是,当我对零件进行注释时,<c:out

value="${results.otheramount}"></c:out>它可以正常运行,并且不会引发任何错误。但是,取消注释此部分会导致找不到属性错误。附带说明,属性otheramount是在很久以后添加的。

我正在使用Netbeans 7.1.2。任何帮助,不胜感激。

回答:

不能根据专用字段名称解析Bean属性名称。而是根据getter方法名称解析它们。

因此,在您的特定情况下,属性名称不是otheramount,而是otherAmount

也可以看看:

  • JavaBeans规范
  • JavaBeans教程

以上是 JSTL在JavaBean中找不到属性 的全部内容, 来源链接: utcz.com/qa/410685.html

回到顶部