使用自定义视图解析器和自定义视图的Spring MVC AJAX和JSON

自定义视图:

public class MyView extends AbstractView { .... awesome stuff ... } 

控制器:

 @RequestMapping(value="mylocation") public ModelAndView dosomething() { ... modelAndView.setView( new MyView() ); return modelAndView; } 

由于某种原因,这不起作用…我唯一的视图解析器如下:

    spEnv    

这段代码不起作用,因为它试图创建一些基于…的JSP视图。我不确定,我的表单提交路径; 显然没有JSP视图,我希望实际返回JSON,但由于某种原因这不起作用,它只是试图转发给我一些JSP,所以我猜我需要指定如何在我的XML中处理这个……但我已经看到人们返回JSON的大约1000种不同的方式,而且所有这些对我来说都很混乱,我只是寻找最简单的方法,所以我可以从那里

编辑:我添加了一个好的开始的答案,但它允许你在任何URL后键入“.json”,如果作为控制器我不会期待它会做一些非常糟糕的事情,所以我需要以某种方式此视图解析程序仅适用于安全URL

好吧,最后尝试了一百万种组合

 @RequestMapping(value = "/test/data") public TestFormData dostuff() { TestFormData data = new TestFormData(); data.setName("myname"); return data; } 

然后这个

             

我真的不明白如何从这里返回一个物体……

但实际上,这虽然简单,但非常有用是不可接受的,因为那时我去了我的网站的其他页面,并在url后面放了一个任意的“.json”,它抛出一个exception,给用户提供太多的信息关于我的应用程序,所以基本上我需要找到一种方法,只在某些受保护的控制器上具有此function…

有任何想法吗?