I'm working with Spring MVC 3.0.2 with Hibernate using JSP. I'm using RESTful (annotated) controllers in Spring. Many a times, I need to return a
java.util.List
using Ajax (to and) from the Spring controller class which is mapped with appropriate (mostly GET and POST) requests. Something like the one shown below.
@RequestMapping(method=RequestMethod.POST, value="ajax/TempAjax")
public @ResponseBody List<Country>getStateList(@ModelAttribute("someBean")
SomeBean someBean, BindingResult error, HttpServletRequest request,
HttpServletResponse response)
{
Session session=NewHibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
List<Country>list=session.createQuery("from State where countryId =
"+request.getParameter("countryId")+" order by stateId").list();
session.flush();
session.getTransaction().commit();
return list;
}
What I'm trying to do is when a country is selected from a
Country
select box, corresponding states of that country should be populated from the database in the
State
select box according to the
countryId
passed to the Spring controller class via Ajax.
I'm not sure but the Spring MVC 3.0.2 should support some direct mechanism like JSON. Could you please let me know what are the prerequisites of using Ajax to accomplish such task in Spring MVC. If possible, could you please give me some example. I have searched on Google but I didn't realize the basic requirements as I'm using such stuff very first time.