处理JSONObject异常

时间:2013-01-11 16:33:56

标签: java exception

我正在使用JSONObject来构建JSON响应。我面临的问题是如何处理.put()抛出的异常。我用try catch包围了我的代码,但我想在catch中输出JSON。我已经手动执行此操作,如下所示,但这似乎容易出错。处理此异常的正确方法是什么?

try{
    myResponse.put("successful",true);
    resp.getOutputStream().print(myeResponse.toString());
} catch (JSONException e) {
    resp.getOutputStream().print("{\"successful\":false, \"error\":\"Changes could not be saved.  Please reload the page and try again.\"}");
}

1 个答案:

答案 0 :(得分:4)

您需要弄清楚的是put() JSONObject方法会抛出JSONException

来自Javadoc

public JSONObject put(java.lang.String key,
                      boolean value)
               throws JSONException

Put a key/boolean pair in the JSONObject.

Parameters:
    key - A key string.
    value - A boolean which is the value. 
Returns:
    this. 
Throws:
    JSONException - If the key is null.

所以,你需要注意的是你的密钥不是null,因为你的密钥是"successful",所以肯定是这样。