Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

accesss to indexed variable in bean

 
J. Cartwright
Greenhorn
Posts: 16
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello All,

I'm trying to use JSTL to access and indexed property on a bean.

The bean accessor looks like:

public List getRecord(int index) {
return((List)records.get(index));
}

and my JSP looks like this:

<c:forEach items="${requestScope.dataBean.record[0]}" var="record">
${record}<br>
</c:forEach>

However, this doesn't work, complaining that:

Unable to find a value for "record" in object of class "DataBean" using operator "."

Can anyone help me?

Thanks!

-- john
 
Bear Bibeault
Author and ninkuma
Marshal
Pie
Posts: 64629
86
IntelliJ IDE Java jQuery Mac Mac OS X
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hmm, not something I've ever tried to do, and the JSP 2.0 Specification doesn't have much to say on this re the expression language.

Myself, I've never much cared for indexed properties, so I've always used a slightly different pattern which is known to be EL-friendly.

Rather than an indexed property, I usually have a discrete property that returns an array (or List, or Map, or whatever collection) and use the array indexing mechanism on the returned collection.

For example:



which can be used in the EL as



In your example, it looks like each of your indexed properties is a List, so you could define an accessor such as:



and use it in your page as:


[ November 16, 2005: Message edited by: Bear Bibeault ]
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic