22

Can anyone please explain how path attribute works in binding objects from a html form to a Java class in Spring. I am newbie to spring web framework please help.

moffeltje
  • 4,521
  • 4
  • 33
  • 57
Paritosh Ahuja
  • 1,239
  • 2
  • 10
  • 19
  • Try searching "spring form tags". It looks like html tags with spring attributes to bind an html form to an object. – Oneb Jul 15 '13 at 05:13
  • i did that but no useful information,was unable to understand,so tried asking Stack :) – Paritosh Ahuja Jul 15 '13 at 05:15
  • see http://static.springsource.org/spring/docs/current/spring-framework-reference/html/mvc.html –  Jul 15 '13 at 05:38

1 Answers1

50

Long story short the path attribute is bound into java properties using java beans convention. For example for following form:

<form:form method="post" modelAttribute="theStudent">
  Name: <form:input type="text" path="name"/>
  Cool?: <form:input type"checkbox" path="cool"/>
  <button>Save</button>
</form:form>

And following controller handler method:

@RequestMapping(...)
public String updateStudent(@ModelAttribute("theStudent") Student student) {
  // ...
}

Will bind automatically if the Student class is defined with following properties:

public class Student {
  private String name;
  public String getName() { return this.name; }
  public void setName(String name) { this.name = name; }

  private boolean cool;
  public boolean isCool() { return this.cool; }
  public void setCool(boolean cool) { this.cool = cool; }
}

More info of the JavaBeans convetion is available at section 8.3 of the specification document.

gerrytan
  • 40,313
  • 9
  • 84
  • 99