Java 在spring mvc控制器中获取不支持的媒体类型

Java 在spring mvc控制器中获取不支持的媒体类型,java,spring,spring-mvc,Java,Spring,Spring Mvc,我写了一个控制器。我只是修改了它,让它接受一个对象列表,而不仅仅是一个对象。所以我创建了一个包含原始对象列表的包装器类。但在此之后,我得到415-不支持的媒体类型。我不知道为什么会这样。我尝试了几乎所有我能找到的建议 控制器类: @RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)

我写了一个控制器。我只是修改了它,让它接受一个对象列表,而不仅仅是一个对象。所以我创建了一个包含原始对象列表的包装器类。但在此之后,我得到415-不支持的媒体类型。我不知道为什么会这样。我尝试了几乎所有我能找到的建议

控制器类:

 @RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Map<String, Object>> addCPCodeUser(HttpServletRequest request,
        @RequestBody CPCodeUserWrapper users) {
public class CPCodeUserWrapper {

   private List<CPCodeUser> users;

   .... setters and getters ...

}
@RequestMapping(method=RequestMethod.POST,consumes=MediaType.APPLICATION\u JSON\u VALUE,products=MediaType.APPLICATION\u JSON\u VALUE)
公共响应属性addCPCodeUser(HttpServletRequest请求,
@RequestBody CPCodeUserWrapper用户){
包装类:

 @RequestMapping(method = RequestMethod.POST, consumes = MediaType.APPLICATION_JSON_VALUE, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Map<String, Object>> addCPCodeUser(HttpServletRequest request,
        @RequestBody CPCodeUserWrapper users) {
public class CPCodeUserWrapper {

   private List<CPCodeUser> users;

   .... setters and getters ...

}
公共类CPCodeUserWrapper{
私人名单用户;
……二传手和传接手。。。
}
原始类别:

public class CPCodeUser {

   private String userId;
   private String name;
   List<String> roles;
   .... setters and getters....
}


url - v1/users/
JSON : 
    {
"users" : [{
                    "userId" : "user1",
                    "roles" : ["role1", "role2"]
        },{
                    "userId" : "user2",
                    "roles" : ["role1", "role2"]
        }]
 }
公共类CPCodeUser{
私有字符串用户标识;
私有字符串名称;
列出角色;
……二传手和传接手。。。。
}
url-v1/用户/
JSON:
{
“用户”:[{
“userId”:“user1”,
“角色”:[“角色1”、“角色2”]
},{
“userId”:“user2”,
“角色”:[“角色1”、“角色2”]
}]
}

您的POJO没有参数构造函数吗?当JSON库无法实例化对象并且异常被spring混淆时,我遇到了非常模糊的错误


您是否使用MockMVC框架来测试控制器?我发现单元测试通常会给出更清晰的异常,即当部署应用程序时,POJO是否没有参数构造函数?当JSON库无法实例化对象,并且异常被spring混淆时,我遇到了非常模糊的错误


您是否使用MockMVC框架测试控制器?我发现单元测试通常会给出更清晰的例外情况,即当部署应用程序时,您是否可以尝试修改
CPCodeUser
,如下所示:

 public class CPCodeUser {

   private String userId;
   private List<String> roles;
   .... setters and getters....
}
公共类CPCodeUser{
私有字符串用户标识;
私有列表角色;
……二传手和传接手。。。。
}

您能否尝试修改
CPCodeUser
如下:

 public class CPCodeUser {

   private String userId;
   private List<String> roles;
   .... setters and getters....
}
公共类CPCodeUser{
私有字符串用户标识;
私有列表角色;
……二传手和传接手。。。。
}