This week's book giveaways are in the Java EE and JavaScript forums.
We're giving away four copies each of The Java EE 7 Tutorial Volume 1 or Volume 2(winners choice) and jQuery UI in Action and have the authors on-line!
See this thread and this one for details.
The moose likes Struts and the fly likes EL with Struts Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of The Java EE 7 Tutorial Volume 1 or Volume 2 this week in the Java EE forum
or jQuery UI in Action in the JavaScript forum!
JavaRanch » Java Forums » Frameworks » Struts
Bookmark "EL with Struts" Watch "EL with Struts" New topic
Author

EL with Struts

Ralf Schneider
Greenhorn

Joined: Dec 03, 2004
Posts: 4
Hi,

I need to access an indexed property inside a <logic:iterate> tag.

<logic:iterate id="col" indexId="i" name="sheetForm" property="cols"
type="de.fortu.ccdata.sheet.Column">
...
<util esignrule rule="${bean.editable[i] == false}" styleClass="readonly"/>
...
</logic:iterate>

The class behind "bean" has an ArrayList with a getter method

public boolean getEditable (int index)

The code above results in an exception saying:
javax.servlet.jsp.el.ELException: Unable to find a value for "editable" in object of class "de.fortu.ccdata.tree.LeaveNode" using operator "."

How do I have to modify my code to access the i-th element of that ArrayList?

Thanks,
Ralf.
Anthony Watson
Ranch Hand

Joined: Sep 25, 2003
Posts: 327
You should write a method for your bean that returns an ArrayList that takes no arguments. Then, you should loop through the elements in the ArrayList and call the getEditable() method on them.


Anthony W.<br />MCP, SCJP 1.4, SCJD, SCWCD 1.3, SCWCD 1.4, SCBCD
 
 
subject: EL with Struts