我第一次使用此网址映射:
"/posts"(controller: "postRest") {
action = [ GET: "list", POST: "save" ]
}
和这个xml数据:
<post>
<content>I'm posting this via REST!</content>
<user id="1" />
</post>
我在postRest控制器中的保存操作是:
def xml = request.XML
def post = new Post()
post.content = xml.content.text()
post.user = User.get(xml.user.@id.text())
post.save()
并且它工作得很好,它保存了帖子,这意味着它正在获取xml数据。
但我更改了我的网址映射,使用 parseRequest 属性自动将请求数据映射到Grails的params对象。 新的网址映射代码:
"/posts"(controller: "postRest",parseRequest:true) {
action = [ GET: "list", POST: "save" ]
}
这是我在postRest控制器中的保存操作:
def save={
render params['post']
}
结果是我得到 Null ,这意味着grails没有将xml数据映射到params ['post']
帮助!
Grails版本:2.0.3