I am using Spring 3.1.
I am trying to display an ArrayList of objects in a Spring Form within a JSP. Eventually I need to have a checkbox for each object so that the user may select a row and then press a button for some back-end action. But I can't get the data to display using a Spring form. I keep receiving an exception:
org.springframework.beans.NotReadablePropertyExcep tion: Invalid property 'datafeed[0]' of bean class [java.util.ArrayList]: Bean property 'datafeeds[0]' is not readable or has an invalid getter method: .... "
Here is the scaled down code:
Code:<form:form method="post" commandName="datafeeds"> <table> <thead> <tr> <th>Name</th> <th>State</th> </tr> <tbody> <c:forEach items="${datafeeds}" var="datafeed" varStatus="vs"> <tr> <td><form:label path="datafeeds[${vs.index}].name/></td> <td><form:label path="datafeeds[${vs.index}].state/></td> </tr> </c:forEach> </tbody> </tabl> </form>Specifically I guess my question is how does commandName, the variables in the forEach loop and the data from the Controller all work together? Can anybody show me using the above code?Code:@Controller public class DataFeedController { @Autowired SomeService service; @RequestMapping(value="/datafeed") public String showDataFeed(Model m) { List<DataFeed> datafeeds = service.list(); m.addAttribute("datafeeds", datafeeds); return "datafeed"; } }


Reply With Quote
