sql >> Database >  >> RDS >> Mysql

Kan de gegevens in mijn Android-applicatie niet weergeven vanuit Mysql

Error parsing data org.json.JSONException: Value get_all_products.php of type java.lang.String cannot be converted to JSONObject

stelt dat u geen geldige json-tekenreeks in uw reactie hebt die afkomstig is van een webservice. Hierdoor jObj = isValidJson(json); retourneert geen json-object.

In je bovenstaande code, op

json = sb.toString();

U maakt een tekenreeks met de naam json en wijst er een tekenreeksbouwer-objectwaarde aan toe. Maar je logcat zegt dat je geen geldige json-tekenreeks krijgt op de onderstaande regel,

try {
                        jObj = new JSONObject(json);
                    } catch (JSONException e) {
                        Log.e("JSON Parser", "Error parsing data " + e.toString());
                    }

Dus het geeft een fout over het ontleden van de json-tekenreeks. In dit geval moet u controleren of u als antwoord een geldige json-tekenreeks van de server krijgt. Breng enkele wijzigingen aan in bovenstaande code:

public boolean isValidJson(String test)
{
    try {
        new JSONObject(test);
        return true;
    } catch(JSONException ex) { 
        return false;
    }
}

En in uw code:

try {
       if(isValidJson(json)
    {
      jObj = new JSONObject(json);
    } catch (JSONException e) {
              Log.e("JSON Parser", "Error parsing data " + e.toString());
          }
    } 



  1. Tabel veel te breed om in door Markdown gegenereerde PDF te passen

  2. Mysql naar mysqli converteren - hoe krijg ik een superglobaal verbindingsobject?

  3. Hoe TYPE TABLE OF VARCHAR2(5) in Java toe te wijzen?

  4. Problemen met het weergeven van blob-afbeeldingen