안녕하세요.
Gson 을 사용하여 json을 parsing 하는 중인데..
예를 들어 서버에서 내려주는 json data가 (String 형식의 "")
App 에서 정의해둔 class member type과 맞지 않을 경우 (HashMap<String, String>)
Exception이 발생하면서 나머지 데이타들도 parsing이 되지 않는데..
해당 데이타를 제외한 나머지라도 살릴수 있는 예외처리 방법이 있을까요?
String mapJsonData = "{\"testA\": \"A\",\"testB\":\"B\",\"testMap\": \"\"}";
// prettyPrinting
{
"testA": "A",
"testB": "B",
"testMap": ""
}
public class MapData {
public String testA = "";
public String testB = "";
public HashMap<String, String> testMap = new HashMap<String, String>();
// ... getter & setter ....
}
Gson gson = new Gson();
// Gson gsonMap = new GsonBuilder().xxx().create();
try {
gsonMap.fromJson( mapJsonData, MapData.class );
} catch (Exception e) {
// java.lang.IllegalStateException occur
}
String 형식으로 들어온 jsonData를 HashMap<String , String > 으로 예외가 발생하더라도
다른 나머지 데이타라도 set을 진행 할 수 있으면 되는데...
어찌 안될까요?