My project is using hibernate 3.4.0 GA to access database, and Spring MVC 2.5.6 to handle web request and jsp(jstl) to render view(web page).
I get an entity list from database, by hibernate, and add it as model into modelmap for jsp.When jsp rendering my webpage, it throws a "javax.el.PropertyNotFoundException".
javax.el.PropertyNotFoundException: Property 'timestamp' not found on type java.lang.String
and the exception comes from:
<c:forEach var="statusHistory" items="statusHistoryList">
${statusHistory.timestamp}
</c:forEach>
It seems like that "statusHistory" is considered as a String, but not an object.
The "StatusHistory" class has "timestamp" property and the getter method:
public Class StatusHistory{
...
private Date timestamp;
public Date getTimestamp(){...}
...
}
I have searched on google for one whole day. Some post says that the getter method is not following the convention. But it seems it's not my case.
can some one please help me?
Thanks in advance Andrew
Here,
<c:forEach var="statusHistory" items="statusHistoryList">
You're supplying the items
attribute of <c:forEach>
with a plain vanilla String with a value of "statusHistoryList"
which in turn indeed doesn't have a getTimestamp()
method.
You need to reference it using an EL expression ${...}
instead.
<c:forEach var="statusHistory" items="${statusHistoryList}">
${statusHistory.timestamp}
</c:forEach>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With