创建响应对象Jersey jax-rs

时间:2020-08-17 22:23:38

标签: java json jersey jax-rs

我正在for循环内调用API。我想在每次循环运行时返回响应。为此,我创建了Response对象的列表,但它开始引发Http 500错误。

因此,如果jsonArray.size()的值为3,我想调用API 3次。每当它返回响应对象时。我想创建响应数组并将其返回给客户端。但这会引发异常。

       @GET
       public Response callAPI() {
           Client client=ClientBuilder.newClient();
           WebTarget webTarget = client.target(baseUrl);
            Response response=null;
           for (int i = 0; i < jsonArray.size(); i++)
            {
                response  = webtarget.path("bots").path(/api/dynamicEntity).path(i)
                .path("dynamicEntities").request().header("Authorization", "Bearer " + ConnectionUtil.getToken())
                .get(Response.class);
            }
           return response;
}

此代码适用于文件。我实际上想返回响应数组。因此,如果我创建Response [] response并将结果存储在array中并返回它,则会引发所谓的封送异常。我想将此结果存储到response Array中并将其发送给邮递员。

1 个答案:

答案 0 :(得分:0)

我猜你的问题是服务器端尝试在发送给客户端之前解析响应数组,但失败了,因为您无法发送Response数组,因此http请求的响应可能只是一种,您可以做的是,在循环内装入每个请求的响应的json对象,然后将Response对象内部的json字符串发送回客户端。