Análisis de datos JSON en Java para Android

Espero que alguien pueda ayudarme. Estoy tratando de analizar el siguiente archivo json:

{"seminar":[
    {"categoryid": "1","cpe": "13","inventory":["Discussion","Value x","Value y"
    ],"teachers": [
    {
        "titel": "Dipl.-Ing.",
        "company": "XY",
        "name": "Test",
        "id": "3",
    }
    ],

},...

Estoy perdido al analizar los datos de los maestros en ...

...
private static final String TAG_teachers = "teachers";
private static final String TAG_TITLE = "title";

for(int i = 0; i < seminar.length(); i++){
    JSONObject c = seminar.getJSONObject(i);
    ...
    teachers = c.getJSONArray(TAG_DOZENTEN);
    for(int z = 0; z < teachers.length(); z++){                 
    JSONObject d = teachers.getJSONObject(z);
    String title  = d.getString(TAG_TITLE);
    Log.d("JSONParsingActivity", title);

Me sale el error System.err (1010): org.json.JSONException: el valor nulo en los profesores del tipo org.json.JSONObject $ 1 no se puede convertir a JSONArray.

¿Qué hice mal? Según tengo entendido por la documentación JSON, los profesores son una matriz JSON y no un objeto. ¿Alguien puede ayudarme?

Respuesta 1

Tienes una coma extra (final) en los profesores (después de "3"). No permitido en JSON. Quítelo y vea si eso ayuda.

Respuesta: 2

¿Cómo es que este código me está dando una excepción no controlada java.net.malformedurlexception en java? Cadena u = "http://webapi.com/demo.zip"; URL url = nueva URL (u); ¿Alguien puede decirme cómo arreglarlo?

Estoy agregando EditTexts creados dinámicamente a un diseño (método de botón onClick). Cuando giro la pantalla, los textos de edición añadidos desaparecen. ¿Cómo puedo agregarlos a un paquete para ponerlos en el ...

Necesito registrar un flujo de datos a medida que pasa de mi aplicación a otra aplicación (ambas bajo mi control). Quiero hacer esto para registrar los bytes enviados y recibidos para las pruebas de integración. YO ...

Tengo un servidor Tomcat con una cadena de certificados para HTTPS almacenada en un almacén de claves Java. La cadena incluye el certificado de CA raíz autofirmado. Aunque esto aparentemente está bien según la especificación TLS, algunos ...