Многомерный массив Jax RS как Param
У меня есть следующий объект в сценарии Java:
var customObj = [];
customObj[customId] = {name:'sample',other:'other'};
customObj[customId2] = {name:'sample2',other:'other2'};
когда я пытаюсь проанализировать параметры запроса, получается что-то вроде этого:
customObj [0] [имя]= образец &customObj[0][другой]= & customObj другой [1][имя]=sample2&customObj[1][другой]= Разное2
В Jax RS у меня есть этот ресурс:
@GET
public MyObject getSomething(@QueryParam("customObj") customObj /*Here is the problem*/){
for(ObjectOrMapOrListOrArrayList myObject:customObject){
System.out.println(myObject);//prints something like {name:'sample',other:'other'}
}
}
Но я не знаю, как получить параметр объекта, я пытаюсь использовать List>, потому что в моем объекте все данные являются строкой, но это не работает, я пытаюсь использовать Map, но я получаю
неверный тип ошибки
,
1 ответ
Вы можете получить строку и проанализировать ее в JsonOnbject.
@GET
public MyObject getSomething(@QueryParam("customObj")String customObj ){
JsonReader jsonReader = Json.createReader(new StringReader(customobj));
JsonObject object = jsonReader.readObject();
jsonReader.close();
...
}
Обратите внимание, что это javax.json