Win a copy of Zero to AI - A non-technical, hype-free guide to prospering in the AI era this week in the Artificial Intelligence and Machine Learning forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Liutauras Vilda
  • Paul Clapham
  • Bear Bibeault
  • Jeanne Boyarsky
Sheriffs:
  • Ron McLeod
  • Tim Cooke
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Tim Holloway
  • Jj Roberts
  • Stephan van Hulst
  • Carey Brown
Bartenders:
  • salvin francis
  • Scott Selikoff
  • fred rosenberger

Multiple Filed Binding with form Object

 
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi

I am new to Spring MVC using spring 3.0. I have requirement. I have a field called mobile number which is a text box. I should provide an option to the user to add n number of mobile numbers, what i meant is there should be a button on click of which there should be another text field to be shown which accepts another mobile number. Can you please suggest the approach for implementing it in jsp, form binding and validating using Spring MVC.

Regards,
Smruti
 
Ranch Hand
Posts: 167
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
You would need some script to add the fields on click of button and assign an id to it. You may look at these posts for further help

Page with dynamic fields
Another Example

 
Smruti Ranjan
Greenhorn
Posts: 5
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Thanks for your response. I am getting an error can you help to resolve
Following is the jsp code

<c:forEach items="${form.sourceLocation}" var="source"
varStatus="status">
<tr>
<td align="center">${status.count}</td>
<td><form:input path="sourceLocation[${status.index}].selectedLocation"/></td>
</tr>
</c:forEach>

Following is the form class

public class form {
private List<Location> sourceLocation;
public List<Location> getSourceLocation() {
return sourceLocation;
}
public void setSourceLocation(List<Location> sourceLocation) {
this.sourceLocation = sourceLocation;
}
}

followign the Location class
public class Location {
private String selectedLocation;
public Location() {
}
public Location(String selectedLocation) {
this.selectedLocation = selectedLocation;
}
public String getSelectedLocation() {
return selectedLocation;
}
public void setSelectedLocation(String selectedLocation) {
this.selectedLocation = selectedLocation;
}

}

I am getting below error

org.springframework.beans.NotReadablePropertyException: Invalid property 'sourceLocation0' of bean class [demo.form]: Bean property 'sourceLocation0' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?

As per my analysis the property should be sourceLocation[0] instead on sourceLocation0. I went ahead and did a view source of page following is the content to which jstl form:input tag as converted to html

<td><input id="sourceLocation0.selectedLocation" name="sourceLocation0.selectedLocation" type="text" value=""/></td>

if i replace jsp with regular html input tag as below every thing works fine

<td><input name="sourceLocation[${status.index}].selectedLocation" value="${source.selectedLocation}" /></td>

Can you please suggest.

Thanks & Regards,
Smruti Ranjan




 
Don't touch me. And dont' touch this tiny ad:
the value of filler advertising in 2020
https://coderanch.com/t/730886/filler-advertising
reply
    Bookmark Topic Watch Topic
  • New Topic