无法读取JSON:字段名称中的意外输入结束

时间:2016-04-19 13:38:39

标签: java json spring jackson advanced-rest-client

我正在开发一个Spring MVC Web应用程序。我还没有开发UI。所以我使用Advance Rest Client工具测试我的服务。

我的控制器

gci -Path 'your_path' -Filter '*.jpg' | ii

TestParam.java类

@Controller
@RequestMapping("/testController")
public class TestController {

@Autowired
private TestService testService;

@RequestMapping(value = "/test", method = RequestMethod.POST, consumes = { MediaType.APPLICATION_JSON_VALUE },  produces = { MediaType.APPLICATION_JSON_VALUE })
public
@ResponseBody void testMethod(@RequestBody TestParam testParam) {

    String tenant = testParam.getTenantCode();
    String testString = tenant + " is the tenant";
}
}

我使用Advance Rest Client发送请求,并且请求链接已正确设置。

public class TestParam {

private String testVar;
private String tenantCode;

public String getTenantCode() {
    return tenantCode;
}

public void setTenantCode(String tenantCode) {
    this.tenantCode = tenantCode;
}

public String getTestVar() {
    return testVar;
}

public void setTestVar(String testVar) {
    this.testVar = testVar;
}
}

请求链接

{"testVar":"Test","tenantCode":"DEMO"}

当TestParam有一个可靠的时,它可以正常工作。当它变为两个或更多时,它会给出一个Error并且它没有命中testMethod。

http://localhost:8080/myApp/controller/testController/test

我去了更多的文章,我仍然无法找到答案。

3 个答案:

答案 0 :(得分:15)

Content-Length:中增加header

答案 1 :(得分:1)

您的json格式是什么?我认为json格式使用文字\ n作为分隔符,请确保JSON操作和源代码不是很漂亮。

答案 2 :(得分:1)

ARC中存在一个问题,即没有有效负载且响应属于json类型。解析器抛出错误,因为字符串为空并且响应报告崩溃。