renderJson没有模板

时间:2011-08-08 06:35:00

标签: java playframework

我有控制器

render(messages);

我有路线

GET     /                                       Application.index

我想实现一些休息功能,并添加此路线

GET     /api/index                              Application.index(format:'json')

我找不到模板异常。当格式为json而没有任何代码更改时,我怎么能说使用renderJSON()?

2 个答案:

答案 0 :(得分:0)

当你使用render()方法时,Play!将使用操作名称搜索模板文件(Play!网站上的详细信息:http://www.playframework.org/documentation/1.2.2/controllers#template)。

你必须使用renderJSON(params ...),它将绕过默认模板!

答案 1 :(得分:0)

您的用例实际上没有意义。在标准的render()调用中,您可能会将一些pojos传递给要使用的模板(或者根本没有),这是一个varargs方法。在renderJSON()调用中,您总是需要传递一个对象,该对象可以通过Gson库序列化为json,或者已经存在于json中的字符串。

向Application类中添加一个处理json响应的新方法:

# normal index page
GET     /             Application.index
# api request
GET     /api/index    Application.indexJson
相关问题