Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在Jersey/Dropwizard中获取变量列表JSON正文?_Java_Rest_Jersey_Dropwizard - Fatal编程技术网

Java 如何在Jersey/Dropwizard中获取变量列表JSON正文?

Java 如何在Jersey/Dropwizard中获取变量列表JSON正文?,java,rest,jersey,dropwizard,Java,Rest,Jersey,Dropwizard,我想获取JSON格式的变量参数列表,该列表是发送到Jersey/Dropwizard后端的POST请求的格式 考虑POST请求中的json主体 { "tag1" : "tag1" , "parameter" : [ "key1" : "value1", "key2" : "value2" ] } 现在参数的长度可能会有所不同,所以我想知道如何访问这些键和值 我试过了 @POST @Consumes(MediaType.APPLICATION_JSON)

我想获取JSON格式的变量参数列表,该列表是发送到Jersey/Dropwizard后端的POST请求的格式

考虑POST请求中的json主体

{
 "tag1" : "tag1" ,
 "parameter" : 
    [ "key1" : "value1", 
      "key2" : "value2" ]
 }
现在参数的长度可能会有所不同,所以我想知道如何访问这些键和值

我试过了

 @POST
  @Consumes(MediaType.APPLICATION_JSON)
  @Produces(MediaType.APPLICATION_JSON)
  public Response insertJob(
      @PathParam("tag1") String tag1,
      @PathParam("parameter") List<Result> parameters
  ) {

    return Response.ok(resultList).build();

  }

我想知道我错过了什么注射。顺便说一句,我使用guice作为依赖项注入程序

Jackson将为if做一切,声明一个简单的POJO来映射您的JSON,如下所示:

@POST
@使用(MediaType.APPLICATION_JSON)
@产生(MediaType.APPLICATION_JSON)
公共列表insertJob(MySimplePOJO-pojo){
[...]
返回结果列表;
}
类MySimplePOJO{
公共字符串tag1;
公共列表参数;
}

查看您能否发布关于Jersey和jackson的配置?我认为没有必要进行任何特殊配置,请尝试在我的回答中使用POJO,而不是PathParam(路径参数位于URL路径中)
No injection source found for a parameter of type public javax.ws.rs.core.Response ....