List<String>
クライアントからの応答としてjersey-2.0
を抽出する方法を知りたい。
私はすでにこれを試しました、
List<String> list = client
.target(url)
.request(MediaType.APPLICATION_JSON)
.get(new GenericType<List<String>>(){});
しかし、上記のコードは機能していません。予想されるList<String>
ではなく、null
値を返します。
サービス応答をResponse
クラスオブジェクトとして取得し、readEntity(...)
メソッドを使用してこのオブジェクトを解析できます。
簡単なコードスニペットを次に示します。
List<String> list = client
.target(url)
.request(MediaType.APPLICATION_JSON)
.get(Response.class)
.readEntity(new GenericType<List<String>>() {});
/* Do something with the list object */
String listString= serviceResponse.readEntity(String.class);
Gson gson=new Gson();
Type type = new TypeToken<List<String>>(){}.getType();
List<String> list = gson.fromJson(listString, type);
応答文字列を取得し、gsonライブラリを使用してリストに変換します