由於Grails 1.1.x,他們支持REST請求的XML和JSON解組。我似乎無法在版本2.1.0中得到這個工作。下面是從示例項目相關的文件,我使用來測試功能:grails xml unmarshalling
UrlMappings.groovy
static mappings = { "/$action/$id?"(controller:'verification',parseRequest:true) "/"(view:"/index") "500"(view:'/error') }
Tester.groovy
class Tester { String name String vendor String toString() { return "$name $vendor" } }
VerificationController.groovy
class VerificationController { def save() { Tester tester = new Tester(params.tester) log.error "Tester = ${tester}" log.error "Request XML = ${request.XML}" } }
XML與REST調用發送
<?xml version="1.0" encoding="utf-8"?> <tester> <name>Windows</name> <vendor>Microsoft</vendor> </tester>
當我通過在XML中,控制器日誌報表輸出這樣的:
Tester = null null
Request XML = WindowsMicrosoft
我的困惑是在它爲什麼將它識別爲XML (通過將它放在請求的XML字段中),但不會解析它並將其置於參數中定義here