 <p>A standard controller method is going to return something with reference to the view associated with it (a <code>ModelAndView</code> or just a <code>String</code> matching the view name, for example).</p> <p>If you want to return custom objects, you need to specify that the response body is content, rather than a view reference. You can do this with the <code>@ResponseBody</code> annotation.</p> <pre><code>@RequestMapping(value = "getSomeList.do", method = RequestMethod.GET) public @ResponseBody List&lt;String&gt; getSomeList() { List&lt;String&gt; myList = getMyList(); return myList; } </code></pre> <p>Combined with a library like <a href="http://static.springsource.org/spring/docs/3.0.x/javadoc-api/org/springframework/web/bind/annotation/ResponseBody.html" rel="nofollow">Jackson</a>, you can serialize this to JSON and make it easily parsable in your view.</p>