我正在尝试创建一个restful服务,我正在尝试使用我的JSON响应并将其转换回Object。
控制器方法
def mergeVendors(String region) {
def report = new VendorReport();
//do something with report
response.status = 201
response ([vendorReport: report]) as JSON
}
测试方法
void "Test Merge Vendors"() {
when:
controller.request.method = 'POST'
controller.request.json = '[{id:1, zip:"14224"}]'
controller.mergeVendors("Florida")
def response = controller.response
then:
response.zip == "14224"
}
上面的代码是我正在尝试使用的,我得到以下异常。如何将响应转发回VendorReport obj?
groovy.lang.MissingMethodException:没有方法签名:org.healthresearch.VendorController.response()适用于参数类型:(java.util.LinkedHashMap)值:[[vendorReport:org.vendor.VendorReport@1b0dbdf1] ] 可能的解决方案:响应(java.lang.Object),getResponse(),响应(java.lang.Object,java.util.Map),响应(java.util.Map,java.lang.Object),respondsTo(java。 lang.String),respondsTo(java.lang.String,[Ljava.lang.Object;)
答案 0 :(得分:3)
response ([vendorReport: report]) as JSON
更改为
render ([vendorReport: report]) as JSON